FreeFEM Documentation on GitHub

stars - forks

Global variables

area

Area of the current triangle.

1
2
fespace Vh0(Th, P0);
Vh0 A = area;

ARGV

Array that contains all the command line arguments.

1
2
for (int i = 0; i < ARGV.n; i++)
    cout << ARGV[i] << endl;

See Command line arguments example for a complete example.

BoundaryEdge

Return 1 if the current edge is on a boundary, 0 otherwise.

1
real B = int2d(Th)(BoundaryEdge);

CG

Conjugate gradient solver.

Usable in problem and solve definition

1
problem Laplacian (U, V, solver=CG) = ...

Or in matrix construction

1
matrix A = vLaplacian(Uh, Uh, solver=CG);

Or in set function

1
set(A, solver=CG);

Cholesky

Cholesky solver.

Crout

Crout solver.

edgeOrientation

Sign of \(i-j\) if the current edge is \([q_i, q_j]\).

1
real S = int1d(Th, 1)(edgeOrientation);

false

False boolean value.

1
bool b = false;

GMRES

GMRES solver (Generalized minimal residual method).

hTriangle

Size of the current triangle.

1
2
fespace Vh(Th, P0);
Vh h = hTriangle;

include

Include an external library.

1
include "iovtk"

InternalEdge

Return 0 if the current edge is on a boundary, 1 otherwise.

1
real I = int2d(Th)(InternalEdge);

label

Label number of a boundary if the current point is on a boundary, 0 otherwise.

1
int L = Th(xB, yB).label;

lenEdge

Length of the current edge.

For an edge \([q_i, g_j]\), return \(|q_i-q_j|\).

1
real L = int1d(Th, 1)(lenEdge);

load

Load a script.

1
load "Element_P3"

LU

LU solver.

N

Outward unit normal at the current point if it is on a curve defined by a border. N.x, N.y, N.z are respectively the \(x\), \(y\) and \(z\) components of the normal.

1
2
3
func Nx = N.x;
func Ny = N.y;
func Nz = N.z;

nTonEdge

Number of adjacent triangles of the current edge.

1
real nTE = int2d(Th)(nTonEdge);

nuEdge

Index of the current edge in the triangle.

1
real nE = int2d(Th)(nuEdge);

nuTriangle

Index of the current triangle.

1
2
fespace Vh(Th, P0);
Vh n = nuTriangle;

P

Current point.

1
2
3
real cx = P.x;
real cy = P.y;
real cz = P.z;

pi

Pi = 3.14159.

1
real Pi = pi;

This is a real value.

region

Region number of the current point. If the point is outside, then region == notaregion where notaregion is a FreeFEM integer constant.

1
int R = Th(xR, yR).region;

sparsesolver

Sparse matrix solver.

true

True boolean value.

1
bool b = true;

verbosity

Verbosity level.

1
2
int Verbosity = verbosity;
verbosity = 0;

0 = nothing, 1 = little information, 10 = a lot of information, …

This is an integer value.

version

FreeFEM version.

1
cout << version << endl;

volume

Volume of the current tetrahedra.

1
2
fespace Vh0(Th, P0);
Vh0 V = volume;

x

The \(x\) coordinate at the current point.

1
real CurrentX = x;

This is a real value.

y

The \(y\) coordinate at the current point.

1
real CurrentY = y;

This is a real value.

z

The \(z\) coordinate at the current point.

1
real CurrentZ = z;

This is a real value.

Table of content