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>
117namespace Properties {
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:49
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:33
Relation for the saturation-dependent effective diffusion coefficient.
Definition: diffusivitymillingtonquirk.hh:40
A liquid phase consisting of a two components, a main component and a conservative tracer component.
Definition: liquidphase2c.hh:34
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
Relation for a simple effective thermal conductivity.
Definition: thermalconductivityaverage.hh:25
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 saturation-dependent effective diffusion coefficient.
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition: propertysystem.hh:296
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 isothermal tracer model.
Adds I/O fields specific to the tracer model.
Python wrapper for volume variables (finite volume schemes)
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:71
GetPropType< TypeTag, Properties::Scalar > Scalar
Definition: porousmediumflow/richardsnc/model.hh:206
GetPropType< TypeTag, Properties::FluidSystem > FluidSystem
Definition: porousmediumflow/richardsnc/model.hh:207
GetPropType< TypeTag, Properties::Scalar > Scalar
Definition: porousmediumflow/richardsnc/model.hh:193
GetPropType< TypeTag, Properties::BaseModelTraits > type
Definition: porousmediumflow/richardsnc/model.hh:146
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
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
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
Reation for a simple effective thermal conductivity.