48#ifndef DUMUX_2P1C_MODEL_HH
49#define DUMUX_2P1C_MODEL_HH
51#include <dune/common/fvector.hh>
78template<TwoPFormulation f>
84 static constexpr int numEq() {
return 2; }
107template<
class PV,
class FSY,
class FST,
class SSY,
class SST,
class PT,
class MT>
119namespace Properties {
136template<
class TypeTag>
137struct FluidState<TypeTag, TTag::TwoPOneCNI>
147template<
class TypeTag>
148struct Formulation<TypeTag, TTag::TwoPOneCNI>
152template<
class TypeTag>
156template<
class TypeTag>
160template<
class TypeTag>
164template<
class TypeTag>
165struct VolumeVariables<TypeTag, TTag::TwoPOneCNI>
175 static_assert(FSY::numComponents == 1,
"Only fluid systems with 1 component are supported by the 2p1cni model!");
176 static_assert(FSY::numPhases == 2,
"Only fluid systems with 2 phases are supported by the 2p1cni model!");
180 template<
class BaseTraits,
class ETCM>
181 struct NITraits :
public BaseTraits {
using EffectiveThermalConductivityModel = ETCM; };
187template<
class TypeTag>
188struct PrimaryVariables<TypeTag, TTag::TwoPOneCNI>
191 using PrimaryVariablesVector = Dune::FieldVector<GetPropType<TypeTag, Properties::Scalar>,
198template<
class TypeTag>
206template<
class TypeTag>
210template<
class TypeTag>
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
Definition: compositional.hh:35
Adds I/O fields specific to non-isothermal models.
Definition: porousmediumflow/nonisothermal/iofields.hh:27
A primary variable vector with a state to allow variable switches.
Definition: switchableprimaryvariables.hh:28
Effective thermal conductivity after Somerton.
Definition: somerton.hh:52
Specialization of Darcy's Law for the two-phase one-component model, including a the possibility to...
Definition: porousmediumflow/2p1c/darcyslaw.hh:37
The indices for the two-phase one-component model.
Definition: porousmediumflow/2p1c/indices.hh:23
Element-wise calculation of the residual for the fully implicit two-phase one-component flow model.
Definition: porousmediumflow/2p1c/localresidual.hh:27
The volume variables (i.e. secondary variables) for the two-phase one-component model.
Definition: porousmediumflow/2p1c/volumevariables.hh:37
Defines all properties used in Dumux.
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition: propertysystem.hh:296
TwoPFormulation
Enumerates the formulations which the two-phase model accepts.
Definition: formulation.hh:23
@ p1s0
first phase saturation and second phase pressure as primary variables
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.
Adds I/O fields specific to the tracer model.
Defines the indices for the elastic model.
Local residual for the hyperelastic model.
Volume variables for the hyperelasticity model.
Effective thermal conductivity after Somerton.
Definition: porousmediumflow/2p1c/model.hh:123
std::tuple< PorousMediumFlow > InheritsFrom
Definition: porousmediumflow/2p1c/model.hh:123
Determines whether blocking of spurious flow is used or not.
Definition: porousmediumflow/2p1c/darcyslaw.hh:26
Specifies a number properties of models considering two phases with water as a single component.
Definition: porousmediumflow/2p1c/model.hh:80
static constexpr int numFluidPhases()
Definition: porousmediumflow/2p1c/model.hh:87
static constexpr int numFluidComponents()
Definition: porousmediumflow/2p1c/model.hh:88
static constexpr bool enableEnergyBalance()
Definition: porousmediumflow/2p1c/model.hh:92
static constexpr bool enableMolecularDiffusion()
Definition: porousmediumflow/2p1c/model.hh:91
static constexpr TwoPFormulation priVarFormulation()
Definition: porousmediumflow/2p1c/model.hh:94
static constexpr int numEq()
We solve for one more equation, i.e. the energy balance.
Definition: porousmediumflow/2p1c/model.hh:84
static constexpr int numEnergyEq()
only one energy equation is needed when assuming thermal equilibrium
Definition: porousmediumflow/2p1c/model.hh:86
static constexpr bool enableAdvection()
Definition: porousmediumflow/2p1c/model.hh:90
Traits class for the two-phase model.
Definition: porousmediumflow/2p1c/model.hh:109
FST FluidState
Definition: porousmediumflow/2p1c/model.hh:112
PT PermeabilityType
Definition: porousmediumflow/2p1c/model.hh:115
MT ModelTraits
Definition: porousmediumflow/2p1c/model.hh:116
PV PrimaryVariables
Definition: porousmediumflow/2p1c/model.hh:110
SST SolidState
Definition: porousmediumflow/2p1c/model.hh:114
FSY FluidSystem
Definition: porousmediumflow/2p1c/model.hh:111
SSY SolidSystem
Definition: porousmediumflow/2p1c/model.hh:113
A primary variable vector with a state to allow variable switches.