|
dune-geometry
2.3.1
|
generic implementation of DUNE geometries More...
#include <dune/geometry/genericgeometry/geometry.hh>

Public Types | |
| typedef CoordTraits::ctype | ctype |
| Type used for coordinate components. More... | |
| typedef FieldVector< ctype, mydimension > | LocalCoordinate |
| Type used for parameter coordinates. More... | |
| typedef FieldVector< ctype, coorddimension > | GlobalCoordinate |
| Type used for world coordinates. More... | |
| typedef Mapping::JacobianTransposed | JacobianTransposed |
| Type used for Jacobian matrices. More... | |
| typedef Mapping::JacobianInverseTransposed | Jacobian |
| Type used for Jacobian matrices. More... | |
| typedef Jacobian | JacobianInverseTransposed |
Public Member Functions | |
| BasicGeometry () | |
| Default constructor. More... | |
| template<class CoordVector > | |
| BasicGeometry (const GeometryType &type, const CoordVector &coords) | |
| Constructor using a GeometryType and a list of corner coordinates. More... | |
| template<class CoordVector > | |
| BasicGeometry (const CoordVector &coords) | |
| Constructor using a vector of corner coordinates and the dimension. More... | |
| template<int fatherdim> | |
| BasicGeometry (const BasicGeometry< fatherdim, Traits > &father, int i) | |
| obtain a geometry for a subentity More... | |
| BasicGeometry (const BasicGeometry &other) | |
| Copy constructor. More... | |
| ~BasicGeometry () | |
| Destructor. More... | |
| const BasicGeometry & | operator= (const BasicGeometry &other) |
| Assignment from other BasicGeometry. More... | |
| operator bool () const | |
| bool cast More... | |
| GeometryType | type () const |
| Return the topological type of this geometry. More... | |
| int | corners () const |
| Return the number of corners. More... | |
| GlobalCoordinate | corner (const int i) const |
| Return the world coordinates of the i-th corner. More... | |
| GlobalCoordinate | global (const LocalCoordinate &local) const |
| Map local to global coordinates. More... | |
| LocalCoordinate | local (const GlobalCoordinate &global) const |
| Map global to local coordinates. More... | |
| GlobalCoordinate | center () const |
| return center of element More... | |
| bool | affine () const |
| Return true if this is an affine geometry. More... | |
| ctype | integrationElement (const LocalCoordinate &local) const |
| Return the factor $|det F|$ that appears in the integral transformation formula. More... | |
| ctype | volume () const |
| Return the volume of the element. More... | |
| const JacobianTransposed & | jacobianTransposed (const LocalCoordinate &local) const |
| Compute the transpose of the Jacobian matrix of the transformation from the reference element into the world space. More... | |
| const JacobianInverseTransposed & | jacobianInverseTransposed (const LocalCoordinate &local) const |
| Compute the transpose of the inverse Jacobian matrix of the transformation from the reference element into the world space. More... | |
Static Public Attributes | |
| static const int | mydimension = mydim |
| The dimension of the parameter space of this geometry. More... | |
| static const int | coorddimension = Traits :: dimWorld |
| The dimension of the world space of this geometry. More... | |
Protected Types | |
| typedef conditional< hybrid, Hybrid< true >, NonHybrid < false > >::type::MappingFactory | MappingFactory |
| typedef MappingFactory::Mapping | Mapping |
Friends | |
| template<int , class > | |
| class | BasicGeometry |
| Be friend with other instantiations of the same class. More... | |
generic implementation of DUNE geometries
This class is provides a generic implementation of a DUNE geometry.
Parameters shared by all codimensions are summarized in one class parameter called Traits. As a default traits class, the class DefaultGeometryTraits can be used. Alternatively, the user can provide hand-written traits classes (which may, if that helps, derive from DefaultGeometryTraits). Such classes have to provide the following fields:
The structure specifying the reference mapping is Traits::Mapping::type. An example implementation is the GenericGeometry::CornerMapping which defines the simple mapping taking corners of the reference elements to corner of the entity in space.
The central reference mapping specified by Traits::Mapping::type requires a constructor taking a single argument. The GenericGeometry::BasicGeometry has a constructor with one template argument which is passed on to the constructor of the reference mapping. The interface for the this class is GenericGeometry::Mapping.
To increase the efficiency of the geometry implementation, different strategies for the caching of parts of the geometry data is provided. The specifics are given by the structure Traits::Caching. Possible values are:
| typedef CoordTraits :: ctype Dune::GenericGeometry::BasicGeometry< mydim, Traits >::ctype |
Type used for coordinate components.
| typedef FieldVector< ctype, coorddimension > Dune::GenericGeometry::BasicGeometry< mydim, Traits >::GlobalCoordinate |
Type used for world coordinates.
| typedef Mapping::JacobianInverseTransposed Dune::GenericGeometry::BasicGeometry< mydim, Traits >::Jacobian |
Type used for Jacobian matrices.
| typedef Jacobian Dune::GenericGeometry::BasicGeometry< mydim, Traits >::JacobianInverseTransposed |
| typedef Mapping::JacobianTransposed Dune::GenericGeometry::BasicGeometry< mydim, Traits >::JacobianTransposed |
Type used for Jacobian matrices.
| typedef FieldVector< ctype, mydimension > Dune::GenericGeometry::BasicGeometry< mydim, Traits >::LocalCoordinate |
Type used for parameter coordinates.
|
protected |
|
protected |
|
inline |
Default constructor.
|
inline |
Constructor using a GeometryType and a list of corner coordinates.
|
inline |
Constructor using a vector of corner coordinates and the dimension.
|
inline |
obtain a geometry for a subentity
Assume that we have a geometry for some entity d-dimensional E. This method can provide a geometry for the i-th subentity of E (of codimension d - mydimension).
| [in] | father | geometry of entity E |
| [in] | i | number of the subentity (in generic numbering) |
|
inline |
Copy constructor.
|
inline |
Destructor.
|
inline |
Return true if this is an affine geometry.
|
inline |
return center of element
|
inline |
Return the world coordinates of the i-th corner.
|
inline |
Return the number of corners.
|
inline |
Map local to global coordinates.
|
inline |
Return the factor $|det F|$ that appears in the integral transformation formula.
|
inline |
Compute the transpose of the inverse Jacobian matrix of the transformation from the reference element into the world space.
Referenced by Dune::MockGeometry< ctype, mydim, coorddim >::jacobianInverseTransposed().
|
inline |
Compute the transpose of the Jacobian matrix of the transformation from the reference element into the world space.
Referenced by Dune::MockGeometry< ctype, mydim, coorddim >::jacobianTransposed().
|
inline |
Map global to local coordinates.
|
inline |
bool cast
Like a pointer, a BasicGeometry casts to true if and only if it is properly initialized. If a geometry casts to false, none of the interface methods may be called.
|
inline |
Assignment from other BasicGeometry.
|
inline |
Return the topological type of this geometry.
Referenced by Dune::GenericGeometry::BasicGeometry< mydim, GenericGeometry::DefaultGeometryTraits< ctype, coorddim, coorddim > >::BasicGeometry().
|
inline |
Return the volume of the element.
Be friend with other instantiations of the same class.
|
static |
The dimension of the world space of this geometry.
|
static |
The dimension of the parameter space of this geometry.
1.8.7