ug4
|
#include <fe_geom.h>
Public Types | |
typedef TQuadratureRule | quad_rule_type |
type of quadrature rule More... | |
typedef reference_element_traits< TElem >::reference_element_type | ref_elem_type |
type of reference element More... | |
typedef TTrialSpace | trial_space_type |
type of trial space More... | |
Public Member Functions | |
FEGeometry () | |
Constructor. More... | |
const MathVector< worldDim > & | global_grad (size_t ip, size_t sh) const |
global gradient at ip More... | |
const MathVector< worldDim > & | global_ip (size_t ip) const |
global integration point More... | |
const MathVector< worldDim > * | global_ips () const |
global integration point More... | |
const MathVector< dim > & | local_grad (size_t ip, size_t sh) const |
local gradient at ip More... | |
const MathVector< dim > & | local_ip (size_t ip) const |
local integration point More... | |
const MathVector< dim > * | local_ips () const |
local integration point More... | |
size_t | num_ip () const |
number of integration points More... | |
size_t | num_sh () const |
number of shape functions More... | |
number | shape (size_t ip, size_t sh) const |
shape function at ip More... | |
void | update (GridObject *pElem, const MathVector< worldDim > *vCorner) |
update Geometry for corners More... | |
void | update (GridObject *pElem, const MathVector< worldDim > *vCorner, const LFEID &lfeID) |
void | update (GridObject *pElem, const MathVector< worldDim > *vCorner, const LFEID &lfeID, size_t orderQuad) |
update Geometry for corners More... | |
void | update_local (ReferenceObjectID roid, const LFEID &lfeID) |
void | update_local (ReferenceObjectID roid, const LFEID &lfeID, size_t orderQuad) |
update Geometry for roid More... | |
number | weight (size_t ip) const |
weight for integration point More... | |
Static Public Attributes | |
static const int | dim = ref_elem_type::dim |
reference element dimension More... | |
static const size_t | nip = quad_rule_type::nip |
number of integration points More... | |
static const size_t | nsh = trial_space_type::nsh |
number of shape functions More... | |
static const bool | staticLocalData = true |
flag indicating if local data may change More... | |
static const int | worldDim = TWorldDim |
world dimension More... | |
Protected Attributes | |
ReferenceMapping< ref_elem_type, worldDim > | m_mapping |
reference mapping More... | |
TElem * | m_pElem |
current element More... | |
const quad_rule_type & | m_rQuadRule |
Quadrature rule. More... | |
const trial_space_type & | m_rTrialSpace |
Quadrature rule. More... | |
number | m_vDetJ [nip] |
determinate of transformation at ip More... | |
MathVector< worldDim > | m_vIPGlobal [nip] |
global integration points More... | |
MathMatrix< worldDim, dim > | m_vJTInv [nip] |
jacobian of transformation at ip More... | |
MathVector< worldDim > | m_vvGradGlobal [nip][nsh] |
local gradient evaluated at ip More... | |
MathVector< dim > | m_vvGradLocal [nip][nsh] |
global gradient evaluated at ip More... | |
number | m_vvShape [nip][nsh] |
shape functions evaluated at ip More... | |
typedef TQuadratureRule ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::quad_rule_type |
type of quadrature rule
typedef reference_element_traits<TElem>::reference_element_type ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::ref_elem_type |
type of reference element
typedef TTrialSpace ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::trial_space_type |
type of trial space
ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry |
Constructor.
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rQuadRule, ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rTrialSpace, ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_vvGradLocal, ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_vvShape, ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::nip, and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::nsh.
|
inline |
|
inline |
global integration point
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_vIPGlobal, ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::nip, and UG_ASSERT.
|
inline |
global integration point
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_vIPGlobal.
|
inline |
|
inline |
local integration point
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rQuadRule.
|
inline |
local integration point
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rQuadRule.
|
inline |
number of integration points
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::nip.
|
inline |
number of shape functions
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::nsh.
|
inline |
|
inline |
update Geometry for corners
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rQuadRule.
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::update().
|
inline |
void ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::update | ( | GridObject * | pElem, |
const MathVector< worldDim > * | vCorner, | ||
const LFEID & | lfeID, | ||
size_t | orderQuad | ||
) |
update Geometry for corners
References ug::MatVecMult(), and UG_ASSERT.
|
inline |
void ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::update_local | ( | ReferenceObjectID | roid, |
const LFEID & | lfeID, | ||
size_t | orderQuad | ||
) |
update Geometry for roid
References UG_THROW.
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::update_local().
|
inline |
weight for integration point
References ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_rQuadRule, and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::m_vDetJ.
|
static |
reference element dimension
|
protected |
reference mapping
|
protected |
current element
|
protected |
Quadrature rule.
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::local_ip(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::local_ips(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::update(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::weight().
|
protected |
Quadrature rule.
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry().
|
protected |
determinate of transformation at ip
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::weight().
|
protected |
global integration points
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_ip(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_ips().
|
protected |
jacobian of transformation at ip
|
protected |
local gradient evaluated at ip
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_grad().
|
protected |
global gradient evaluated at ip
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::local_grad().
|
protected |
shape functions evaluated at ip
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::shape().
|
static |
number of integration points
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_grad(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_ip(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::local_grad(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::num_ip(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::shape().
|
static |
number of shape functions
Referenced by ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::FEGeometry(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::global_grad(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::local_grad(), ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::num_sh(), and ug::FEGeometry< TElem, TWorldDim, TTrialSpace, TQuadratureRule >::shape().
|
static |
flag indicating if local data may change
|
static |
world dimension