P12DTrace: traces of P12DElements. More...
#include <P12DElement.h>
Public Member Functions | |
P12DTrace (const P12DElement< NF > &BaseElement, const typename P1nDTrace< NF >::FaceLabel &FaceName, const typename P1nDTrace< NF >::ShapeType &Type) | |
virtual | ~P12DTrace () |
P12DTrace (const P12DTrace< NF > &that) | |
virtual P12DTrace< NF > * | clone () const |
Private Member Functions | |
void | checkArgs (const typename P1nDTrace< NF >::FaceLabel &faceLabel, const typename P1nDTrace< NF >::ShapeType &shapeType) |
check if the faceLabel and shapeType are consistent with 2D element trace |
P12DTrace: traces of P12DElements.
These trace elements are templated according to the number of Linear fields and the Triangle face P12DTrace<NF>::FaceLabel on which the trace is computed.
Traces of P12D elements are somewhat special, since for each side one of the bulk basis functions is identically zero, effectively leaving only two degrees of freedom per face. To reduce the amount of memory allocated per element is then convenient to consider Trace elements with only two degrees of freedom per field per face, i.e., use the ShapesP12D::Faces ShapesEvaluated objects.
However, ocassionally it may be necessary to have the boundary elements have the same number of degrees of freedom as the bulk elements, as it is generally the case for arbitrary bases. Hence, during the construction of these elements it is possible to decide which type of shape functions to use. This is accomplished by specifying the type ShapeType.
P12DTrace< NF >::P12DTrace | ( | const P12DElement< NF > & | BaseElement, | |
const typename P1nDTrace< NF >::FaceLabel & | FaceName, | |||
const typename P1nDTrace< NF >::ShapeType & | Type | |||
) | [inline] |
BaseElement | Element whose trace is desired | |
FaceName | Face on which to take the trace | |
Type | ShapeType of face, i.e., with two or three dof |
void P12DTrace< NF >::checkArgs | ( | const typename P1nDTrace< NF >::FaceLabel & | faceLabel, | |
const typename P1nDTrace< NF >::ShapeType & | shapeType | |||
) | [inline, private] |
check if the faceLabel and shapeType are consistent with 2D element trace
faceLabel | ||
shapeType |
Implements Element_.