2 #ifndef DUNE_PDELAB_GEOMETRYWRAPPER_HH
3 #define DUNE_PDELAB_GEOMETRYWRAPPER_HH
5 #include <dune/common/fvector.hh>
60 const unsigned int index;
71 typedef typename Geometry::ctype
ctype;
77 enum { coorddimension=Geometry::coorddimension };
81 : i(i_), index(index_)
93 const bool is_boundary = i.boundary();
94 return 0 - int(is_boundary);
120 return i.boundaryId();
138 return i.geometryInInside();
150 return i.geometryInOutside();
166 return i.indexInInside ();
172 return i.indexInOutside ();
179 Dune::FieldVector<ctype, coorddimension>
outerNormal (
const Dune::FieldVector<ctype, dimension-1>& local)
const
181 return i.outerNormal(local);
190 Dune::FieldVector<ctype, coorddimension>
integrationOuterNormal (
const Dune::FieldVector<ctype, dimension-1>& local)
const
192 return i.integrationOuterNormal(local);
200 Dune::FieldVector<ctype, coorddimension>
unitOuterNormal (
const Dune::FieldVector<ctype, dimension-1>& local)
const
202 return i.unitOuterNormal(local);
212 return i.centerUnitOuterNormal();
221 typename std::conditional<
223 decltype(i.inside()),
240 DUNE_THROW(Dune::Exception,
"This should never be called.");
253 typename std::conditional<
255 decltype(i.inside()),
EntityPointer insideHostEntity() const
return EntityPointer to the Entity on the inside of this intersection. That is the Entity where we st...
Definition: geometrywrapper.hh:238
Dune::FieldVector< ctype, coorddimension > unitOuterNormal(const Dune::FieldVector< ctype, dimension-1 > &local) const
Return unit outer normal (length == 1)
Definition: geometrywrapper.hh:200
int boundaryId() const
Identifier for boundary segment from macro grid.
Definition: geometrywrapper.hh:118
Geometry geometry() const
Definition: geometrywrapper.hh:29
Definition: geometrywrapper.hh:73
unsigned int intersectionIndex() const
Definition: geometrywrapper.hh:273
Entity outside() const
return EntityPointer to the Entity on the outside of this intersection. That is the neighboring Entit...
Definition: geometrywrapper.hh:262
Wrap element.
Definition: geometrywrapper.hh:15
static const unsigned int value
Definition: gridfunctionspace/tags.hh:175
int insideDomainIndex() const
Definition: geometrywrapper.hh:85
bool boundary() const
return true if intersection is with interior or exterior boundary (see the cases above) ...
Definition: geometrywrapper.hh:98
ElementGeometry(const E &e_)
Definition: geometrywrapper.hh:24
LocalGeometry geometryInOutside() const
geometrical information about this intersection in local coordinates of the outside() entity...
Definition: geometrywrapper.hh:148
Geometry::ctype ctype
Definition: geometrywrapper.hh:71
int indexInInside() const
Local number of codim 1 entity in the inside() Entity where intersection is contained in...
Definition: geometrywrapper.hh:164
const I & intersection() const
Definition: geometrywrapper.hh:268
const Entity & entity() const
Definition: geometrywrapper.hh:35
E Entity
Definition: geometrywrapper.hh:21
E::Geometry Geometry
Definition: geometrywrapper.hh:19
int outsideDomainIndex() const
Definition: geometrywrapper.hh:91
Dune::FieldVector< ctype, coorddimension > centerUnitOuterNormal() const
Return unit outer normal (length == 1)
Definition: geometrywrapper.hh:210
Dune::FieldVector< ctype, coorddimension > integrationOuterNormal(const Dune::FieldVector< ctype, dimension-1 > &local) const
return outer normal scaled with the integration element
Definition: geometrywrapper.hh:190
Definition: adaptivity.hh:27
static const int dimensionworld
Definition: geometrywrapper.hh:75
bool neighbor() const
return true if intersection is shared with another element.
Definition: geometrywrapper.hh:124
Wrap intersection.
Definition: geometrywrapper.hh:56
const Entity & hostEntity() const
Definition: geometrywrapper.hh:41
Geometry geometry() const
geometrical information about this intersection in global coordinates.
Definition: geometrywrapper.hh:158
I::Geometry Geometry
Definition: geometrywrapper.hh:63
Definition: geometrywrapper.hh:77
IntersectionGeometry(const I &i_, unsigned int index_)
Definition: geometrywrapper.hh:80
LocalGeometry geometryInInside() const
geometrical information about this intersection in local coordinates of the inside() entity...
Definition: geometrywrapper.hh:136
int indexInOutside() const
Local number of codim 1 entity in outside() Entity where intersection is contained in...
Definition: geometrywrapper.hh:170
Dune::FieldVector< ctype, coorddimension > outerNormal(const Dune::FieldVector< ctype, dimension-1 > &local) const
Return an outer normal (length not necessarily 1)
Definition: geometrywrapper.hh:179
I::LocalGeometry LocalGeometry
Definition: geometrywrapper.hh:65
I::EntityPointer EntityPointer
Definition: geometrywrapper.hh:69
I::Entity Entity
Definition: geometrywrapper.hh:67
Entity inside() const
return EntityPointer to the Entity on the inside of this intersection. That is the Entity where we st...
Definition: geometrywrapper.hh:230