diff --git a/dune/fem-dg/operator/limiter/limitpass.hh b/dune/fem-dg/operator/limiter/limitpass.hh index fb93b13c75a465f00cb995dabf2e028ed3c1840c..ff84ad05b8c9de2191bd356b28e34c7a30f75a94 100644 --- a/dune/fem-dg/operator/limiter/limitpass.hh +++ b/dune/fem-dg/operator/limiter/limitpass.hh @@ -295,6 +295,14 @@ namespace Fem RangeType value_; + template <class Quadrature, class RangeArray> + void evaluateQuadrature(const Quadrature& quadrature, RangeArray &values) const + { + const int nop = quadrature.nop(); + values.resize( nop ); + std::fill( values.begin(), values.end(), value_ ); + } + template <class Point> void evaluate(const Point &x, typename Base::RangeType &ret) const { @@ -317,6 +325,17 @@ namespace Fem using Base::Base; using Base::value_; + template <class Quadrature, class RangeArray> + void evaluateQuadrature(const Quadrature& quadrature, RangeArray &values) const + { + const int nop = quadrature.nop(); + values.resize( nop ); + for( int qp = 0; qp<nop; ++qp ) + { + evaluate( quadrature[ qp ], values[ qp ] ); + } + } + template <class Point> void evaluate(const Point &x, RangeType &ret) const {