This object represents a finite element method on a reference element.
F = gf_fem('interpolated_fem', mesh_fem mf, mesh_im mim, [ivec blocked_dof])
F = gf_fem(string fem_name)
General constructor for fem objects.
This object represents a finite element method on a reference element.
F = gf_fem('interpolated_fem', mesh_fem mf, mesh_im mim, [ivec blocked_dof])
Build a special fem which is interpolated from another mesh_fem.
Using this special finite element, it is possible to interpolate a given
mesh_fem mf
on another mesh, given the integration method mim
that will
be used on this mesh.
Note that this finite element may be quite slow, and eats much
memory.
F = gf_fem(string fem_name)
The fem_name
should contain a description of the finite element
method. Please refer to the getfem++ manual (especially the
description of finite element and integration methods) for a complete
reference. Here is a list of some of them:
- FEM_PK(n,k) :
classical Lagrange element Pk on a simplex of dimension n
.
- FEM_PK_DISCONTINUOUS(n,k[,alpha]) :
discontinuous Lagrange element Pk on a simplex of dimension n
.
- FEM_QK(n,k) :
classical Lagrange element Qk on quadrangles, hexahedrons etc.
- FEM_QK_DISCONTINUOUS(n,k[,alpha]) :
discontinuous Lagrange element Qk on quadrangles, hexahedrons etc.
- FEM_Q2_INCOMPLETE :
incomplete 2D Q2 element with 8 dof (serendipity Quad 8 element).
- FEM_PK_PRISM(n,k) :
classical Lagrange element Pk on a prism of dimension n
.
- FEM_PK_PRISM_DISCONTINUOUS(n,k[,alpha]) :
classical discontinuous Lagrange element Pk on a prism.
- FEM_PK_WITH_CUBIC_BUBBLE(n,k) :
classical Lagrange element Pk on a simplex with an additional
volumic bubble function.
- FEM_P1_NONCONFORMING :
non-conforming P1 method on a triangle.
- FEM_P1_BUBBLE_FACE(n) :
P1 method on a simplex with an additional bubble function on face 0.
- FEM_P1_BUBBLE_FACE_LAG :
P1 method on a simplex with an additional lagrange dof on face 0.
- FEM_PK_HIERARCHICAL(n,k) :
PK element with a hierarchical basis.
- FEM_QK_HIERARCHICAL(n,k) :
QK element with a hierarchical basis
- FEM_PK_PRISM_HIERARCHICAL(n,k) :
PK element on a prism with a hierarchical basis.
- FEM_STRUCTURED_COMPOSITE(fem f,k) :
Composite fem f
on a grid with k
divisions.
- FEM_PK_HIERARCHICAL_COMPOSITE(n,k,s) :
Pk composite element on a grid with s
subdivisions and with a
hierarchical basis.
- FEM_PK_FULL_HIERARCHICAL_COMPOSITE(n,k,s) :
Pk composite element with s
subdivisions and a hierarchical basis
on both degree and subdivision.
- FEM_PRODUCT(A,B) :
tensorial product of two polynomial elements.
- FEM_HERMITE(n) :
Hermite element P3 on a simplex of dimension n = 1, 2, 3
.
- FEM_ARGYRIS :
Argyris element P5 on the triangle.
- FEM_HCT_TRIANGLE :
Hsieh-Clough-Tocher element on the triangle (composite P3 element
which is C1), should be used with IM_HCT_COMPOSITE() integration
method.
- FEM_QUADC1_COMPOSITE :
Quadrilateral element, composite P3 element and C1 (16 dof).
- FEM_REDUCED_QUADC1_COMPOSITE :
Quadrilateral element, composite P3 element and C1 (12 dof).
- FEM_RT0(n) :
Raviart-Thomas element of order 0 on a simplex of dimension n
.
- FEM_NEDELEC(n) :
Nedelec edge element of order 0 on a simplex of dimension n
.
Of course, you have to ensure that the selected fem is compatible with
the geometric transformation: a Pk fem has no meaning on a quadrangle.
Y. Collette