28#ifndef EWOMS_FV_BASE_EXTENSIVE_QUANTITIES_HH
29#define EWOMS_FV_BASE_EXTENSIVE_QUANTITIES_HH
35#include <opm/material/common/Valgrind.hpp>
44template <
class TypeTag>
69 interiorScvIdx_ =
scvf.interiorIndex();
70 exteriorScvIdx_ =
scvf.exteriorIndex();
73 (elemCtx.intensiveQuantities(interiorScvIdx_,
timeIdx).extrusionFactor()
74 + elemCtx.intensiveQuantities(exteriorScvIdx_,
timeIdx).extrusionFactor()) / 2;
75 Valgrind::CheckDefined(extrusionFactor_);
76 assert(extrusionFactor_ > 0);
90 template <
class Context,
class Flu
idState>
96 unsigned dofIdx = context.interiorScvIndex(
bfIdx,
timeIdx);
97 interiorScvIdx_ =
static_cast<unsigned short>(dofIdx);
98 exteriorScvIdx_ =
static_cast<unsigned short>(dofIdx);
100 extrusionFactor_ = context.intensiveQuantities(
bfIdx,
timeIdx).extrusionFactor();
101 Valgrind::CheckDefined(extrusionFactor_);
102 assert(extrusionFactor_ > 0);
109 {
return extrusionFactor_; }
116 {
return interiorScvIdx_; }
123 {
return exteriorScvIdx_; }
127 unsigned short interiorScvIdx_{};
128 unsigned short exteriorScvIdx_{};
130 Scalar extrusionFactor_{};
Provide the properties at a face which make sense indepentently of the conserved quantities.
Definition fvbaseextensivequantities.hh:46
static void registerParameters()
Register all run-time parameters for the extensive quantities.
Definition fvbaseextensivequantities.hh:55
Scalar extrusionFactor() const
Returns th extrusion factor for the sub-control-volume face.
Definition fvbaseextensivequantities.hh:108
unsigned short exteriorIndex() const
Return the local index of the control volume which is on the "exterior" of the sub-control volume fac...
Definition fvbaseextensivequantities.hh:122
void updateBoundary(const Context &context, unsigned bfIdx, unsigned timeIdx, const FluidState &)
Update the extensive quantities for a given boundary face.
Definition fvbaseextensivequantities.hh:91
unsigned short interiorIndex() const
Return the local index of the control volume which is on the "interior" of the sub-control volume fac...
Definition fvbaseextensivequantities.hh:115
void update(const ElementContext &elemCtx, unsigned scvfIdx, unsigned timeIdx)
Update the extensive quantities for a given sub-control-volume face.
Definition fvbaseextensivequantities.hh:66
Declare the properties used by the infrastructure code of the finite volume discretizations.
Defines the common properties required by the porous medium multi-phase models.
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition blackoilboundaryratevector.hh:37
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:242
typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType
get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(....
Definition propertysystem.hh:235