|
ug4
|
#include <fe_geom.h>
Classes | |
| class | BF |
| boundary face More... | |
Public Member Functions | |
| void | add_boundary_subset (int subsetIndex) |
| add subset that is interpreted as boundary subset. | |
| const std::vector< BF > & | bf (int si) const |
| returns reference to vector of boundary faces for subsetIndex | |
| const BF & | bf (int si, size_t i) const |
| returns the boundary face i for subsetIndex | |
| void | clear_boundary_subsets () |
| reset all boundary subsets | |
| DimFEGeometry () | |
| default Constructor | |
| DimFEGeometry (ReferenceObjectID roid, size_t order, LFEID lfeid) | |
| Constructor. | |
| DimFEGeometry (size_t order, LFEID lfeid) | |
| Constructor. | |
| const MathVector< worldDim > & | global_grad (size_t ip, size_t sh) const |
| global gradient at ip | |
| const MathVector< worldDim > & | global_ip (size_t ip) const |
| global integration point | |
| const MathVector< worldDim > * | global_ips () const |
| global integration point | |
| const MathVector< dim > & | local_grad (size_t ip, size_t sh) const |
| local gradient at ip | |
| const MathVector< dim > & | local_ip (size_t ip) const |
| local integration point | |
| const MathVector< dim > * | local_ips () const |
| local integration point | |
| size_t | num_bf () const |
| number of all boundary faces | |
| size_t | num_bf (int si) const |
| number of boundary faces on subset 'subsetIndex' | |
| size_t | num_boundary_subsets () |
| number of registered boundary subsets | |
| size_t | num_ip () const |
| number of integration points | |
| size_t | num_sh () const |
| number of shape functions | |
| void | remove_boundary_subset (int subsetIndex) |
| removes subset that is interpreted as boundary subset. | |
| number | shape (size_t ip, size_t sh) const |
| shape function at ip | |
| void | update (GridObject *pElem, const MathVector< worldDim > *vCorner) |
| update Geometry for corners | |
| 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 | |
| void | update_boundary_faces (GridObject *pElem, const MathVector< worldDim > *vCornerCoords, size_t orderQuad, const ISubsetHandler *ish) |
| update boundary data for given element | |
| void | update_local (ReferenceObjectID roid, const LFEID &lfeID) |
| void | update_local (ReferenceObjectID roid, const LFEID &lfeID, size_t orderQuad) |
| update Geometry for roid | |
| number | weight (size_t ip) const |
| weight for integration point | |
Static Public Attributes | |
| static const int | dim = TRefDim |
| reference element dimension | |
| static const bool | staticLocalData = false |
| flag indicating if local data may change | |
| static const int | worldDim = TWorldDim |
| world dimension | |
Protected Attributes | |
| LFEID | m_lfeID |
| current local finite element id | |
| std::map< int, std::vector< BF > > | m_mapVectorBF |
| size_t | m_nip |
| number of integration point | |
| size_t | m_nsh |
| number of shape functions | |
| GridObject * | m_pElem |
| current element | |
| int | m_quadOrder |
| current integration order | |
| ReferenceObjectID | m_roid |
| current reference object id the local values are prepared for | |
| std::vector< number > | m_vDetJ |
| determinant of transformation at ip (size = nip) | |
| std::vector< BF > | m_vEmptyVectorBF |
| std::vector< MathVector< worldDim > > | m_vIPGlobal |
| global integration points (size = nip) | |
| const MathVector< dim > * | m_vIPLocal |
| local quadrature points | |
| std::vector< MathMatrix< worldDim, dim > > | m_vJTInv |
| jacobian of transformation at ip (size = nip) | |
| const number * | m_vQuadWeight |
| local quadrature weights | |
| std::vector< std::vector< MathVector< worldDim > > > | m_vvGradGlobal |
| local gradient evaluated at ip (size = nip x nsh) | |
| std::vector< std::vector< MathVector< dim > > > | m_vvGradLocal |
| global gradient evaluated at ip (size = nip x nsh) | |
| std::vector< std::vector< number > > | m_vvShape |
| shape functions evaluated at ip (size = nip x nsh) | |
| ug::DimFEGeometry< TWorldDim, TRefDim >::DimFEGeometry | ( | ) |
default Constructor
| ug::DimFEGeometry< TWorldDim, TRefDim >::DimFEGeometry | ( | size_t | order, |
| LFEID | lfeid | ||
| ) |
Constructor.
| ug::DimFEGeometry< TWorldDim, TRefDim >::DimFEGeometry | ( | ReferenceObjectID | roid, |
| size_t | order, | ||
| LFEID | lfeid | ||
| ) |
Constructor.
|
inline |
add subset that is interpreted as boundary subset.
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
|
inline |
returns reference to vector of boundary faces for subsetIndex
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF, and ug::DimFEGeometry< TWorldDim, TRefDim >::m_vEmptyVectorBF.
|
inline |
returns the boundary face i for subsetIndex
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF, ug::DimFEGeometry< TWorldDim, TRefDim >::num_bf(), UG_ASSERT, and UG_THROW.
|
inline |
reset all boundary subsets
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
|
inline |
global gradient at ip
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vvGradGlobal, and UG_ASSERT.
|
inline |
global integration point
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vIPGlobal, and UG_ASSERT.
|
inline |
global integration point
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vIPGlobal.
|
inline |
local gradient at ip
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vvGradLocal, and UG_ASSERT.
|
inline |
local integration point
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_nip, ug::DimFEGeometry< TWorldDim, TRefDim >::m_vIPLocal, and UG_ASSERT.
|
inline |
local integration point
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vIPLocal.
|
inline |
number of all boundary faces
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::bf().
|
inline |
number of boundary faces on subset 'subsetIndex'
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
|
inline |
number of registered boundary subsets
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
|
inline |
number of integration points
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_nip.
|
inline |
number of shape functions
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_nsh.
|
inline |
removes subset that is interpreted as boundary subset.
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_mapVectorBF.
|
inline |
shape function at ip
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_vvShape, and UG_ASSERT.
|
inline |
update Geometry for corners
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_lfeID, ug::DimFEGeometry< TWorldDim, TRefDim >::m_quadOrder, and ug::DimFEGeometry< TWorldDim, TRefDim >::update().
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::update(), and ug::DimFEGeometry< TWorldDim, TRefDim >::update().
|
inline |
References ug::LFEID::order(), and ug::DimFEGeometry< TWorldDim, TRefDim >::update().
| void ug::DimFEGeometry< TWorldDim, TRefDim >::update | ( | GridObject * | pElem, |
| const MathVector< worldDim > * | vCorner, | ||
| const LFEID & | lfeID, | ||
| size_t | orderQuad | ||
| ) |
| void ug::DimFEGeometry< TWorldDim, TRefDim >::update_boundary_faces | ( | GridObject * | pElem, |
| const MathVector< worldDim > * | vCornerCoords, | ||
| size_t | orderQuad, | ||
| const ISubsetHandler * | ish | ||
| ) |
update boundary data for given element
References ug::CollectAssociated(), ug::DimReferenceElement< d >::corner(), ug::ReferenceMappingProvider::get(), ug::QuadratureRuleProvider< TDim >::get(), ug::ISubsetHandler::get_subset_index(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::grads(), ug::ISubsetHandler::grid(), ug::ReferenceElement::id(), ug::DimReferenceMapping< TDim, TWorldDim >::jacobian_transposed_inverse(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::local_ip(), ug::DimReferenceMapping< TDim, TWorldDim >::local_to_global(), ug::MatVecMult(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::nip, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::Normal, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::nsh, ug::ReferenceElement::num(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::num_ip(), ug::LocalDoFSet::num_sh(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::num_sh(), ug::GridObject::reference_object_id(), ug::ReferenceElement::roid(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::shapes(), ug::DimReferenceMapping< TDim, TWorldDim >::sqrt_gram_det(), UG_CATCH_THROW, ug::DimReferenceMapping< TDim, TWorldDim >::update(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vDetJ, ug::VecTwoNorm(), ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vGlobalIP, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vJtInv, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vLocalIP, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::Vol, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vvGlobalGrad, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vvLocalGrad, ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vvShape, and ug::DimFEGeometry< TWorldDim, TRefDim >::BF::vWeight.
|
inline |
| void ug::DimFEGeometry< TWorldDim, TRefDim >::update_local | ( | ReferenceObjectID | roid, |
| const LFEID & | lfeID, | ||
| size_t | orderQuad | ||
| ) |
update Geometry for roid
References ug::QuadratureRuleProvider< TDim >::get(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::grads(), ug::LocalDoFSet::num_sh(), ug::QuadratureRule< TDim >::points(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::shapes(), ug::QuadratureRule< TDim >::size(), UG_CATCH_THROW, and ug::QuadratureRule< TDim >::weights().
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::update_local().
|
inline |
weight for integration point
References ug::DimFEGeometry< TWorldDim, TRefDim >::m_nip, ug::DimFEGeometry< TWorldDim, TRefDim >::m_vDetJ, ug::DimFEGeometry< TWorldDim, TRefDim >::m_vQuadWeight, and UG_ASSERT.
|
static |
reference element dimension
|
protected |
current local finite element id
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::update().
|
protected |
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::add_boundary_subset(), ug::DimFEGeometry< TWorldDim, TRefDim >::bf(), ug::DimFEGeometry< TWorldDim, TRefDim >::bf(), ug::DimFEGeometry< TWorldDim, TRefDim >::clear_boundary_subsets(), ug::DimFEGeometry< TWorldDim, TRefDim >::num_bf(), ug::DimFEGeometry< TWorldDim, TRefDim >::num_bf(), ug::DimFEGeometry< TWorldDim, TRefDim >::num_boundary_subsets(), and ug::DimFEGeometry< TWorldDim, TRefDim >::remove_boundary_subset().
|
protected |
number of integration point
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::local_ip(), ug::DimFEGeometry< TWorldDim, TRefDim >::num_ip(), and ug::DimFEGeometry< TWorldDim, TRefDim >::weight().
|
protected |
number of shape functions
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::num_sh().
|
protected |
current element
|
protected |
current integration order
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::update().
|
protected |
current reference object id the local values are prepared for
|
protected |
determinant of transformation at ip (size = nip)
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::weight().
|
protected |
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::bf().
|
protected |
global integration points (size = nip)
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::global_ip(), and ug::DimFEGeometry< TWorldDim, TRefDim >::global_ips().
|
protected |
local quadrature points
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::local_ip(), and ug::DimFEGeometry< TWorldDim, TRefDim >::local_ips().
|
protected |
jacobian of transformation at ip (size = nip)
|
protected |
local quadrature weights
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::weight().
|
protected |
local gradient evaluated at ip (size = nip x nsh)
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::global_grad().
|
protected |
global gradient evaluated at ip (size = nip x nsh)
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::local_grad().
|
protected |
shape functions evaluated at ip (size = nip x nsh)
Referenced by ug::DimFEGeometry< TWorldDim, TRefDim >::shape().
|
static |
flag indicating if local data may change
|
static |
world dimension