dune-geometry
2.4
|
This class provides access to geometric and topological properties of a reference element. More...
#include <dune/geometry/affinegeometry.hh>
Classes | |
struct | Codim |
Collection of types depending on the codimension. More... | |
struct | SubEntityInfo |
topological information about the subentities of a reference element More... | |
Public Member Functions | |
int | size (int c) const |
number of subentities of codimension c More... | |
int | size (int i, int c, int cc) const |
number of subentities of codimension cc of subentity (i,c) More... | |
int | subEntity (int i, int c, int ii, int cc) const |
obtain number of ii-th subentity with codim cc of (i,c) More... | |
const GeometryType & | type (int i, int c) const |
obtain the type of subentity (i,c) More... | |
const GeometryType & | type () const |
obtain the type of this reference element More... | |
const FieldVector< ctype, dim > & | position (int i, int c) const |
position of the barycenter of entity (i,c) More... | |
bool | checkInside (const FieldVector< ctype, dim > &local) const |
check if a coordinate is in the reference element More... | |
template<int codim> | |
bool | checkInside (const FieldVector< ctype, dim-codim > &local, int i) const |
check if a point is in the reference element of the i-th subentity with codimension codim More... | |
template<int codim> | |
Codim< codim >::Geometry | geometry (int i) const |
obtain the embedding of subentity (i,codim) into the reference element More... | |
ctype | volume () const |
obtain the volume of the reference element More... | |
const FieldVector< ctype, dim > & | integrationOuterNormal (int face) const |
obtain the integration outer normal of the reference element More... | |
This class provides access to geometric and topological properties of a reference element.
This includes its type, the number of subentities, the volume, and a method for checking if a point is contained in the reference element. The embedding of each subentity into the reference element is also provided.
A singleton of this class for a given geometry type can be accessed through the ReferenceElements class.
ctype | field type for coordinates |
dim | dimension of the reference element |
|
inline |
check if a coordinate is in the reference element
This method returns true if the given local coordinate is within this reference element.
[in] | local | coordinates of the point |
References Dune::GeometryType::id(), and Dune::ReferenceElement< ctype, dim >::type().
Referenced by Dune::ReferenceElement< ctype, dim >::checkInside().
|
inline |
check if a point is in the reference element of the i-th subentity with codimension codim
Denote by E the i-th subentity of codimension codim of the current reference element. This method return true, if the given local coordinate is within the reference element for the entity E.
codim | codimension of subentity E |
[in] | local | coordinates of the point with respect to the reference element of E |
[in] | i | number of subentity E (0 <= i < size( c )) |
References Dune::ReferenceElement< ctype, dim >::checkInside(), Dune::GeometryType::id(), and Dune::ReferenceElement< ctype, dim >::type().
|
inline |
obtain the embedding of subentity (i,codim) into the reference element
Denote by E the i-th subentity of codimension codim of the current reference element. This method returns a Dune::AffineGeometry that maps the reference element of E into the current reference element.
codim | codimension of subentity E |
[in] | i | number of subentity E (0 <= i < size( codim )) |
|
inline |
obtain the integration outer normal of the reference element
The integration outer normal is the outer normal whose length coincides with the face's integration element.
[in] | face | index of the face, whose normal is desired |
|
inline |
position of the barycenter of entity (i,c)
Denote by E the i-th subentity of codimension c of the current reference element. This method returns the coordinates of the center of gravity of E within the current reference element.
[in] | i | number of subentity E (0 <= i < size( c )) |
[in] | c | codimension of subentity E |
Referenced by Dune::AffineGeometry< ct, mydim, cdim >::center(), Dune::AffineGeometry< ct, mydim, cdim >::corner(), Dune::RefinementImp::Simplex::RefinementIteratorSpecial< dimension, CoordType, 0 >::geometry(), and Dune::MultiLinearGeometry< ct, mydim, cdim, Traits >::local().
|
inline |
number of subentities of codimension c
[in] | c | codimension whose size is desired |
Referenced by Dune::AffineGeometry< ct, mydim, cdim >::corners(), Dune::MultiLinearGeometry< ct, mydim, cdim, Traits >::corners(), Dune::GeneralVertexOrder< dim, Index_ >::end(), Dune::GeneralVertexOrder< dim, Index_ >::getReduced(), Dune::ReferenceElement< ctype, dim >::SubEntityInfo::number(), Dune::ReferenceElement< ctype, dim >::size(), Dune::ReferenceElement< ctype, dim >::subEntity(), and Dune::ReferenceElement< ctype, dim >::type().
|
inline |
number of subentities of codimension cc of subentity (i,c)
Denote by E the i-th subentity of codimension c of the current reference element. This method returns the number of subentities of codimension cc of the current reference element, that are also a subentity of E.
[in] | i | number of subentity E (0 <= i < size( c )) |
[in] | c | codimension of subentity E |
[in] | cc | codimension whose size is desired (c <= cc <= dim) |
References Dune::ReferenceElement< ctype, dim >::size().
|
inline |
obtain number of ii-th subentity with codim cc of (i,c)
Denote by E the i-th subentity of codimension c of the current reference element. And denote by S the ii-th subentity of codimension (cc-c) of E. Then, S is a also a subentity of codimension c of the current reference element. This method returns the number of S with respect to the current reference element.
[in] | i | number of subentity E (0 <= i < size( c )) |
[in] | c | codimension of subentity E |
[in] | ii | number of subentity S (with respect to E) |
[in] | cc | codimension of subentity S (c <= cc <= dim) |
References Dune::ReferenceElement< ctype, dim >::size().
|
inline |
obtain the type of subentity (i,c)
Denote by E the i-th subentity of codimension c of the current reference element. This method returns the GeometryType of E.
[in] | i | number of subentity E (0 <= i < size( c )) |
[in] | c | codimension of subentity E |
References Dune::ReferenceElement< ctype, dim >::size().
Referenced by Dune::RefinementImp::Simplex::RefinementIteratorSpecial< dimension, CoordType, 0 >::geometry(), and Dune::AffineGeometry< ct, mydim, cdim >::type().
|
inline |
obtain the type of this reference element
References Dune::ReferenceElement< ctype, dim >::type().
Referenced by Dune::ReferenceElement< ctype, dim >::checkInside(), Dune::ReferenceElement< ctype, dim >::SubEntityInfo::codim(), and Dune::ReferenceElement< ctype, dim >::type().
|
inline |
obtain the volume of the reference element
Referenced by Dune::AffineGeometry< ct, mydim, cdim >::volume(), Dune::MultiLinearGeometry< ct, mydim, cdim, Traits >::volume(), and Dune::CachedMultiLinearGeometry< ct, mydim, cdim, Traits >::volume().