dune-geometry 2.8.0
Loading...
Searching...
No Matches
virtualrefinement.hh
Go to the documentation of this file.
1// -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2// vi: set et ts=4 sw=2 sts=2:
3#ifndef DUNE_GEOMETRY_VIRTUALREFINEMENT_HH
4#define DUNE_GEOMETRY_VIRTUALREFINEMENT_HH
5
266#include <vector>
267
268#include <dune/common/fvector.hh>
269
270#include "refinement.hh"
271#include "type.hh"
272
273namespace Dune
274{
275 // //////////////////////////////////////////
276 //
277 // The virtual base class and its iterators
278 //
279
280 //
281 // Refinement
282 //
283
290 template<int dimension, class CoordType>
371
373 template<int dimension, class CoordType>
374 template<int codimension>
375 struct VirtualRefinement<dimension, CoordType>::Codim
376 {
377 class SubEntityIterator;
378 };
379
380 // ////////////////////////
381 //
382 // The refinement builder
383 //
384
385 template<int dimension, class CoordType>
388
389} // namespace Dune
390
391#include "virtualrefinement.cc"
392
393#endif // DUNE_GEOMETRY_VIRTUALREFINEMENT_HH
A unique label for each type of element that can occur in a grid.
This file simply includes all Refinement implementations so you don't have to do them separately.
This file contains the virtual wrapper around refinement.
VirtualRefinement< dimension, CoordType > & buildRefinement(GeometryType geometryType, GeometryType coerceTo)
return a reference to the VirtualRefinement according to the parameters
Definition virtualrefinement.cc:501
Holds the number of refined intervals per axis needed for virtual and static refinement.
Definition base.cc:92
Unique label for each type of entities that can occur in DUNE grids.
Definition type.hh:124
Definition virtualrefinement.cc:229
VirtualRefinement base class.
Definition virtualrefinement.hh:292
SubEntityIteratorBack< dimension > VertexIteratorBack
Definition virtualrefinement.hh:316
virtual ElementIteratorBack * eEndBack(Dune::RefinementIntervals tag) const =0
VertexIterator vBegin(Dune::RefinementIntervals tag) const
Get an VertexIterator.
Definition virtualrefinement.cc:36
ElementIterator eBegin(Dune::RefinementIntervals tag) const
Get an ElementIterator.
Definition virtualrefinement.cc:52
virtual int nElements(Dune::RefinementIntervals tag) const =0
Get the number of Elements.
ElementIterator eEnd(Dune::RefinementIntervals tag) const
Get an ElementIterator.
Definition virtualrefinement.cc:60
Codim< 0 >::SubEntityIterator ElementIterator
The ElementIterator of the VirtualRefinement.
Definition virtualrefinement.hh:299
virtual ~VirtualRefinement()
Destructor.
Definition virtualrefinement.hh:362
VertexIterator vEnd(Dune::RefinementIntervals tag) const
Get an VertexIterator.
Definition virtualrefinement.cc:44
FieldVector< CoordType, dimension > CoordVector
The CoordVector of the VirtualRefinement.
Definition virtualrefinement.hh:306
virtual int nVertices(Dune::RefinementIntervals tag) const =0
Get the number of Vertices.
std::vector< int > IndexVector
The IndexVector of the VirtualRefinement.
Definition virtualrefinement.hh:312
Codim< dimension >::SubEntityIterator VertexIterator
The VertexIterator of the VirtualRefinement.
Definition virtualrefinement.hh:297
virtual VertexIteratorBack * vEndBack(Dune::RefinementIntervals tag) const =0
SubEntityIteratorBack< 0 > ElementIteratorBack
Definition virtualrefinement.hh:317
virtual ElementIteratorBack * eBeginBack(Dune::RefinementIntervals tag) const =0
virtual VertexIteratorBack * vBeginBack(Dune::RefinementIntervals tag) const =0
codim database of VirtualRefinement
Definition virtualrefinement.hh:376