40#ifndef DUMUX_RICHARDSNC_MODEL_HH
41#define DUMUX_RICHARDSNC_MODEL_HH
72template<
int nComp,
bool useMol,
int repCompEqIdx = nComp>
77 static constexpr int numEq() {
return nComp; }
88 static constexpr bool useMoles() {
return useMol; }
103template<
class PV,
class FSY,
class FST,
class SSY,
class SST,
class PT,
class MT,
class DT,
class EDM>
137template<
class TypeTag>
138struct BaseModelTraits<TypeTag,
TTag::RichardsNC>
145template<
class TypeTag>
149template<
class TypeTag>
150struct UseMoles<TypeTag,
TTag::RichardsNC> {
static constexpr bool value =
true; };
153template<
class TypeTag>
158template<
class TypeTag>
159struct ReplaceCompEqIdx<TypeTag,
TTag::RichardsNC> {
static constexpr int value = 0; };
162template<
class TypeTag>
163struct VolumeVariables<TypeTag,
TTag::RichardsNC>
173 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
174 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
175 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
176 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
190template<
class TypeTag>
191struct FluidSystem<TypeTag,
TTag::RichardsNC>
203template<
class TypeTag>
204struct FluidState<TypeTag,
TTag::RichardsNC>
212template<
class TypeTag>
216template<
class TypeTag>
220template<
class TypeTag>
228template<
class TypeTag>
229struct ModelTraits<TypeTag,
TTag::RichardsNCNI>
238template<
class TypeTag>
239struct VolumeVariables<TypeTag,
TTag::RichardsNCNI>
254 template<
class BaseTraits,
class ETCM>
255 struct NCNITraits :
public BaseTraits {
using EffectiveThermalConductivityModel = ETCM; };
A component which returns run time specified values for all fluid properties.
Definition constant.hh:48
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
Definition compositional.hh:35
Element-wise calculation of the local residual for problems using compositional fully implicit model.
Definition porousmediumflow/compositional/localresidual.hh:35
Relation for the effective diffusion coefficient after Millington and Quirk.
Definition diffusivitymillingtonquirk.hh:43
A liquid phase consisting of a two components, a main component and a conservative tracer component.
Definition liquidphase2c.hh:33
Adds I/O fields specific to the Richards model.
Definition porousmediumflow/richardsnc/iofields.hh:26
Contains the quantities which are constant within a finite volume in the Richards,...
Definition porousmediumflow/richardsnc/volumevariables.hh:35
Effective thermal conductivity based on weighted arithmetic average.
Definition thermalconductivityaverage.hh:49
Defines all properties used in Dumux.
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
Setting constant fluid properties via the input file.
Relation for the effective diffusion coefficient after Millington and Quirk.
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:310
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition propertysystem.hh:296
@ SST
Definition turbulencemodel.hh:63
A liquid phase consisting of a two components, a main component and a conservative tracer component.
Type tag for numeric models.
Definition grid.hh:24
The energy balance equation for a porous solid.
Definition common/properties.hh:26
Element-wise calculation of the local residual for problems using compositional fully implicit model.
Defines the indices used by the non-isothermal two-phase two-component model.
Adds I/O fields specific to non-isothermal models.
The implicit non-isothermal model.
Defines a type tag and some properties for models using the box scheme.
This model implements a variant of the Richards' equation for quasi-twophase flow.
Defines the primary variable and equation indices used by the richardsnc model.
Adds I/O fields specific to the Richards model.
Contains the quantities which are constant within a finite volume in the Richards,...
A simple implementation of pure water.
Specifies a number properties of non-isothermal porous medium flow models based on the specifics of a...
Definition porousmediumflow/nonisothermal/model.hh:76
RichardsNCModelTraits< FluidSystem::numComponents, getPropValue< TypeTag, Properties::UseMoles >(), getPropValue< TypeTag, Properties::ReplaceCompEqIdx >()> type
Definition porousmediumflow/richardsnc/model.hh:143
DiffusivityMillingtonQuirk< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/richardsnc/model.hh:217
GetPropType< TypeTag, Properties::Scalar > Scalar
Definition porousmediumflow/richardsnc/model.hh:206
GetPropType< TypeTag, Properties::FluidSystem > FluidSystem
Definition porousmediumflow/richardsnc/model.hh:207
CompositionalFluidState< Scalar, FluidSystem > type
Definition porousmediumflow/richardsnc/model.hh:208
GetPropType< TypeTag, Properties::Scalar > Scalar
Definition porousmediumflow/richardsnc/model.hh:193
FluidSystems::LiquidPhaseTwoC< Scalar, Components::SimpleH2O< Scalar >, Components::Constant< 1, Scalar > > type
Definition porousmediumflow/richardsnc/model.hh:194
RichardsNCIOFields type
Definition porousmediumflow/richardsnc/model.hh:213
CompositionalLocalResidual< TypeTag > type
Definition porousmediumflow/richardsnc/model.hh:154
GetPropType< TypeTag, Properties::BaseModelTraits > type
Definition porousmediumflow/richardsnc/model.hh:146
PorousMediumFlowNIModelTraits< IsothermalTraits > type
Definition porousmediumflow/richardsnc/model.hh:234
static constexpr int value
Definition porousmediumflow/richardsnc/model.hh:159
Definition porousmediumflow/richardsnc/model.hh:126
std::tuple< PorousMediumFlow > InheritsFrom
Definition porousmediumflow/richardsnc/model.hh:126
Definition porousmediumflow/richardsnc/model.hh:127
std::tuple< RichardsNC > InheritsFrom
Definition porousmediumflow/richardsnc/model.hh:127
ThermalConductivityAverage< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/richardsnc/model.hh:221
static constexpr bool value
Definition porousmediumflow/richardsnc/model.hh:150
RichardsNCVolumeVariables< NCTraits > type
Definition porousmediumflow/richardsnc/model.hh:182
RichardsNCVolumeVariables< NCNITraits< BaseTraits, ETCM > > type
Definition porousmediumflow/richardsnc/model.hh:257
The indices for the isothermal Richards, n-component model.
Definition porousmediumflow/richardsnc/indices.hh:24
Specifies a number properties of the Richards n-components model.
Definition porousmediumflow/richardsnc/model.hh:74
static constexpr bool enableThermalDispersion()
Definition porousmediumflow/richardsnc/model.hh:86
static constexpr int numEq()
Definition porousmediumflow/richardsnc/model.hh:77
static constexpr int numFluidPhases()
Definition porousmediumflow/richardsnc/model.hh:78
static constexpr bool enableCompositionalDispersion()
Definition porousmediumflow/richardsnc/model.hh:85
static constexpr bool enableMolecularDiffusion()
Definition porousmediumflow/richardsnc/model.hh:83
RichardsNCIndices Indices
Definition porousmediumflow/richardsnc/model.hh:75
static constexpr bool enableEnergyBalance()
Definition porousmediumflow/richardsnc/model.hh:84
static constexpr bool useMoles()
Definition porousmediumflow/richardsnc/model.hh:88
static constexpr bool enableAdvection()
Definition porousmediumflow/richardsnc/model.hh:82
static constexpr int numFluidComponents()
Definition porousmediumflow/richardsnc/model.hh:79
static constexpr int replaceCompEqIdx()
Definition porousmediumflow/richardsnc/model.hh:80
Traits class for the Richards n-components model.
Definition porousmediumflow/richardsnc/model.hh:105
MT ModelTraits
Definition porousmediumflow/richardsnc/model.hh:112
PT PermeabilityType
Definition porousmediumflow/richardsnc/model.hh:111
PV PrimaryVariables
Definition porousmediumflow/richardsnc/model.hh:106
FST FluidState
Definition porousmediumflow/richardsnc/model.hh:108
SSY SolidSystem
Definition porousmediumflow/richardsnc/model.hh:109
SST SolidState
Definition porousmediumflow/richardsnc/model.hh:110
EDM EffectiveDiffusivityModel
Definition porousmediumflow/richardsnc/model.hh:114
FSY FluidSystem
Definition porousmediumflow/richardsnc/model.hh:107
DT DiffusionType
Definition porousmediumflow/richardsnc/model.hh:113
Effective thermal conductivity based on weighted arithmetic average.