dune-alugrid 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Dune::ALU3dGridGeometry< mydim, cdim, GridImp > Class Template Reference

#include <dune/alugrid/3d/geometry.hh>

Inheritance diagram for Dune::ALU3dGridGeometry< mydim, cdim, GridImp >:
Inheritance graph

Public Types

enum  { corners_ = (elementType == hexa) ? StaticPower<2,(mydim> -1) ? mydim : 0 >::power : mydim+1 }
 
typedef ALU3dImplTraitsType::IMPLElementType IMPLElementType
 
typedef ALU3dImplTraitsType::GEOFaceType GEOFaceType
 
typedef ALU3dImplTraitsType::GEOEdgeType GEOEdgeType
 
typedef ALU3dImplTraitsType::GEOVertexType GEOVertexType
 
typedef ALU3dImplTraitsType::HFaceType HFaceType
 
typedef ALU3dImplTraitsType::HEdgeType HEdgeType
 
typedef ALU3dImplTraitsType::VertexType VertexType
 
typedef ElementTopologyMapping< elementType > ElementTopo
 
typedef FaceTopologyMapping< elementType > FaceTopo
 
typedef MyALUGridGeometryImplementation< cdim >::template GeometryImpl< 0, mydim, elementType > GeometryImplType
 
typedef GridImp::ctype ctype
 
typedef FieldVector< ctype, mydim > LocalCoordinate
 type of local coordinates More...
 
typedef FieldVector< ctype, cdim > GlobalCoordinate
 type of the global coordinates More...
 
typedef FieldMatrix< ctype, cdim, mydim > JacobianInverseTransposed
 type of jacobian inverse transposed More...
 
typedef FieldMatrix< ctype, mydim, cdim > JacobianTransposed
 type of jacobian transposed More...
 
typedef FieldMatrix< ctype, GridImp::dimension==3 ? EntityCount< elementType >::numVerticesPerFace :2, cdim > FaceCoordinatesType
 

Public Member Functions

GeometryType type () const
 
int corners () const
 return the number of corners of this element. Corners are numbered 0..n-1 More...
 
GlobalCoordinate corner (int i) const
 access to coordinates of corners. Index is the number of the corner More...
 
GlobalCoordinate global (const LocalCoordinate &local) const
 
 LocalCoordinate (const GlobalCoordinate &global) const
 
ctype integrationElement (const LocalCoordinate &local) const
 A(l) , see grid.hh. More...
 
const JacobianInverseTransposedjacobianInverseTransposed (const LocalCoordinate &local) const
 
const JacobianTransposedjacobianTransposed (const LocalCoordinate &local) const
 jacobian transposed More...
 
bool affine () const
 returns true if mapping is affine More...
 
ctype volume () const
 returns volume of geometry More...
 
bool buildGeom (const IMPLElementType &item)
 Methods that not belong to the Interface, but have to be public. More...
 
bool buildGeom (const HFaceType &item, int twist)
 
bool buildGeom (const HEdgeType &item, int twist)
 
bool buildGeom (const VertexType &item, int twist)
 
bool buildGeom (const FaceCoordinatesType &coords)
 
template<class coord_t >
bool buildGeom (const coord_t &p0, const coord_t &p1, const coord_t &p2, const coord_t &p3)
 
template<class coord_t >
bool buildGeom (const coord_t &p0, const coord_t &p1, const coord_t &p2)
 
template<class coord_t >
bool buildGeom (const coord_t &p0, const coord_t &p1)
 
template<class Geometry >
bool buildGeomInFather (const Geometry &fatherGeom, const Geometry &myGeom)
 build geometry of local coordinates relative to father More...
 
void print (std::ostream &ss) const
 
void invalidate ()
 invalidate geometry implementation to avoid errors More...
 
bool valid () const
 invalidate geometry implementation to avoid errors More...
 
template<class Geometry >
alu_inline bool buildGeomInFather (const Geometry &fatherGeom, const Geometry &myGeom)
 
template<class coord_t >
alu_inline bool buildGeom (const coord_t &p0, const coord_t &p1, const coord_t &p2, const coord_t &p3)
 
template<class coord_t >
alu_inline bool buildGeom (const coord_t &p0, const coord_t &p1, const coord_t &p2)
 
template<class coord_t >
alu_inline bool buildGeom (const coord_t &p0, const coord_t &p1)
 

Protected Member Functions

GeometryImplTypegeoImpl () const
 

Protected Attributes

ALU3DSPACE SharedPointer< GeometryImplTypegeoImplPtr_
 

Member Typedef Documentation

◆ ctype

template<int mydim, int cdim, class GridImp >
typedef GridImp::ctype Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::ctype

◆ ElementTopo

template<int mydim, int cdim, class GridImp >
typedef ElementTopologyMapping<elementType> Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::ElementTopo

◆ FaceCoordinatesType

template<int mydim, int cdim, class GridImp >
typedef FieldMatrix<ctype, GridImp::dimension == 3 ? EntityCount< elementType >:: numVerticesPerFace : 2 , cdim> Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::FaceCoordinatesType

◆ FaceTopo

template<int mydim, int cdim, class GridImp >
typedef FaceTopologyMapping<elementType> Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::FaceTopo

◆ GEOEdgeType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::GEOEdgeType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::GEOEdgeType

◆ GEOFaceType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::GEOFaceType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::GEOFaceType

◆ GeometryImplType

template<int mydim, int cdim, class GridImp >
typedef MyALUGridGeometryImplementation<cdim>::template GeometryImpl<0, mydim, elementType > Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::GeometryImplType

◆ GEOVertexType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::GEOVertexType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::GEOVertexType

◆ GlobalCoordinate

template<int mydim, int cdim, class GridImp >
typedef FieldVector<ctype, cdim > Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::GlobalCoordinate

type of the global coordinates

◆ HEdgeType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::HEdgeType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::HEdgeType

◆ HFaceType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::HFaceType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::HFaceType

◆ IMPLElementType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::IMPLElementType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::IMPLElementType

◆ JacobianInverseTransposed

template<int mydim, int cdim, class GridImp >
typedef FieldMatrix<ctype,cdim,mydim> Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::JacobianInverseTransposed

type of jacobian inverse transposed

◆ JacobianTransposed

template<int mydim, int cdim, class GridImp >
typedef FieldMatrix< ctype, mydim, cdim > Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::JacobianTransposed

type of jacobian transposed

◆ LocalCoordinate

template<int mydim, int cdim, class GridImp >
typedef FieldVector<ctype, mydim> Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::LocalCoordinate

type of local coordinates

◆ VertexType

template<int mydim, int cdim, class GridImp >
typedef ALU3dImplTraitsType::VertexType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::VertexType

Member Enumeration Documentation

◆ anonymous enum

template<int mydim, int cdim, class GridImp >
anonymous enum
Enumerator
corners_ 

Member Function Documentation

◆ affine()

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::affine

returns true if mapping is affine

◆ buildGeom() [1/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1 
)

◆ buildGeom() [2/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1 
)

◆ buildGeom() [3/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1,
const coord_t &  p2 
)

◆ buildGeom() [4/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1,
const coord_t &  p2 
)

◆ buildGeom() [5/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1,
const coord_t &  p2,
const coord_t &  p3 
)

◆ buildGeom() [6/11]

template<int mydim, int cdim, class GridImp >
template<class coord_t >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const coord_t &  p0,
const coord_t &  p1,
const coord_t &  p2,
const coord_t &  p3 
)

◆ buildGeom() [7/11]

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const FaceCoordinatesType coords)

◆ buildGeom() [8/11]

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const HEdgeType item,
int  twist 
)

◆ buildGeom() [9/11]

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const HFaceType item,
int  twist 
)

◆ buildGeom() [10/11]

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const IMPLElementType item)

Methods that not belong to the Interface, but have to be public.

generate the geometry out of a given ALU3dGridElement

◆ buildGeom() [11/11]

template<int mydim, int cdim, class GridImp >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeom ( const VertexType item,
int  twist 
)

◆ buildGeomInFather() [1/2]

template<int mydim, int cdim, class GridImp >
template<class Geometry >
bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeomInFather ( const Geometry &  fatherGeom,
const Geometry &  myGeom 
)

build geometry of local coordinates relative to father

◆ buildGeomInFather() [2/2]

template<int mydim, int cdim, class GridImp >
template<class Geometry >
alu_inline bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::buildGeomInFather ( const Geometry &  fatherGeom,
const Geometry &  myGeom 
)

◆ corner()

template<int mydim, int cdim, class GridImp >
alu_inline ALU3dGridGeometry< mydim, cdim, GridImp >::GlobalCoordinate Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::corner ( int  i) const

access to coordinates of corners. Index is the number of the corner

◆ corners()

template<int mydim, int cdim, class GridImp >
alu_inline int Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::corners

return the number of corners of this element. Corners are numbered 0..n-1

◆ geoImpl()

template<int mydim, int cdim, class GridImp >
GeometryImplType & Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::geoImpl ( ) const
inlineprotected

◆ global()

template<int mydim, int cdim, class GridImp >
alu_inline ALU3dGridGeometry< mydim, cdim, GridImp >::GlobalCoordinate Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::global ( const LocalCoordinate local) const

maps a local coordinate within reference element to global coordinate in element

◆ integrationElement()

template<int mydim, int cdim, class GridImp >
alu_inline ALU3dGridGeometry< mydim, cdim, GridImp >::ctype Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::integrationElement ( const LocalCoordinate local) const

A(l) , see grid.hh.

◆ invalidate()

template<int mydim, int cdim, class GridImp >
void Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::invalidate ( )
inline

invalidate geometry implementation to avoid errors

◆ jacobianInverseTransposed()

template<int mydim, int cdim, class GridImp >
alu_inline const ALU3dGridGeometry< mydim, cdim, GridImp >::JacobianInverseTransposed & Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::jacobianInverseTransposed ( const LocalCoordinate local) const

can only be called for dim=dimworld! (Trivially true, since there is no other specialization...)

◆ jacobianTransposed()

template<int mydim, int cdim, class GridImp >
alu_inline const ALU3dGridGeometry< mydim, cdim, GridImp >::JacobianTransposed & Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::jacobianTransposed ( const LocalCoordinate local) const

jacobian transposed

◆ LocalCoordinate()

template<int mydim, int cdim, class GridImp >
Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::LocalCoordinate ( const GlobalCoordinate global) const

maps a global coordinate within the element to a local coordinate in its reference element

◆ print()

template<int mydim, int cdim, class GridImp >
alu_inline void Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::print ( std::ostream &  ss) const

print internal data no interface method

◆ type()

template<int mydim, int cdim, class GridImp >
alu_inline GeometryType Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::type

return the element type identifier line , triangle or tetrahedron, depends on dim

◆ valid()

template<int mydim, int cdim, class GridImp >
bool Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::valid ( ) const
inline

invalidate geometry implementation to avoid errors

◆ volume()

template<int mydim, int cdim, class GridImp >
alu_inline ALU3dGridGeometry< mydim, cdim, GridImp >::ctype Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::volume

returns volume of geometry

Member Data Documentation

◆ geoImplPtr_

template<int mydim, int cdim, class GridImp >
ALU3DSPACE SharedPointer< GeometryImplType > Dune::ALU3dGridGeometry< mydim, cdim, GridImp >::geoImplPtr_
mutableprotected

The documentation for this class was generated from the following files: