3 #ifndef DUNE_GRID_ALBERTAGRID_GEOMETRYREFERENCE_HH 4 #define DUNE_GRID_ALBERTAGRID_GEOMETRYREFERENCE_HH 10 #include <dune/common/typetraits.hh> 12 #include <dune/geometry/type.hh> 22 template<
class Implementation >
31 typedef typename Implementation::ctype
ctype;
48 GlobalCoordinate
corner (
int i )
const {
return impl().corner( i ); }
49 GlobalCoordinate
center ()
const {
return impl().center(); }
51 GlobalCoordinate
global (
const LocalCoordinate &
local )
const 53 return impl().global( local );
56 LocalCoordinate
local (
const GlobalCoordinate &
global )
const 58 return impl().local( global );
63 return impl().integrationElement( local );
70 return impl().jacobianTransposed( local );
75 return impl().jacobianInverseTransposed( local );
78 const Implementation &
impl ()
const {
return *impl_; }
81 const Implementation *impl_;
88 template<
int mydim,
int cdim,
class Gr
id >
90 :
public GeometryReference< typename remove_const< Grid >::type::Traits::template Codim< remove_const< Grid >::type::dimension - mydim >::LocalGeometryImpl >
92 typedef typename remove_const< Grid >::type::Traits::template Codim< remove_const< Grid >::type::dimension - mydim >::LocalGeometryImpl Implementation;
105 template<
class Implementation >
108 template<
class Implementation >
113 #endif // #ifndef DUNE_GRID_ALBERTAGRID_GEOMETRYREFERENCE_HH const Implementation & impl() const
Definition: geometryreference.hh:78
static const int coorddimension
Definition: geometryreference.hh:29
JacobianTransposed jacobianTransposed(const LocalCoordinate &local) const
Definition: geometryreference.hh:68
Wrapper and interface classes for element geometries.
ctype volume() const
Definition: geometryreference.hh:66
GeometryType
Type representing VTK's entity geometry types.
Definition: common.hh:178
Definition: geometryreference.hh:23
GlobalCoordinate corner(int i) const
Definition: geometryreference.hh:48
Implementation::GlobalCoordinate GlobalCoordinate
Definition: geometryreference.hh:34
Implementation::LocalCoordinate LocalCoordinate
Definition: geometryreference.hh:33
Definition: geometryreference.hh:89
Implementation::JacobianInverseTransposed JacobianInverseTransposed
Definition: geometryreference.hh:36
GlobalCoordinate center() const
Definition: geometryreference.hh:49
Implementation::JacobianTransposed JacobianTransposed
Definition: geometryreference.hh:37
Implementation::ctype ctype
Definition: geometryreference.hh:31
bool affine() const
Definition: geometryreference.hh:45
GlobalCoordinate global(const LocalCoordinate &local) const
Definition: geometryreference.hh:51
static const int mydimension
Definition: geometryreference.hh:28
Include standard header files.
Definition: agrid.hh:59
JacobianInverseTransposed jacobianInverseTransposed(const LocalCoordinate &local) const
Definition: geometryreference.hh:73
LocalGeometryReference(const Implementation &impl)
Definition: geometryreference.hh:95
ctype integrationElement(const LocalCoordinate &local) const
Definition: geometryreference.hh:61
int corners() const
Definition: geometryreference.hh:47
LocalCoordinate local(const GlobalCoordinate &global) const
Definition: geometryreference.hh:56
GeometryType type() const
Definition: geometryreference.hh:43
GeometryReference(const Implementation &impl)
Definition: geometryreference.hh:39