Notations
Here mathematical expressions and corresponding FreeFEM commands are explained.
Generalities
[\(\delta_{ij}\)] Kronecker delta (\(0\) if \(i\neq j\), 1 if \(i=j\) for integers \(i,j\))
[\(\forall\)] for all
[\(\exists\)] there exists
[i.e.] that is
[PDE] partial differential equation (with boundary conditions)
[\(\emptyset\)] the empty set
[\(\mathbb{N}\)] the set of integers (\(a\in \mathbb{N}\Leftrightarrow\)
int a
),int
meanslong int
inside FreeFEM[\(\mathbb{R}\)] the set of real numbers (\(a\in \mathbb{R}\Leftrightarrow\)
real a
),double
inside FreeFEM[\(\mathbb{C}\)] the set of complex numbers (\(a\in \mathbb{C}\Leftrightarrow\)
complex a
),complex<double>
[\(\mathbb{R}^d\)] \(d\)-dimensional Euclidean space
Sets, Mappings, Matrices, Vectors
Let \(E,\, F,\, G\) be three sets and \(A\) the subset of \(E\).
[\(\{x\in E|\; P\}\)] the subset of \(E\) consisting of the elements possessing the property \(P\)
[\(E\cup F\)] the set of elements belonging to \(E\) or \(F\)
[\(E\cap F\)] the set of elements belonging to \(E\) and \(F\)
[\(E\setminus A\)] the set \(\{x\in E|\; x\not\in A\}\)
[\(E+F\)] \(E\cup F\) with \(E\cap F=\emptyset\)
[\(E\times F\)] the Cartesian product of \(E\) and \(F\)
[\(E^n\)] the \(n\)-th power of \(E\) (\(E^2=E\times E\), \(E^n=E\times E^{n-1}\))
[\(f:\; E\to F\)] the mapping form \(E\) into \(F\), i.e., \(E\ni x\mapsto f(x)\in F\)
[\(I_E\) or \(I\)] the identity mapping in \(E\),i.e., \(I(x)=x\quad \forall x\in E\)
[\(f\circ g\)] for \(f:\; F\to G\) and \(g:\; E\to F\), \(E\ni x\mapsto (f\circ g)(x)=f(g(x))\in G\) (see Elementary function)
[\(f|_A\)] the restriction of \(f:\; E\to F\) to the subset \(A\) of \(E\)
[\(\{a_k\}\)] column vector with components \(a_k\)
[\((a_k)\)] row vector with components \(a_k\)
[\((a_{k})^T\)] denotes the transpose of a matrix \((a_{k})\), and is \(\{a_{k}\}\)
[\(\{a_{ij}\}\)] matrix with components \(a_{ij}\), and \((a_{ij})^T=(a_{ji})\)
Numbers
For two real numbers \(a,b\)
\([a,b]\) is the interval \(\{x\in \mathbb{R}|\; a\le x\le b\}\)
\(]a,b]\) is the interval \(\{x\in \mathbb{R}|\; a< x\le b\}\)
\([a,b[\) is the interval \(\{x\in \mathbb{R}|\; a\le x< b\}\)
\(]a,b[\) is the interval \(\{x\in \mathbb{R}|\; a< x< b\}\)
Differential Calculus
[\(\partial f/\partial x\)] the partial derivative of \(f:\mathbb{R}^d\to \mathbb{R}\) with respect to \(x\) (
dx(f)
)[\(\nabla f\)] the gradient of \(f:\Omega\to \mathbb{R}\),i.e., \(\nabla f=(\partial f/\partial x,\, \partial f/\partial y)\)
[\(\text{div}(\mathbf{f})\) or \(\nabla.\mathbf{f}\)] the divergence of \(\mathbf{f}:\Omega\to \mathbb{R}^d\), i.e., \(\text{div}(\mathbf{f})=\partial f_1/\partial x+\partial f_2/\partial y\)
[\(\Delta f\)] the Laplacian of \(f:\; \Omega\to \mathbb{R}\), i.e., \(\Delta f=\partial^2f/\partial x^2+\partial^2 f/\partial y^2\)
Meshes
[\(\Omega\)] usually denotes a domain on which PDE is defined
[\(\Gamma\)] denotes the boundary of \(\Omega\),i.e., \(\Gamma=\partial\Omega\) (keyword
border
, see Border)[\(\mathcal{T}_h\)] the triangulation of \(\Omega\), i.e., the set of triangles \(T_k\), where \(h\) stands for mesh size (keyword
mesh
,buildmesh
, see Mesh Generation)[\(n_t\)] the number of triangles in \(\mathcal{T}_h\) (get by
Th.nt
)[\(\Omega_h\)] denotes the approximated domain \(\Omega_h=\cup_{k=1}^{n_t}T_k\) of \(\Omega\). If \(\Omega\) is polygonal domain, then it will be \(\Omega=\Omega_h\)
[\(\Gamma_h\)] the boundary of \(\Omega_h\)
[\(n_v\)] the number of vertices in \(\mathcal{T}_h\) (get by
Th.nv
)[\(n_{be}\)] the number of boundary element in \(\mathcal{T}_h\) (get by
Th.nbe
)[\(|\Omega_h|\)] the measure (area or volume) in \(\mathcal{T}_h\) (get by
Th.measure
)[\(|\partial \Omega_h|\)] the measure of the border (length or area) in \(\mathcal{T}_h\) (get by
Th.bordermeasure
)[\(h_{min}\)] the minimum edge size of \(\mathcal{T}_h\) (get by
Th.hmin
)[\(h_{max}\)] the maximum edge size of \(\mathcal{T}_h\) (get by
Th.hmax
)[[\(q^iq^j\)]] the segment connecting \(q^i\) and \(q^j\)
[\(q^{k_1},q^{k_2},q^{k_3}\)] the vertices of a triangle \(T_k\) with anti-clock direction (get the coordinate of \(q^{k_j}\) by
(Th[k-1][j-1].x, Th[k-1][j-1].y)
)[\(I_{\Omega}\)] the set \(\{i\in \mathbb{N}|\; q^i\not\in \Gamma_h\}\)
Functional Spaces
[\(L^2(\Omega)\)] the set \(\displaystyle{\left\{w(x,y)\left|\; \int_{\Omega}|w(x,y)|^2\text{d} x\text{d} y<\infty\right.\right\}}\)
\[\begin{split}\textrm{norm:}\; \| w\|_{0,\Omega}&=\left(\int_{\Omega}|w(x,y)|^2\text{d} x\text{d} y\right)^{1/2}\\ \textrm{scalar product:}\; (v,w)&=\int_{\Omega}vw\end{split}\]
[\(H^1(\Omega)\)] the set \(\displaystyle{\left\{w\in L^2(\Omega)\left|\; \int_{\Omega}\left(|\partial w/\partial x|^2+|\partial w/\partial y|^2\right)\text{d} x\text{d} y <\infty\right.\right\}}\)
\[\textrm{norm:}\; \| w\|_{1,\Omega}=\left(\| w\|_{0,\Omega}^2+\|\nabla u\|_{0.\Omega}^2\right)^{1/2}\]
[\(H^m(\Omega)\)] the set \(\displaystyle{\left\{w\in L^2(\Omega)\left|\; \int_{\Omega}\frac{\partial^{|\alpha|} w}{\partial x^{\alpha_1}\partial y^{\alpha_2}}\in L^2(\Omega)\quad\forall \alpha=(\alpha_1,\alpha_2)\in \mathbb{N}^2,\, |\alpha|=\alpha_1+\alpha_2\right.\right\}}\)
\[\textrm{scalar product:}\; (v,w)_{1,\Omega}= \sum_{|\alpha|\le m}\int_{\Omega} D^{\alpha}v D^{\alpha}w\]
[\(H^1_0(\Omega)\)] the set \(\left\{w\in H^1(\Omega)\left|\; u=0\quad \textrm{on }\Gamma\right.\right\}\)
[\(L^2(\Omega)^2\)] denotes \(L^2(\Omega)\times L^2(\Omega)\), and also \(H^1(\Omega)^2=H^1(\Omega)\times H^1(\Omega)\)
Finite Element Spaces
[\(V_h\)] denotes the finite element space created by
fespace Vh(Th, *)
in FreeFEM (see Finite Elements for*
)[\(\Pi_h f\)] the projection of the function \(f\) into \(V_h\) (
func f=x^2*y^3; Vh v = f;
) means \(v = Pi_h (f) * [\{v\}]\) for FE-function \(v\) in \(V_h\) means the column vector \((v_1,\cdots,v_M)^T\) if \(v=v_1\phi_1+\cdots+v_M\phi_M\), which is shown byfespace Vh(Th, P2); Vh v; cout << v[] << endl;