24#ifndef DUMUX_DISCRETIZATION_PQ1BUBBLE_SUBCONTROLVOLUME_HH
25#define DUMUX_DISCRETIZATION_PQ1BUBBLE_SUBCONTROLVOLUME_HH
27#include <dune/geometry/type.hh>
28#include <dune/geometry/multilineargeometry.hh>
43template<
class Gr
idView>
46 using Grid =
typename GridView::Grid;
48 static const int dim = Grid::dimension;
49 static const int dimWorld = Grid::dimensionworld;
55 using Geometry = Dune::MultiLinearGeometry<Scalar, dim, dimWorld, GeometryTraits>;
66template<
class Gr
idView,
class T = PQ1BubbleDefaultScvGeometryTraits<Gr
idView>>
69 using GlobalPosition =
typename T::GlobalPosition;
70 using Scalar =
typename T::Scalar;
71 using GridIndexType =
typename T::GridIndexType;
72 using LocalIndexType =
typename T::LocalIndexType;
82 const GlobalPosition&
center,
84 const GridIndexType eIdx,
85 const GridIndexType dofIdx,
86 bool overlapping =
false)
94 , overlapping_(overlapping)
103 {
return dofPosition_; }
110 {
return overlapping_; }
116 {
return indexInElement_; }
122 {
return indexInElement_; }
125 GlobalPosition center_;
126 GlobalPosition dofPosition_;
128 LocalIndexType indexInElement_;
130 GridIndexType dofIdx_;
Defines the index types used for grid and local indices.
Define some often used mathematical functions.
Base class for a sub control volume.
Adaption of the non-isothermal two-phase two-component flow model to problems with CO2.
Definition: adapt.hh:29
typename GridView::IndexSet::IndexType GridIndex
Definition: indextraits.hh:39
unsigned int LocalIndex
Definition: indextraits.hh:40
Traits for an efficient corner storage for the PQ1Bubble method.
Definition: discretization/pq1bubble/geometryhelper.hh:46
Default traits class to be used for the sub-control volumes for the pq1bubble scheme.
Definition: discretization/pq1bubble/subcontrolvolume.hh:45
typename IndexTraits< GridView >::GridIndex GridIndexType
Definition: discretization/pq1bubble/subcontrolvolume.hh:51
static const int dimWorld
Definition: discretization/pq1bubble/subcontrolvolume.hh:49
typename CornerStorage::value_type GlobalPosition
Definition: discretization/pq1bubble/subcontrolvolume.hh:57
static const int dim
Definition: discretization/pq1bubble/subcontrolvolume.hh:48
typename Grid::ctype Scalar
Definition: discretization/pq1bubble/subcontrolvolume.hh:53
typename GridView::Grid Grid
Definition: discretization/pq1bubble/subcontrolvolume.hh:46
typename GeometryTraits::template CornerStorage< dim, dimWorld >::Type CornerStorage
Definition: discretization/pq1bubble/subcontrolvolume.hh:56
Dune::MultiLinearGeometry< Scalar, dim, dimWorld, GeometryTraits > Geometry
Definition: discretization/pq1bubble/subcontrolvolume.hh:55
typename IndexTraits< GridView >::LocalIndex LocalIndexType
Definition: discretization/pq1bubble/subcontrolvolume.hh:52
the sub control volume for the pq1bubble scheme
Definition: discretization/pq1bubble/subcontrolvolume.hh:68
PQ1BubbleSubControlVolume(const Scalar &volume, const GlobalPosition &dofPosition, const GlobalPosition ¢er, const LocalIndexType indexInElement, const GridIndexType eIdx, const GridIndexType dofIdx, bool overlapping=false)
Definition: discretization/pq1bubble/subcontrolvolume.hh:80
const GlobalPosition & center() const
The center of the sub control volume.
Definition: discretization/pq1bubble/subcontrolvolume.hh:98
GridIndexType dofIndex() const
Definition: discretization/pq1bubble/subcontrolvolume.hh:112
Scalar volume() const
Definition: discretization/pq1bubble/subcontrolvolume.hh:105
const GlobalPosition & dofPosition() const
The position of the degree of freedom.
Definition: discretization/pq1bubble/subcontrolvolume.hh:102
LocalIndexType localDofIndex() const
Definition: discretization/pq1bubble/subcontrolvolume.hh:121
PQ1BubbleSubControlVolume()=default
bool isOverlapping() const
returns true if the sub control volume is overlapping with another scv
Definition: discretization/pq1bubble/subcontrolvolume.hh:109
T Traits
state the traits public and thus export all types
Definition: discretization/pq1bubble/subcontrolvolume.hh:76
LocalIndexType indexInElement() const
Definition: discretization/pq1bubble/subcontrolvolume.hh:115
GridIndexType elementIndex() const
Definition: discretization/pq1bubble/subcontrolvolume.hh:118
Helper class constructing the dual grid finite volume geometries for the cvfe discretizazion method.