ug4
ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim > Class Template Reference

#include <reference_mapping.h>

+ Inheritance diagram for ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >:

Public Types

typedef BaseReferenceMapping< ReferenceTetrahedron::dim, TWorldDim, true, ReferenceMapping< ReferenceTetrahedron, TWorldDim > > base_type
 

Public Member Functions

void jacobian_transposed (MathMatrix< dim, worldDim > &JT, const MathVector< dim > &locPos) const
 returns transposed of jacobian More...
 
void local_to_global (MathVector< worldDim > &globPos, const MathVector< dim > &locPos) const
 map local coordinate to global coordinate More...
 
 ReferenceMapping ()
 Default Constructor. More...
 
void update (const MathVector< worldDim > *vCornerCoord)
 update the mapping for a new set of corners More...
 
void update (const std::vector< MathVector< worldDim > > &vCornerCoord)
 refresh mapping for new set of corners More...
 
 ReferenceMapping (const MathVector< worldDim > *vCornerCoord)
 
 ReferenceMapping (const std::vector< MathVector< worldDim > > &vCornerCoord)
 
- Public Member Functions inherited from ug::BaseReferenceMapping< ReferenceTetrahedron::dim, TWorldDim, true, ReferenceMapping< ReferenceTetrahedron, TWorldDim > >
void global_to_local (MathVector< dim > &locPos, const MathVector< worldDim > &globPos, const size_t maxIter=1000, const number tol=1e-10) const
 map global coordinate to local coordinate More...
 
void global_to_local (MathVector< dim > *vLocPos, const MathVector< worldDim > *vGlobPos, size_t n, const size_t maxIter=1000, const number tol=1e-10) const
 map global coordinate to local coordinate for n local positions More...
 
void global_to_local (std::vector< MathVector< dim > > &vLocPos, const std::vector< MathVector< worldDim > > &vGlobPos, const size_t maxIter=1000, const number tol=1e-10) const
 map global coordinate to local coordinate for a vector of local positions More...
 
bool is_linear () const
 returns if mapping is affine More...
 
void jacobian (MathMatrix< worldDim, dim > &J, const MathVector< dim > &locPos) const
 returns jacobian More...
 
void jacobian (MathMatrix< worldDim, dim > *vJ, const MathVector< dim > *vLocPos, size_t n) const
 returns jacobian for n local positions More...
 
void jacobian (std::vector< MathMatrix< worldDim, dim > > &vJ, const std::vector< MathVector< dim > > &vLocPos) const
 returns jacobian for a vector of local positions More...
 
void jacobian_transposed (MathMatrix< dim, worldDim > *vJT, const MathVector< dim > *vLocPos, size_t n) const
 returns transposed of jacobian for n local positions More...
 
void jacobian_transposed (std::vector< MathMatrix< dim, worldDim > > &vJT, const std::vector< MathVector< dim > > &vLocPos) const
 returns transposed of jacobian for a vector of positions More...
 
number jacobian_transposed_inverse (MathMatrix< worldDim, dim > &JTInv, const MathVector< dim > &locPos) const
 returns transposed of the inverse of the jacobian More...
 
void jacobian_transposed_inverse (MathMatrix< worldDim, dim > *vJTInv, const MathVector< dim > *vLocPos, size_t n) const
 returns transposed of the inverse of the jacobian for n local positions More...
 
void jacobian_transposed_inverse (MathMatrix< worldDim, dim > *vJTInv, number *vDet, const MathVector< dim > *vLocPos, size_t n) const
 returns transposed of the inverse of the jacobian for n local positions More...
 
void jacobian_transposed_inverse (std::vector< MathMatrix< worldDim, dim > > &vJTInv, const std::vector< MathVector< dim > > &vLocPos) const
 returns transposed of the inverse of the jacobian for a vector of positions More...
 
void jacobian_transposed_inverse (std::vector< MathMatrix< worldDim, dim > > &vJTInv, std::vector< number > &vDet, const std::vector< MathVector< dim > > &vLocPos) const
 returns transposed of the inverse of the jacobian for a vector of positions More...
 
void local_to_global (MathVector< worldDim > *vGlobPos, const MathVector< dim > *vLocPos, size_t n) const
 map local coordinate to global coordinate for n local positions More...
 
void local_to_global (std::vector< MathVector< worldDim > > &vGlobPos, const std::vector< MathVector< dim > > &vLocPos) const
 map local coordinate to global coordinate for a vector of local positions More...
 
number sqrt_gram_det (const MathVector< dim > &locPos) const
 returns the determinate of the jacobian More...
 
void sqrt_gram_det (number *vDet, const MathVector< dim > *vLocPos, size_t n) const
 returns the determinate of the jacobian for n local positions More...
 
void sqrt_gram_det (std::vector< number > &vDet, const std::vector< MathVector< dim > > &vLocPos) const
 returns the determinate of the jacobian for a vector of local positions More...
 

Static Public Attributes

static const int dim = ReferenceTetrahedron::dim
 reference dimension More...
 
static const bool isLinear = true
 flag if mapping is linear (i.e. Jacobian does not depend on x) More...
 
static const int worldDim = TWorldDim
 world dimension More...
 

Private Attributes

MathVector< worldDima10
 
MathVector< worldDima20
 
MathVector< worldDima30
 
MathVector< worldDimco0
 

Additional Inherited Members

- Protected Member Functions inherited from ug::BaseReferenceMapping< ReferenceTetrahedron::dim, TWorldDim, true, ReferenceMapping< ReferenceTetrahedron, TWorldDim > >
ReferenceMapping< ReferenceTetrahedron, TWorldDim > & getImpl ()
 access to implementation More...
 
const ReferenceMapping< ReferenceTetrahedron, TWorldDim > & getImpl () const
 const access to implementation More...
 

Member Typedef Documentation

◆ base_type

template<int TWorldDim>
typedef BaseReferenceMapping<ReferenceTetrahedron::dim, TWorldDim, true, ReferenceMapping<ReferenceTetrahedron, TWorldDim> > ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::base_type

Constructor & Destructor Documentation

◆ ReferenceMapping() [1/3]

template<int TWorldDim>
ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::ReferenceMapping ( )
inline

Default Constructor.

◆ ReferenceMapping() [2/3]

template<int TWorldDim>
ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::ReferenceMapping ( const MathVector< worldDim > *  vCornerCoord)
inline

Constructor setting the corners

References ug::ReferenceMapping< TRefElem, TWorldDim >::update().

◆ ReferenceMapping() [3/3]

template<int TWorldDim>
ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::ReferenceMapping ( const std::vector< MathVector< worldDim > > &  vCornerCoord)
inline

Constructor setting the corners

References ug::ReferenceMapping< TRefElem, TWorldDim >::update().

Member Function Documentation

◆ jacobian_transposed()

template<int TWorldDim>
void ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::jacobian_transposed ( MathMatrix< dim, worldDim > &  JT,
const MathVector< dim > &  locPos 
) const
inline

returns transposed of jacobian

References ug::ReferenceMapping< TRefElem, TWorldDim >::worldDim.

◆ local_to_global()

template<int TWorldDim>
void ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::local_to_global ( MathVector< worldDim > &  globPos,
const MathVector< dim > &  locPos 
) const
inline

map local coordinate to global coordinate

References ug::VecScaleAdd().

◆ update() [1/2]

template<int TWorldDim>
void ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::update ( const MathVector< worldDim > *  vCornerCoord)
inline

update the mapping for a new set of corners

References ug::VecSubtract().

◆ update() [2/2]

template<int TWorldDim>
void ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::update ( const std::vector< MathVector< worldDim > > &  vCornerCoord)
inline

Member Data Documentation

◆ a10

template<int TWorldDim>
MathVector<worldDim> ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::a10
private

◆ a20

template<int TWorldDim>
MathVector<worldDim> ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::a20
private

◆ a30

template<int TWorldDim>
MathVector<worldDim> ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::a30
private

◆ co0

template<int TWorldDim>
MathVector<worldDim> ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::co0
private

◆ dim

template<int TWorldDim>
const int ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::dim = ReferenceTetrahedron::dim
static

reference dimension

◆ isLinear

template<int TWorldDim>
const bool ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::isLinear = true
static

flag if mapping is linear (i.e. Jacobian does not depend on x)

◆ worldDim

template<int TWorldDim>
const int ug::ReferenceMapping< ReferenceTetrahedron, TWorldDim >::worldDim = TWorldDim
static

world dimension


The documentation for this class was generated from the following file: