hp2D::NTElement_BA< F > Class Template Referenceabstract
Element on an edge representing the normal derivative of neighbouring elements, especially their mean or jump. More...
#include <neumannTrace.hh>
Classes | |
class | ShapeFunction |
Public Types | |
enum | intFormType { ZERO, ONE, TWO, THREE } |
Integration form, which determines terms coming from integration over reference element. More... | |
typedef Real | type |
typedef concepts::ElementAndFacette< hp2D::Element< F > > | UnderlyingElement |
Public Member Functions | |
void | addElement (const hp2D::Quad< Real > &quad, uint k, Real weight=1.0) |
Adds the contribution to the Neumann trace from the element on one of the (at most two) sides. More... | |
void | appendT (concepts::TColumn< F > *T) |
Appends the T columns to the T matrix. More... | |
virtual const concepts::Edge2d & | cell () const |
virtual const Cell & | cell () const=0 |
Returns the cell on which the element is built. More... | |
const concepts::Real3d | chi (const Real x) const |
Computes the element map. More... | |
Real3d | elemMap (const Real coord_local) const |
Real3d | elemMap (const Real2d &coord_local) const |
Real3d | elemMap (const Real3d &coord_local) const |
const concepts::QuadratureRule1d * | integration () const |
Returns the integration rule. More... | |
Real | jacobianDeterminant (const Real x) const |
Computes the determinant of the Jacobian. More... | |
const concepts::Z2 | mapRho () const |
Returns the orientation of the MappingEdge2d corresponding to the quad. More... | |
NTElement_BA (const concepts::Edge2d &cell) | |
Constructor. More... | |
ushort | p () const |
virtual bool | quadraturePoint (uint i, intPoint &p, intFormType form=ZERO, bool localCoord=false) const |
Delivers a quadrature point. More... | |
void | recomputeShapefunctions () |
Recompute shape functions, e.g. More... | |
const concepts::ShapeFunction1D< Real > * | shpfct () const |
Returns the shape functions. More... | |
const concepts::ShapeFunction1D< Real > * | shpfctD () const |
Returns the derivatives of the shape functions. More... | |
virtual const concepts::Edge & | support () const |
virtual const concepts::TMatrix< F > & | T () const |
virtual const TMatrixBase< Real > & | T () const=0 |
Returns the T matrix of the element. More... | |
const concepts::Sequence< UnderlyingElement > & | uelm () const |
Returns the Underlying Element(s) More... | |
virtual concepts::Real3d | vertex (uint i) const |
virtual | ~NTElement_BA () |
Static Public Member Functions | |
static concepts::QuadRuleFactory & | rule () |
Access to the quadrature rule, which is valid for all elements of this type (hp1D::IntegrableElm). More... | |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Protected Attributes | |
std::unique_ptr< concepts::QuadratureRule1d > | int_ |
The integration rule. More... | |
concepts::TMatrix< Real > | T_ |
T matrix of the element. More... | |
Static Protected Attributes | |
static concepts::QuadRuleFactory | rule_ |
Private Attributes | |
const concepts::Edge2d & | cell_ |
The cell. More... | |
concepts::Sequence< uint > | dim_ |
Local number of shape functions coming from one side. More... | |
concepts::Z2 | mapRho_ |
concepts::Sequence< uint > | p_ |
Polynomial degree along the edge for each side. More... | |
std::unique_ptr< concepts::ShapeFunction1D< Real > > | shpfct_ |
The shape functions, precomputed on quadrature points. More... | |
std::unique_ptr< concepts::ShapeFunction1D< Real > > | shpfctD_ |
The derivatives of the shape functions. More... | |
concepts::Sequence< UnderlyingElement > | uelm_ |
concepts::Array< Real > | values_ |
The actual storage of the values of the shape functions and their derivatives along the edge. More... | |
concepts::Array< Real > | valuesD_ |
concepts::Sequence< Real > | weights_ |
Weight for each side. More... | |
Detailed Description
template<class F = Real>
class hp2D::NTElement_BA< F >
Element on an edge representing the normal derivative of neighbouring elements, especially their mean or jump.
The number of shape functions are the sum of the number of shape functions of the two neighbouring 2D elements.
Definition at line 39 of file neumannTrace.hh.
Member Typedef Documentation
◆ type
|
inherited |
Definition at line 81 of file element.hh.
◆ UnderlyingElement
typedef concepts::ElementAndFacette<hp2D::Element<F> > hp2D::NTElement_BA< F >::UnderlyingElement |
Definition at line 42 of file neumannTrace.hh.
Member Enumeration Documentation
◆ intFormType
|
inherited |
Integration form, which determines terms coming from integration over reference element.
Enumerator | |
---|---|
ZERO | |
ONE | |
TWO | |
THREE |
Definition at line 29 of file integral.hh.
Constructor & Destructor Documentation
◆ NTElement_BA()
hp2D::NTElement_BA< F >::NTElement_BA | ( | const concepts::Edge2d & | cell | ) |
Constructor.
Creates the Neumann trace from the element on one side.
◆ ~NTElement_BA()
|
virtual |
Member Function Documentation
◆ addElement()
void hp2D::NTElement_BA< F >::addElement | ( | const hp2D::Quad< Real > & | quad, |
uint | k, | ||
Real | weight = 1.0 |
||
) |
Adds the contribution to the Neumann trace from the element on one of the (at most two) sides.
◆ appendT()
|
inline |
Appends the T columns to the T matrix.
Definition at line 123 of file neumannTrace.hh.
◆ cell() [1/2]
|
inlinevirtual |
Definition at line 76 of file neumannTrace.hh.
◆ cell() [2/2]
|
pure virtualinherited |
Returns the cell on which the element is built.
Implemented in hp3D::Element< Real >, hp2D::Element< Real >, and hp1D::BaseElement< Real >.
◆ chi()
|
inlineinherited |
◆ elemMap() [1/3]
|
inlineinherited |
Definition at line 86 of file element.hh.
◆ elemMap() [2/3]
|
inlineinherited |
Definition at line 90 of file element.hh.
◆ elemMap() [3/3]
|
inlineinherited |
Definition at line 94 of file element.hh.
◆ info()
|
protectedvirtual |
◆ integration()
|
inlineinherited |
Returns the integration rule.
Definition at line 51 of file element.hh.
◆ jacobianDeterminant()
|
inlineinherited |
Computes the determinant of the Jacobian.
Definition at line 45 of file element.hh.
◆ mapRho()
|
inline |
Returns the orientation of the MappingEdge2d corresponding to the quad.
Analogue to understand like topological orientations. I.e. this method just makes sense after adding a quad TODO: For 2 Quads make sequence<concepts::Z2> datatype returns : 0 if mapping is counter-clockwise 1 if mapping is clock-wise
Definition at line 113 of file neumannTrace.hh.
◆ p()
|
inline |
Definition at line 127 of file neumannTrace.hh.
◆ quadraturePoint()
|
virtualinherited |
Delivers a quadrature point.
Quadrature point consists of coordinates (for evaluation of formulas) and intermediate data, consisting of the weight and term coming from mapping.
Returns false
, if the number of quadrature points is overstepped.
- Parameters
-
i number of quadrature point intPoint data given back form Integration form localCoord If true, local coordinates are returned. Else physical coordinates.
Implements concepts::IntegrationCell.
◆ recomputeShapefunctions()
void hp2D::NTElement_BA< F >::recomputeShapefunctions | ( | ) |
Recompute shape functions, e.g.
for other abscissas redefined through IntegrableElm::rule().set(...)
◆ rule()
|
inlinestaticinherited |
Access to the quadrature rule, which is valid for all elements of this type (hp1D::IntegrableElm).
Change of the quadrature rule is put into practice for newly created elements and for already created elements by precomputing the integration points and shape functions on them.
Definition at line 62 of file element.hh.
◆ shpfct()
|
inline |
Returns the shape functions.
Definition at line 86 of file neumannTrace.hh.
◆ shpfctD()
|
inline |
Returns the derivatives of the shape functions.
TODO: implementation.
Definition at line 92 of file neumannTrace.hh.
◆ support()
|
inlinevirtual |
Definition at line 73 of file neumannTrace.hh.
◆ T() [1/2]
|
inlinevirtual |
Definition at line 78 of file neumannTrace.hh.
◆ T() [2/2]
|
pure virtualinherited |
Returns the T matrix of the element.
Implemented in hp3D::Element< Real >, and hp2D::Element< Real >.
◆ uelm()
|
inline |
Returns the Underlying Element(s)
Definition at line 101 of file neumannTrace.hh.
◆ vertex()
|
virtual |
Member Data Documentation
◆ cell_
|
private |
The cell.
Definition at line 142 of file neumannTrace.hh.
◆ dim_
|
private |
Local number of shape functions coming from one side.
Definition at line 155 of file neumannTrace.hh.
◆ int_
|
protectedinherited |
The integration rule.
Definition at line 72 of file element.hh.
◆ mapRho_
|
private |
Definition at line 162 of file neumannTrace.hh.
◆ p_
|
private |
Polynomial degree along the edge for each side.
Definition at line 157 of file neumannTrace.hh.
◆ rule_
|
staticprotectedinherited |
Definition at line 74 of file element.hh.
◆ shpfct_
|
private |
The shape functions, precomputed on quadrature points.
Definition at line 147 of file neumannTrace.hh.
◆ shpfctD_
|
private |
The derivatives of the shape functions.
Definition at line 149 of file neumannTrace.hh.
◆ T_
|
protected |
T matrix of the element.
Definition at line 139 of file neumannTrace.hh.
◆ uelm_
|
private |
Definition at line 144 of file neumannTrace.hh.
◆ values_
|
private |
The actual storage of the values of the shape functions and their derivatives along the edge.
Definition at line 153 of file neumannTrace.hh.
◆ valuesD_
|
private |
Definition at line 153 of file neumannTrace.hh.
◆ weights_
|
private |
Weight for each side.
Definition at line 159 of file neumannTrace.hh.
The documentation for this class was generated from the following file:
- hp2D/neumannTrace.hh