Inheritence diagram for xlifepp::NedelecEdgeFirstTetrahedronPk:
digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"1" [label="xlifepp::NedelecEdgeFirstTetrahedronPk" tooltip="xlifepp::NedelecEdgeFirstTetrahedronPk" fillcolor="#BFBFBF"]
"2" [label="xlifepp::NedelecEdgeTetrahedron" tooltip="xlifepp::NedelecEdgeTetrahedron"]
"4" [label="xlifepp::RefElement" tooltip="xlifepp::RefElement"]
"3" [label="xlifepp::RefTetrahedron" tooltip="xlifepp::RefTetrahedron"]
"1" -> "2" [dir=forward tooltip="public-inheritance"]
"2" -> "3" [dir=forward tooltip="public-inheritance"]
"3" -> "4" [dir=forward tooltip="public-inheritance"]
}
Collaboration diagram for xlifepp::NedelecEdgeFirstTetrahedronPk:
digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"17" [label="std::list< std::vector< PolynomialT< real_t > > >" tooltip="std::list< std::vector< PolynomialT< real_t > > >"]
"20" [label="std::map< xlifepp::Quadrature *, std::vector< xlifepp::ShapeValues > >" tooltip="std::map< xlifepp::Quadrature *, std::vector< xlifepp::ShapeValues > >"]
"18" [label="std::list< T >" tooltip="std::list< T >"]
"21" [label="std::map< K, T >" tooltip="std::map< K, T >"]
"7" [label="std::vector< T >" tooltip="std::vector< T >"]
"8" [label="std::vector< ShapeType >" tooltip="std::vector< ShapeType >"]
"6" [label="std::vector< real_t >" tooltip="std::vector< real_t >"]
"10" [label="std::vector< std::vector< int_t > >" tooltip="std::vector< std::vector< int_t > >"]
"9" [label="std::vector< std::vector< number_t > >" tooltip="std::vector< std::vector< number_t > >"]
"11" [label="std::vector< xlifepp::GeomRefElement * >" tooltip="std::vector< xlifepp::GeomRefElement * >"]
"13" [label="std::vector< xlifepp::Interpolation * >" tooltip="std::vector< xlifepp::Interpolation * >"]
"19" [label="std::vector< xlifepp::PolynomialsBasisT >" tooltip="std::vector< xlifepp::PolynomialsBasisT >"]
"14" [label="std::vector< xlifepp::RefDof * >" tooltip="std::vector< xlifepp::RefDof * >"]
"15" [label="std::vector< xlifepp::RefElement * >" tooltip="std::vector< xlifepp::RefElement * >"]
"5" [label="xlifepp::GeomRefElement" tooltip="xlifepp::GeomRefElement"]
"12" [label="xlifepp::Interpolation" tooltip="xlifepp::Interpolation"]
"1" [label="xlifepp::NedelecEdgeFirstTetrahedronPk" tooltip="xlifepp::NedelecEdgeFirstTetrahedronPk" fillcolor="#BFBFBF"]
"2" [label="xlifepp::NedelecEdgeTetrahedron" tooltip="xlifepp::NedelecEdgeTetrahedron"]
"16" [label="xlifepp::PolynomialsBasisT< K >" tooltip="xlifepp::PolynomialsBasisT< K >"]
"4" [label="xlifepp::RefElement" tooltip="xlifepp::RefElement"]
"3" [label="xlifepp::RefTetrahedron" tooltip="xlifepp::RefTetrahedron"]
"17" -> "18" [dir=forward tooltip="template-instance"]
"20" -> "21" [dir=forward tooltip="template-instance"]
"8" -> "7" [dir=forward tooltip="template-instance"]
"6" -> "7" [dir=forward tooltip="template-instance"]
"10" -> "7" [dir=forward tooltip="template-instance"]
"9" -> "7" [dir=forward tooltip="template-instance"]
"11" -> "7" [dir=forward tooltip="template-instance"]
"13" -> "7" [dir=forward tooltip="template-instance"]
"19" -> "7" [dir=forward tooltip="template-instance"]
"14" -> "7" [dir=forward tooltip="template-instance"]
"15" -> "7" [dir=forward tooltip="template-instance"]
"5" -> "6" [dir=forward tooltip="usage"]
"5" -> "8" [dir=forward tooltip="usage"]
"5" -> "9" [dir=forward tooltip="usage"]
"5" -> "10" [dir=forward tooltip="usage"]
"5" -> "11" [dir=forward tooltip="usage"]
"12" -> "13" [dir=forward tooltip="usage"]
"1" -> "2" [dir=forward tooltip="public-inheritance"]
"2" -> "3" [dir=forward tooltip="public-inheritance"]
"16" -> "17" [dir=forward tooltip="public-inheritance"]
"4" -> "5" [dir=forward tooltip="usage"]
"4" -> "12" [dir=forward tooltip="usage"]
"4" -> "14" [dir=forward tooltip="usage"]
"4" -> "15" [dir=forward tooltip="usage"]
"4" -> "9" [dir=forward tooltip="usage"]
"4" -> "16" [dir=forward tooltip="usage"]
"4" -> "19" [dir=forward tooltip="usage"]
"4" -> "20" [dir=forward tooltip="usage"]
"3" -> "4" [dir=forward tooltip="public-inheritance"]
}
Nedelec edge first family of any order k on tetrahedron t (NE1k) space Vk : P^3_(k-1) + Sk with Sk={p in Phk^3, x.p=0}, Phk homogeneous polynomials of degree k, k(k+2)(k+3)/2 dofs edge dofs : v-> int_e v.t q, q in P_(k-1)[e] k dofs by edge e face dofs (k>1) : v-> int_f v.q, q in {P_(k-2)[f]^3, q.n=0} k(k-1) dofs by face tetrahedron dofs (k>2): v-> int_t v.q, q in P_(k-3)[t]^3 k(k-1)(k-2)/2 dofs.
Public Functions
NedelecEdgeFirstTetrahedronPk ( const Interpolation * int_p )
Nedelec edge first family of order k on tetrahedron (NE1k)
virtual void computeShapeFunctions ( )
compute shape functions as polynomials
compute shape functions as polynomials using general algorithm
virtual void computeShapeValues ( std :: vector < real_t > :: const_iterator it_pt , ShapeValues & shv , const bool der1 = true , const bool der2 = false ) const
compute shape values at a point
virtual Value evalFaceDof ( const FeDof & dof , const GeomElement & selt , const Function & f , const Function & gradf , const Function & grad2f ) const
specific eval face dof function
virtual void interpolationData ( )
defines reference element interpolation data
interp defines Reference Element interpolation data
void pointCoordinates ( )
builds virtual coordinates of moment dofs
virtual void rotateDofs ( const std :: vector < number_t > & , ShapeValues & shv , bool der1 = false , bool der2 = false ) const
rotation of face dofs to ensure matching of dofs on shared face
virtual number_t sideDofsMap ( const number_t & n , const number_t & i , const number_t & j , const number_t & k = 0 ) const
face dofs mapping
virtual void sideNumbering ( )
local numbering on faces (side)
virtual number_t sideofsideDofsMap ( const number_t & n , const number_t & i , const number_t & j ) const
edge dof mapping
void sideOfSideNumbering ( )
local numbering on edges (side of side)