Base class for the finite volume geometry vector for box schemes in the context of coupled models where the coupling occurs across the element facets. This builds up the sub control volumes and sub control volume faces.
More...
template<class Scalar, class GV, class Traits>
class Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >
Base class for the finite volume geometry vector for box schemes in the context of coupled models where the coupling occurs across the element facets. This builds up the sub control volumes and sub control volume faces.
- Note
- This class is specialized for versions with and without caching the fv geometries on the grid view
|
| using | LocalView = typename Traits::template LocalView<ThisType, true> |
| | export the type of the fv element geometry (the local view type)
|
| using | SubControlVolume = typename Traits::SubControlVolume |
| | export the type of sub control volume
|
| using | SubControlVolumeFace = typename Traits::SubControlVolumeFace |
| | export the type of sub control volume
|
| using | DofMapper = typename Traits::VertexMapper |
| | export dof mapper type
|
| using | FeCache = Dune::PQkLocalFiniteElementCache<CoordScalar, Scalar, dim, 1> |
| | export the finite element cache type
|
| using | GridView = GV |
| | export the grid view type
|
| using | Grid = typename GV::Grid |
| | export the grid type
|
| using | GlobalCoordinate = typename Element::Geometry::GlobalCoordinate |
| | export the global coordinate type
|
| using | ElementMapper = typename Traits::ElementMapper |
| | export the element mapper type
|
| using | VertexMapper = typename Traits::VertexMapper |
| | export the vertex mapper type
|
|
| | BoxFacetCouplingFVGridGeometry (const GridView &gridView) |
| | Constructor.
|
| const DofMapper & | dofMapper () const |
| | the vertex mapper is the dofMapper
|
| std::size_t | numScv () const |
| | The total number of sub control volumes.
|
| std::size_t | numScvf () const |
| | The total number of sun control volume faces.
|
| std::size_t | numBoundaryScvf () const |
| std::size_t | numDofs () const |
| | The total number of degrees of freedom.
|
| template<class FacetGridView, class CodimOneGridAdapter> |
| void | update (const FacetGridView &facetGridView, const CodimOneGridAdapter &codimOneGridAdapter, bool verbose=false) |
| | update all fvElementGeometries (do this again after grid adaption)
|
| const FeCache & | feCache () const |
| | The finite element cache for creating local FE bases.
|
| const std::vector< SubControlVolume > & | scvs (GridIndexType eIdx) const |
| | Get the local scvs for an element.
|
| const std::vector< SubControlVolumeFace > & | scvfs (GridIndexType eIdx) const |
| | Get the local scvfs for an element.
|
| bool | dofOnBoundary (GridIndexType dofIdx) const |
| | If a d.o.f. is on the boundary.
|
| bool | dofOnInteriorBoundary (GridIndexType dofIdx) const |
| | If a d.o.f. is on an interior boundary.
|
| bool | dofOnPeriodicBoundary (GridIndexType dofIdx) const |
| | Periodic boundaries are not supported for the box facet coupling scheme.
|
| GridIndexType | periodicallyMappedDof (GridIndexType dofIdx) const |
| | The index of the vertex / d.o.f. on the other side of the periodic boundary.
|
| std::unordered_map< GridIndexType, GridIndexType > | periodicVertexMap () const |
| | Returns the map between dofs across periodic boundaries.
|
| void | update () |
| | Update all fvElementGeometries (do this again after grid adaption).
|
| const GridView & | gridView () const |
| | Return the gridView this grid geometry object lives on.
|
| const VertexMapper & | vertexMapper () const |
| | Returns the mapper for vertices to indices for constant grids.
|
| VertexMapper & | vertexMapper () |
| | Returns the mapper for vertices to indices for possibly adaptive grids.
|
| const ElementMapper & | elementMapper () const |
| | Returns the mapper for elements to indices for constant grids.
|
| ElementMapper & | elementMapper () |
| | Returns the mapper for elements to indices for possibly adaptive grids.
|
| const BoundingBoxTree & | boundingBoxTree () const |
| | Returns the bounding box tree of the grid.
|
| const ElementMap & | elementMap () const |
| | Returns the element index to element map.
|
| Element | element (GridIndexType eIdx) const |
| | Get an element from a global element index.
|
| const GlobalCoordinate & | bBoxMin () const |
| | The coordinate of the corner of the GridView's bounding box with the smallest values.
|
| const GlobalCoordinate & | bBoxMax () const |
| | The coordinate of the corner of the GridView's bounding box with the largest values.
|
| bool | isPeriodic () const |
| | Returns if the grid geometry is periodic (at all).
|
| void | setPeriodic (bool value=true) |
| | Set the periodicity of the grid geometry.
|
template<class GV, class Traits>
Update all fvElementGeometries (do this again after grid adaption).
Update the mappers
Compute the bouding box of the entire domain, for e.g. setting boundary conditions
reset bounding box tree and the element map until requested the next time