Class for Hybrid functions, i.e. defined on the boundary of an element.
More...
#include <ReferenceFEHybrid.hpp>
Class for Hybrid functions, i.e. defined on the boundary of an element.
- Author
- V. Martin
- Date
- 08/2002
This is an enrichment of ReferenceFE in order to implement mixed hybrid finite elements, which are based on a (RT0 - Q0) like discretization of .
This class contains a list of boundary elements; thanks to the Piola transform, the computations are performed on the boundary of the reference element. But in general, the boundary of a 3D reference element is not a 2D reference element.
Example:
REFERENCE TETRA -> 3 REFERENCE TRIA + 1 EQUILATERAL TRIANGLE...
REFERENCE PRISM -> 2 TRIA + 3 QUAD...?
REFERENCE HEXA -> 6 REFERENCE QUAD.
- How to add a new finite element ?
- In refFE.h: you add a new finite element flag in FE_TYPE enum with a command like:
- In refHybridFE.h: you declare the functions you need (fct1_Pipo_2D, derfct1_1_Pipo_2D, etc...), the static arrays containing these functions and the coordinates of the nodes on the reference element.
- In defQuadRuleFE.cc: you define these functions (fct1_Pipo_2D, etc...)
- In refFE.h you declare your finite element:
- In defQuadRuleFE.cc: you define a list of CurrentFEManifold with a command like:
- In defQuadRuleFE.cc: you define a static array containing all the CurrentFEManifold with a command like
static const CurrentFEManifold HybPIPOList[ NB_BDFE_PIPO ] =
{
BdFE_PIPOstd::placeholders::_1, BdFE_PIPOstd::placeholders::_2,
...
};
- In defQuadRuleFE.cc: you define your new element with a command like:
const ReferenceFEHybrid feTriaPipo(
"Pipo elements on a tetrahedron", FE_PIPO,
TETRA,
See documentation of ReferenceFEHybrid::ReferenceFEHybrid(...) for a precise description of all arguments.
The documentation for this class was generated from the following file: