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...
#include <dumux/multidomain/facet/box/fvgridgeometry.hh>
Public Types | |
using | DiscretizationMethod = DiscretizationMethods::Box |
export the discretization method this geometry belongs to | |
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 | Extrusion = Extrusion_t< Traits > |
export the type of extrusion | |
using | DofMapper = typename Traits::VertexMapper |
export dof mapper type | |
using | FeCache = Dune::LagrangeLocalFiniteElementCache< CoordScalar, Scalar, dim, 1 > |
export the finite element cache type | |
using | GridView = GV |
export the grid view type | |
using | GeometryHelper = Detail::BoxFacetCouplingGeometryHelper_t< GV, Traits > |
export the geometry helper type | |
using | Grid = typename BaseImplementation::Grid |
export the grid type | |
using | GlobalCoordinate = typename BaseImplementation::GlobalCoordinate |
export the global coordinate type | |
using | ElementMapper = typename BaseImplementation::ElementMapper |
export the element mapper type | |
using | VertexMapper = typename BaseImplementation::VertexMapper |
export the vertex mapper type | |
Public Member Functions | |
template<class FacetGridView , class CodimOneGridAdapter > | |
BoxFacetCouplingFVGridGeometry (const GridView &gridView, const FacetGridView &facetGridView, const CodimOneGridAdapter &codimOneGridAdapter, bool verbose=false) | |
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 GridView &gridView, const FacetGridView &facetGridView, const CodimOneGridAdapter &codimOneGridAdapter, bool verbose=false) |
update all fvElementGeometries (call this after grid adaption) | |
template<class FacetGridView , class CodimOneGridAdapter > | |
void | update (GridView &&gridView, const FacetGridView &facetGridView, const CodimOneGridAdapter &codimOneGridAdapter, bool verbose=false) |
update all fvElementGeometries (call this 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 (const GridView &gridView) |
Update all fvElementGeometries (call this after grid adaption) | |
void | update (GridView &&gridView) |
Update all fvElementGeometries (call this 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. | |
decltype(auto) | boundingBoxTree () const |
Returns the bounding box tree of the grid. | |
decltype(auto) | 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) | |
Static Public Attributes | |
static constexpr DiscretizationMethod | discMethod {} |
Protected Member Functions | |
void | setPeriodic (bool value=true) |
Set the periodicity of the grid geometry. | |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::DiscretizationMethod = DiscretizationMethods::Box |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::DofMapper = typename Traits::VertexMapper |
|
inherited |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::Extrusion = Extrusion_t<Traits> |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::FeCache = Dune::LagrangeLocalFiniteElementCache<CoordScalar, Scalar, dim, 1> |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::GeometryHelper = Detail::BoxFacetCouplingGeometryHelper_t<GV, Traits> |
|
inherited |
|
inherited |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::GridView = GV |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::LocalView = typename Traits::template LocalView<ThisType, true> |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::SubControlVolume = typename Traits::SubControlVolume |
using Dumux::BoxFacetCouplingFVGridGeometry< Scalar, GV, true, Traits >::SubControlVolumeFace = typename Traits::SubControlVolumeFace |
|
inherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inline |
The total number of boundary sub control volume faces For compatibility reasons with cc methods
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprotectedinherited |
|
inlineinherited |
|
inline |
gridView | The grid view of a dim-dimensional grid. |
facetGridView | The grid view of a (dim-1)-dimensional grid conforming with the facets of this grid view, indicating on which facets nodal dofs should be enriched. |
codimOneGridAdapter | Adapter class that allows access to information on the d- dimensional grid for entities of the (d-1)-dimensional grid |
verbose | Verbosity level for vertex enrichment |
|
inlineinherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
staticconstexpr |