42        auto& refinement = Dune::buildRefinement<dim, ct>(type, type);
 
   43        const auto tag = Dune::refinementLevels(levels);
 
   46        const auto numVertices = refinement.nVertices(tag);
 
   47        std::vector<Dune::FieldVector<ct, dim>> points; points.reserve(numVertices);
 
   48        auto vIt = refinement.vBegin(tag);
 
   49        const auto vItEnd = refinement.vEnd(tag);
 
   50        for (; vIt != vItEnd; ++vIt)
 
   51            points.emplace_back(vIt.coords());
 
   54        const auto numElements = refinement.nElements(tag);
 
   55        this->reserve(numElements);
 
   56        auto eIt = refinement.eBegin(tag);
 
   57        const auto eItEnd = refinement.eEnd(tag);
 
   58        for (; eIt != eItEnd; ++eIt)
 
   61            const auto weight = computeVolume_(type, points, eIt.vertexIndices());
 
   62            this->emplace_back(eIt.coords(), weight);
 
 
   68    ct computeVolume_(Dune::GeometryType t, 
const std::vector<Dune::FieldVector<ct, dim>>& points, 
const VertexIndices& indices)
 const