|
dune-geometry 2.8.0
|
Implement a MultiLinearGeometry with additional caching. More...
#include <dune/geometry/multilineargeometry.hh>

Public Member Functions | |
| template<class CornerStorage > | |
| CachedMultiLinearGeometry (const ReferenceElement &referenceElement, const CornerStorage &cornerStorage) | |
| template<class CornerStorage > | |
| CachedMultiLinearGeometry (Dune::GeometryType gt, const CornerStorage &cornerStorage) | |
| bool | affine () const |
| is this mapping affine? | |
| GlobalCoordinate | center () const |
| obtain the centroid of the mapping's image | |
| GlobalCoordinate | global (const LocalCoordinate &local) const |
| evaluate the mapping | |
| LocalCoordinate | local (const GlobalCoordinate &global) const |
| evaluate the inverse mapping | |
| ctype | integrationElement (const LocalCoordinate &local) const |
| obtain the integration element | |
| Volume | volume () const |
| obtain the volume of the mapping's image | |
| JacobianTransposed | jacobianTransposed (const LocalCoordinate &local) const |
| obtain the transposed of the Jacobian | |
| JacobianInverseTransposed | jacobianInverseTransposed (const LocalCoordinate &local) const |
| obtain the transposed of the Jacobian's inverse | |
| GlobalCoordinate | corner (int i) const |
| obtain coordinates of the i-th corner | |
| Dune::GeometryType | type () const |
| obtain the name of the reference element | |
| int | corners () const |
| obtain number of corners of the corresponding reference element | |
Static Public Attributes | |
| static const int | mydimension |
| geometry dimension | |
| static const int | coorddimension |
| coordinate dimension | |
Protected Types | |
| typedef Base::MatrixHelper | MatrixHelper |
| typedef Dune::ReferenceElements< ctype, mydimension > | ReferenceElements |
| typedef std::conditional< hasSingleGeometryType, std::integral_constant< unsignedint, Traits::templatehasSingleGeometryType< mydimension >::topologyId >, unsignedint >::type | TopologyId |
Protected Member Functions | |
| ReferenceElement | refElement () const |
| bool | affine (JacobianTransposed &jacobianT) const |
| TopologyId | topologyId () const |
Detailed Description
class Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >
Implement a MultiLinearGeometry with additional caching.
This class implements the same interface and functionality as MultiLinearGeometry. However, it additionally implements caching for various results.
- Template Parameters
-
ct coordinate type mydim geometry dimension cdim coordinate dimension Traits traits allowing to tweak some implementation details (optional)
Member Typedef Documentation
◆ ctype
| typedef Base::ctype Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::ctype |
◆ GlobalCoordinate
| typedef Base::GlobalCoordinate Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::GlobalCoordinate |
◆ JacobianInverseTransposed
| typedef Base::JacobianInverseTransposed Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::JacobianInverseTransposed |
◆ JacobianTransposed
| typedef Base::JacobianTransposed Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::JacobianTransposed |
◆ LocalCoordinate
| typedef Base::LocalCoordinate Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::LocalCoordinate |
◆ MatrixHelper
|
protected |
◆ ReferenceElement
| typedef Base::ReferenceElement Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::ReferenceElement |
◆ ReferenceElements
|
protectedinherited |
◆ TopologyId
|
protectedinherited |
◆ Volume
| typedef Base::Volume Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::Volume |
Constructor & Destructor Documentation
◆ CachedMultiLinearGeometry() [1/2]
|
inline |
◆ CachedMultiLinearGeometry() [2/2]
|
inline |
Member Function Documentation
◆ affine() [1/4]
|
inline |
is this mapping affine?
◆ affine() [2/4]
|
inlineprotectedinherited |
◆ affine() [3/4]
|
inlinestaticprotectedinherited |
◆ affine() [4/4]
|
inlinestaticprotectedinherited |
◆ center()
|
inline |
obtain the centroid of the mapping's image
◆ corner()
|
inline |
obtain coordinates of the i-th corner
◆ corners()
|
inlineinherited |
obtain number of corners of the corresponding reference element
◆ global() [1/3]
|
inline |
evaluate the mapping
- Parameters
-
[in] local local coordinate to map
- Returns
- corresponding global coordinate
◆ global() [2/3]
|
inlinestaticprotectedinherited |
◆ global() [3/3]
|
inlinestaticprotectedinherited |
◆ integrationElement()
|
inline |
obtain the integration element
If the Jacobian of the mapping is denoted by $J(x)$, the integration integration element \(\mu(x)\) is given by
\[ \mu(x) = \sqrt{|\det (J^T(x) J(x))|}.\]
- Parameters
-
[in] local local coordinate to evaluate the integration element in
- Returns
- the integration element \(\mu(x)\).
- Note
- For affine mappings, it is more efficient to call jacobianInverseTransposed before integrationElement, if both are required.
◆ jacobianInverseTransposed()
|
inline |
obtain the transposed of the Jacobian's inverse
The Jacobian's inverse is defined as a pseudo-inverse. If we denote the Jacobian by \(J(x)\), the following condition holds:
\[J^{-1}(x) J(x) = I.\]
◆ jacobianTransposed() [1/3]
|
inline |
obtain the transposed of the Jacobian
- Parameters
-
[in] local local coordinate to evaluate Jacobian in
- Returns
- a reference to the transposed of the Jacobian
- Note
- The returned reference is reused on the next call to JacobianTransposed, destroying the previous value.
◆ jacobianTransposed() [2/3]
|
inlinestaticprotectedinherited |
◆ jacobianTransposed() [3/3]
|
inlinestaticprotectedinherited |
◆ local()
|
inline |
evaluate the inverse mapping
- Parameters
-
[in] global global coordinate to map
- Returns
- corresponding local coordinate
- Note
- For given global coordinate y the returned local coordinate x that minimizes the following function over the local coordinate space spanned by the reference element.
◆ refElement()
|
inlineprotected |
◆ topologyId()
|
inlineprotectedinherited |
◆ type()
|
inlineinherited |
obtain the name of the reference element
◆ volume()
|
inline |
obtain the volume of the mapping's image
Member Data Documentation
◆ coorddimension
coordinate dimension
◆ mydimension
geometry dimension
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8