1 #ifndef DUNE_FEM_INTEGRATOR_HH 2 #define DUNE_FEM_INTEGRATOR_HH 27 template<
class Quadrature >
35 typedef typename QuadratureType :: EntityType
EntityType;
70 template<
class Function >
77 typedef typename Dune::FieldTraits< RangeFieldType >::real_type RealType;
79 const GeometryType &geometry = entity.geometry();
80 const QuadratureType quadrature( entity, order_ );
82 const unsigned int numQuadraturePoints = quadrature.
nop();
83 for(
unsigned int pt = 0; pt < numQuadraturePoints; ++pt )
87 function.evaluate( quadrature[ pt ], phi );
91 = geometry.integrationElement( quadrature.
point( pt ) )
94 ret.axpy( weight, phi );
114 template<
class Function >
128 #endif // #ifndef DUNE_FEM_INTEGRATOR_HH EntityType::Geometry GeometryType
Definition: integrator.hh:38
QuadratureType::EntityType EntityType
type of the entity
Definition: integrator.hh:35
int nop() const
obtain the number of integration points
Definition: quadrature.hh:226
const FieldType & weight(size_t i) const
obtain weight of i-th integration point
Definition: quadrature.hh:425
Integrator(unsigned int order)
constructor
Definition: integrator.hh:49
Quadrature QuadratureType
type of quadrature to use
Definition: integrator.hh:32
FunctionSpaceType::RangeType RangeType
range type
Definition: function.hh:68
void integrateAdd(const EntityType &entity, const Function &function, typename Function::RangeType &ret) const
add the integral over an entity to a variable
Definition: integrator.hh:71
Definition: coordinate.hh:4
const CoordinateType & point(size_t i) const
obtain coordinates of i-th integration point
Definition: quadrature.hh:242
integrator for arbitrary functions providing evaluate
Definition: integrator.hh:28
FunctionSpaceType::RangeFieldType RangeFieldType
field type of range
Definition: function.hh:64
Abstract class representing a function.
Definition: function.hh:43
void integrate(const EntityType &entity, const Function &function, typename Function::RangeType &ret) const
integrate a function over an entity
Definition: integrator.hh:115
const int order_
Definition: integrator.hh:41
actual interface class for quadratures
Definition: quadrature.hh:320