1#ifndef DUNE_FEM_ELEMENTPOINTLIST_HH
2#define DUNE_FEM_ELEMENTPOINTLIST_HH
48 template<
class Gr
idPartImp,
int codim,
class IntegrationTraits >
54 template<
class Gr
idPartImp,
class IntegrationTraits >
76 using Base::localPoint;
85 :
Base( geometry, quadKey )
103 return localPoint( i );
110 template<
class Gr
idPartImp,
class IntegrationTraits >
121 static const int dimension = Base::dimension;
147 using Base::localPoint;
148 using Base::elementGeometry;
165 const typename Base :: Side side )
166 :
Base( getPointList( intersection, quadKey, side ) ),
167 referenceGeometry_( side ==
Base::INSIDE ? intersection.geometryInInside() : intersection.geometryInOutside() )
182 dummy_ = referenceGeometry_.global( localPoint( i ) );
186 using Base::localFaceIndex;
190 const typename Base :: Side side )
195 return Base( TwistUtilityType::elementGeometry( intersection,
true ),
196 intersection.type(), intersection.indexInInside(), order );
199 return Base( TwistUtilityType::elementGeometry( intersection,
false ),
200 intersection.type(), intersection.indexInOutside(), order );
203 DUNE_THROW( InvalidStateException,
"ElementIntegrationPointList: side must either be INSIDE or OUTSIDE." );
208 typedef typename IntersectionIteratorType::Intersection::LocalGeometry ReferenceGeometry;
210 ReferenceGeometry referenceGeometry_;
211 mutable CoordinateType dummy_;
Definition: bindguard.hh:11
integration point list on the codim-0 reference element
Definition: elementpointlist.hh:49
constructor
Definition: elementpointlist.hh:57
QuadraturePointIterator< This > IteratorType
type of iterator
Definition: elementpointlist.hh:71
ElementIntegrationPointList(const IntegrationPointListType &ipList)
Definition: elementpointlist.hh:88
ElementIntegrationPointList(const GeometryType &geometry, const QuadratureKeyType &quadKey)
constructor
Definition: elementpointlist.hh:84
IteratorType end() const noexcept
Definition: elementpointlist.hh:98
const CoordinateType & point(const size_t i) const
obtain coordinates of i-th integration point
Definition: elementpointlist.hh:101
Base::CoordinateType CoordinateType
type for coordinates in the codim-0 reference element
Definition: elementpointlist.hh:63
IteratorType begin() const noexcept
Definition: elementpointlist.hh:97
Base::IntegrationPointListType IntegrationPointListType
Definition: elementpointlist.hh:73
QuadraturePointWrapper< This > QuadraturePointWrapperType
type of the quadrature point
Definition: elementpointlist.hh:69
Base::QuadratureKeyType QuadratureKeyType
type of quadrature identifier on user side (default is the order of quadrature)
Definition: elementpointlist.hh:66
constructor
Definition: elementpointlist.hh:113
This NonConformingQuadratureType
type quadrature for use on non-conforming intersections
Definition: elementpointlist.hh:139
Base::QuadratureKeyType QuadratureKeyType
type of quadrature identifier on user side (default is the order of quadrature)
Definition: elementpointlist.hh:127
IntersectionIteratorType::Intersection IntersectionType
Definition: elementpointlist.hh:131
IntersectionIteratorType IntersectionIterator
Definition: elementpointlist.hh:144
Base getPointList(const IntersectionType &intersection, const int order, const typename Base ::Side side)
Definition: elementpointlist.hh:189
QuadraturePointIterator< This > IteratorType
type of iterator
Definition: elementpointlist.hh:136
Base::CoordinateType CoordinateType
Type of coordinates in codim-0 reference element.
Definition: elementpointlist.hh:124
const CoordinateType & point(size_t i) const
obtain coordinates of i-th integration point
Definition: elementpointlist.hh:180
QuadraturePointWrapper< This > QuadraturePointWrapperType
type of the quadrature point
Definition: elementpointlist.hh:134
IteratorType begin() const noexcept
Definition: elementpointlist.hh:175
GridPartImp GridPartType
type of the grid partition
Definition: elementpointlist.hh:119
GridPartType::IntersectionIteratorType IntersectionIteratorType
Type of the intersection iterator.
Definition: elementpointlist.hh:130
ElementIntegrationPointList(const GridPartType &gridPart, const IntersectionType &intersection, const QuadratureKeyType &quadKey, const typename Base ::Side side)
constructor
Definition: elementpointlist.hh:162
GridPartType::TwistUtilityType TwistUtilityType
Definition: elementpointlist.hh:143
IteratorType end() const noexcept
Definition: elementpointlist.hh:176
ElementPointListBase.
Definition: elementpointlistbase.hh:189
IntegrationTraits::CoordinateType CoordinateType
Definition: elementpointlistbase.hh:211
IntegrationPointListType::QuadratureKeyType QuadratureKeyType
Definition: elementpointlistbase.hh:214
Definition: elementpointlistbase.hh:23
IntegrationPointListType::QuadratureKeyType QuadratureKeyType
Definition: elementpointlistbase.hh:48
IntegrationTraits::CoordinateType CoordinateType
Definition: elementpointlistbase.hh:45
wrapper for a (Quadrature,int) pair
Definition: quadrature.hh:43
iterator over quadrature points
Definition: quadrature.hh:106