24#ifndef DUMUX_DISCRETIZATION_FLUXVARIABLESBASE_HH
25#define DUMUX_DISCRETIZATION_FLUXVARIABLESBASE_HH
40template<
class Problem,
41 class FVElementGeometry,
42 class ElementVolumeVariables,
43 class ElementFluxVariablesCache>
46 using GridView =
typename FVElementGeometry::GridGeometry::GridView;
47 using Element =
typename GridView::template Codim<0>::Entity;
48 using Stencil = std::vector<std::size_t>;
49 using SubControlVolumeFace =
typename FVElementGeometry::SubControlVolumeFace;
58 const SubControlVolumeFace &
scvFace,
70 {
return *problemPtr_; }
73 {
return *elementPtr_; }
75 const SubControlVolumeFace&
scvFace()
const
76 {
return *scvFacePtr_; }
79 {
return *fvGeometryPtr_; }
82 {
return *elemVolVarsPtr_; }
85 {
return *elemFluxVarsCachePtr_; }
88 const Problem* problemPtr_;
89 const Element* elementPtr_;
90 const FVElementGeometry* fvGeometryPtr_;
91 const SubControlVolumeFace* scvFacePtr_;
92 const ElementVolumeVariables* elemVolVarsPtr_;
93 const ElementFluxVariablesCache* elemFluxVarsCachePtr_;
Base class for the flux variables living on a sub control volume face.
Definition: fluxvariablesbase.hh:45
const ElementVolumeVariables & elemVolVars() const
Definition: fluxvariablesbase.hh:81
const SubControlVolumeFace & scvFace() const
Definition: fluxvariablesbase.hh:75
const ElementFluxVariablesCache & elemFluxVarsCache() const
Definition: fluxvariablesbase.hh:84
void init(const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvFace, const ElementFluxVariablesCache &elemFluxVarsCache)
Initialize the flux variables storing some temporary pointers.
Definition: fluxvariablesbase.hh:54
const FVElementGeometry & fvGeometry() const
Definition: fluxvariablesbase.hh:78
const Element & element() const
Definition: fluxvariablesbase.hh:72
const Problem & problem() const
Definition: fluxvariablesbase.hh:69