Class xlifepp::NedelecEdgeFirstQuadranglePk#

class NedelecEdgeFirstQuadranglePk : public xlifepp::NedelecEdgeQuadrangle#

Nedelec edge first family of any order k on quadrangle Q (NEC1_k) space Vk: Q_(k-1,k) x Q_(k,k-1) with Q_(k,l) monomials of degree at most k in x1, of degree at most l in x2, 2k(k+1) dofs edge dofs: v-> int_e v.t q, q in P_(k-1)[e] k dofs by edge e quadrangle dofs (k>1): v-> int_t v.q, q in Q_(k-1,k-2) x Q_(k-2,k-1) 2k(k-1) dofs.

Public Functions

NedelecEdgeFirstQuadranglePk(const Interpolation *int_p)#

Nedelec edge first family of any order k on quadrangle Q (NEC1_k) space Vk: Q_(k-1,k) x Q_(k,k-1) with Q_(k,l) monomials of degree at most k in x1, of degree at most l in x2, 2k(k+1) dofs edge dofs: v-> int_e v.t q, q in P_(k-1)[e] k dofs by edge e tetrahedron dofs (k>1): v-> int_t v.q, q in Q_(k-1,k-2) x Q_(k-2,k-1) 2k(k-1) dofs.

virtual void computeShapeFunctions()#

compute shape functions as polynomials

compute shape functions as polynomials using general algorithm edge dofs: v-> int_e v.t q, q in P_(k-1)[e] k dofs by edge e tetrahedron dofs (k>1): v-> int_t v.q, q in Q_(k-1,k-2) x Q_(k-2,k-1) 2k(k-1) dofs

virtual void computeShapeValues(std::vector<real_t>::const_iterator it_pt, ShapeValues &shv, const bool withDeriv = true, const bool with2Deriv = false) const#

compute shape values at a point

virtual void interpolationData()#

defines reference element interpolation data

interp defines Reference Element interpolation data

void pointCoordinates()#

builds virtual coordinates of moment dofs

virtual number_t sideDofsMap(const number_t &n, const number_t &i, const number_t &j, const number_t &k = 0) const#

edge dofs mapping

void sideNumbering()#

local numbering on faces (side)

void sideOfSideNumbering()#

local numbering on edges (side of side)