![]() |
OGS
|
Template class for isoparametric elements.
ShapeFunctionType_ | The shape function type. |
ShapeMatrixTypes_ | An aggregate of shape matrix types. |
Definition at line 32 of file TemplateIsoparametric.h.
#include <TemplateIsoparametric.h>
Public Types | |
using | ShapeFunctionType = ShapeFunctionType_ |
using | ShapeMatrices = typename ShapeMatrixTypes_::ShapeMatrices |
Coordinate mapping matrices type. | |
using | NaturalCoordsMappingType |
Public Member Functions | |
TemplateIsoparametric () | |
TemplateIsoparametric (const MeshLib::Element &e) | |
const MeshLib::Element * | getMeshElement () const |
return current mesh element | |
void | setMeshElement (const MeshLib::Element &e) |
Sets the mesh element. | |
void | computeShapeFunctions (const double *natural_pt, ShapeMatrices &shape, const unsigned global_dim, bool is_axially_symmetric) const |
template<ShapeMatrixType T_SHAPE_MATRIX_TYPE> | |
void | computeShapeFunctions (const double *natural_pt, ShapeMatrices &shape, const unsigned global_dim, bool is_axially_symmetric) const |
double | interpolateZerothCoordinate (typename ShapeMatrices::ShapeType const &N) const |
std::array< double, 3 > | interpolateCoordinates (typename ShapeMatrices::ShapeType const &N) const |
Interpolates the coordinates of the element with the given shape matrix. |
Private Member Functions | |
void | computeIntegralMeasure (bool is_axially_symmetric, ShapeMatrices &shape) const |
Private Attributes | |
const MeshLib::Element * | _ele |
using NumLib::TemplateIsoparametric< ShapeFunctionType_, ShapeMatrixTypes_ >::NaturalCoordsMappingType |
Natural coordinates mapping tools specialization for specific MeshElement and ShapeFunction types.
Definition at line 42 of file TemplateIsoparametric.h.
using NumLib::TemplateIsoparametric< ShapeFunctionType_, ShapeMatrixTypes_ >::ShapeFunctionType = ShapeFunctionType_ |
Definition at line 35 of file TemplateIsoparametric.h.
using NumLib::TemplateIsoparametric< ShapeFunctionType_, ShapeMatrixTypes_ >::ShapeMatrices = typename ShapeMatrixTypes_::ShapeMatrices |
Coordinate mapping matrices type.
Definition at line 38 of file TemplateIsoparametric.h.
|
inline |
Constructor without specifying a mesh element. setMeshElement() must be called afterwards.
Definition at line 49 of file TemplateIsoparametric.h.
|
inlineexplicit |
Construct this object for the given mesh element.
e | Mesh element object |
Definition at line 56 of file TemplateIsoparametric.h.
|
inlineprivate |
Definition at line 135 of file TemplateIsoparametric.h.
Referenced by NumLib::TemplateIsoparametric< ShapePoint1, T_SHAPE_MATRIX_POLICY< ShapePoint1 > >::computeShapeFunctions().
|
inline |
compute shape functions
natural_pt | position in natural coordinates |
shape | evaluated shape function matrices |
global_dim | global dimension |
is_axially_symmetric | if true, the integral measure for cylinder coordinates is used, and 1 otherwise. |
Definition at line 72 of file TemplateIsoparametric.h.
|
inline |
compute shape functions
T_SHAPE_MATRIX_TYPE | shape matrix types to be calculated |
natural_pt | position in natural coordinates |
shape | evaluated shape function matrices |
global_dim | global dimension |
is_axially_symmetric | if true, the integral measure for cylinder coordinates is used, and 1 otherwise. |
Definition at line 92 of file TemplateIsoparametric.h.
|
inline |
|
inline |
Interpolates the coordinates of the element with the given shape matrix.
Definition at line 117 of file TemplateIsoparametric.h.
|
inline |
Interpolates the x coordinate of the element with the given shape matrix.
Definition at line 103 of file TemplateIsoparametric.h.
Referenced by NumLib::TemplateIsoparametric< ShapePoint1, T_SHAPE_MATRIX_POLICY< ShapePoint1 > >::computeIntegralMeasure().
|
inline |
Sets the mesh element.
Definition at line 62 of file TemplateIsoparametric.h.
|
private |
Definition at line 154 of file TemplateIsoparametric.h.