68#ifndef DUMUX_2P2C_MODEL_HH 
   69#define DUMUX_2P2C_MODEL_HH 
  107template<
class TypeTag>
 
  108struct BaseModelTraits<TypeTag, 
TTag::TwoPTwoC>
 
  112    static_assert(FluidSystem::numComponents == 2, 
"Only fluid systems with 2 components are supported by the 2p-2c model!");
 
  113    static_assert(FluidSystem::numPhases == 2, 
"Only fluid systems with 2 phases are supported by the 2p-2c model!");
 
 
  122template<
class TypeTag>
 
  126template<
class TypeTag>
 
  127struct VolumeVariables<TypeTag, 
TTag::TwoPTwoC>
 
  139    static_assert(FSY::numComponents == 2, 
"Only fluid systems with 2 components are supported by the 2p2c model!");
 
  140    static_assert(FSY::numPhases == 2, 
"Only fluid systems with 2 phases are supported by the 2p2c model!");
 
  147    template<
class BaseTraits, 
class DT, 
class EDM>
 
  148    struct NCTraits : 
public BaseTraits
 
  150        using DiffusionType = DT;
 
  151        using EffectiveDiffusivityModel = EDM;
 
 
  159template<
class TypeTag>
 
  160struct UseConstraintSolver<TypeTag, 
TTag::TwoPTwoC> { 
static constexpr bool value = 
true; };
 
  167template<
class TypeTag>
 
  168struct ModelTraits<TypeTag, 
TTag::TwoPTwoCNI>
 
 
  177template<
class TypeTag>
 
  178struct VolumeVariables<TypeTag, 
TTag::TwoPTwoCNI>
 
  198    template<
class BaseTraits, 
class DT, 
class EDM, 
class ETCM>
 
  199    struct NCNITraits : 
public BaseTraits
 
  201        using DiffusionType = DT;
 
  202        using EffectiveDiffusivityModel = EDM;
 
  203        using EffectiveThermalConductivityModel = ETCM;
 
 
  211template<
class TypeTag>
 
  215template<
class TypeTag>
 
  220template<
class TwoPTwoCModelTraits>
 
  226namespace Properties {
 
  238template<
class TypeTag>
 
  242template<
class TypeTag>
 
  245template<
class TypeTag>
 
  246struct ModelTraits<TypeTag, 
TTag::TwoPTwoCNonEquil>
 
 
  263template<
class TypeTag>
 
  264struct EquilibriumModelTraits<TypeTag, 
TTag::TwoPTwoCNonEquil>
 
 
  275template<
class TypeTag>
 
  276struct ThermalConductivityModel<TypeTag, 
TTag::TwoPTwoCNonEquil>
 
 
  280template<
class TypeTag>
 
  281struct VolumeVariables<TypeTag, 
TTag::TwoPTwoCNonEquil>
 
  299    template<
class BaseTraits, 
class DT, 
class EDM>
 
  300    struct NCTraits : 
public BaseTraits
 
  302        using DiffusionType = DT;
 
  303        using EffectiveDiffusivityModel = EDM;
 
 
  321template<
class TypeTag>
 
  322struct ModelTraits<TypeTag, 
TTag::TwoPTwoCNINonEquil>
 
 
  340template<
class TypeTag>
 
  341struct EquilibriumIOFields<TypeTag, 
TTag::TwoPTwoCNINonEquil>
 
  346    using type = NonisothermalIOFields;
 
 
  350template<
class TypeTag>
 
  351struct VolumeVariables<TypeTag, 
TTag::TwoPTwoCNINonEquil>
 
  371    template<
class BaseTraits, 
class DT, 
class EDM, 
class ETCM>
 
  372    struct NCNITraits : 
public BaseTraits
 
  374        using DiffusionType = DT;
 
  375        using EffectiveDiffusivityModel = EDM;
 
  376        using EffectiveThermalConductivityModel = ETCM;
 
 
  385template<
class TypeTag>
 
  386struct ThermalConductivityModel<TypeTag, 
TTag::TwoPTwoCNINonEquil>
 
 
Element-wise calculation of the local residual for problems using compositional fully implicit model.
Definition porousmediumflow/compositional/localresidual.hh:35
Adds I/O fields specific to non-isothermal models.
Definition porousmediumflow/nonisothermal/iofields.hh:27
Effective thermal conductivity based on weighted arithmetic average.
Definition thermalconductivityaverage.hh:49
Effective thermal conductivity after Somerton.
Definition somerton.hh:52
Adds I/O fields specific to the TwoPNC model.
Definition porousmediumflow/2pnc/iofields.hh:27
Class that computes the nonwetting saturation in an scv from the saturation at the global degree of f...
Definition saturationreconstruction.hh:31
Defines all properties used in Dumux.
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
TwoPTwoCVolumeVariablesImplementation< Traits, Traits::ModelTraits::enableChemicalNonEquilibrium(), useConstraintSolver > TwoPTwoCVolumeVariables
Contains the quantities which are constant within a finite volume in the two-phase two-component mode...
Definition porousmediumflow/2p2c/volumevariables.hh:41
Type tag for numeric models.
Definition grid.hh:24
The energy balance equation for a porous solid.
Definition common/properties.hh:26
NonEquilibriumVolumeVariablesImplementation< Traits, EquilibriumVolumeVariables, Traits::ModelTraits::enableChemicalNonEquilibrium(), Traits::ModelTraits::enableThermalNonEquilibrium(), Traits::ModelTraits::numEnergyEqFluid()> NonEquilibriumVolumeVariables
Definition porousmediumflow/nonequilibrium/volumevariables.hh:40
Contains the quantities which are constant within a finite volume in the two-phase two-component mode...
Adaption of the fully implicit scheme to the two-phase n-component fully implicit model.
This specifies models which are able to capture non-equilibrium mass and / or energy transfer.
This class contains the volume variables required for the modules which require the specific interfac...
Adds I/O fields specific to non-isothermal models.
The implicit non-isothermal model.
Effective thermal conductivity after Somerton.
Specifies a number properties of porous-medium flow non-equilibrium models.
Definition porousmediumflow/nonequilibrium/model.hh:45
Specifies a number properties of non-isothermal porous medium flow models based on the specifics of a...
Definition porousmediumflow/nonisothermal/model.hh:76
TwoPNCModelTraits< FluidSystem::numComponents, getPropValue< TypeTag, Properties::UseMoles >(), true, getPropValue< TypeTag, Properties::Formulation >(), getPropValue< TypeTag, Properties::ReplaceCompEqIdx >()> type
Definition porousmediumflow/2p2c/model.hh:116
NonisothermalIOFields type
Definition porousmediumflow/2p2c/model.hh:346
TwoPNCIOFields type
Definition porousmediumflow/2p2c/model.hh:243
CompositionalLocalResidual< TypeTag > type
Definition porousmediumflow/2p2c/model.hh:239
TwoPTwoCUnconstrainedModelTraits< EquilibriumTraits > type
Definition porousmediumflow/2p2c/model.hh:270
EnergyIOFields< TwoPNCIOFields > type
Definition porousmediumflow/2p2c/model.hh:212
GetPropType< TypeTag, Properties::BaseModelTraits > type
Definition porousmediumflow/2p2c/model.hh:123
PorousMediumFlowNIModelTraits< IsothermalTraits > type
Definition porousmediumflow/2p2c/model.hh:173
PorousMediumFlowNIModelTraits< IsothermalTraits > type
Definition porousmediumflow/2p2c/model.hh:336
NonEquilTraits type
Definition porousmediumflow/2p2c/model.hh:259
Definition porousmediumflow/2p2c/model.hh:96
std::tuple< TwoPNC > InheritsFrom
Definition porousmediumflow/2p2c/model.hh:96
Definition porousmediumflow/2p2c/model.hh:97
std::tuple< TwoPTwoC > InheritsFrom
Definition porousmediumflow/2p2c/model.hh:97
Definition porousmediumflow/2p2c/model.hh:317
std::tuple< TwoPTwoCNonEquil > InheritsFrom
Definition porousmediumflow/2p2c/model.hh:317
Definition porousmediumflow/2p2c/model.hh:231
std::tuple< NonEquilibrium, TwoPTwoC > InheritsFrom
Definition porousmediumflow/2p2c/model.hh:231
ThermalConductivitySomertonTwoP< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/2p2c/model.hh:216
ThermalConductivitySomertonTwoP< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/2p2c/model.hh:387
ThermalConductivityAverage< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/2p2c/model.hh:277
static constexpr bool value
Definition porousmediumflow/2p2c/model.hh:160
TwoPTwoCVolumeVariables< NCTraits< BaseTraits, DT, EDM >, useConstraintSolver > type
Definition porousmediumflow/2p2c/model.hh:155
TwoPTwoCVolumeVariables< NCNITraits< BaseTraits, DT, EDM, ETCM > > type
Definition porousmediumflow/2p2c/model.hh:206
NonEquilibriumVolumeVariables< NCNITraits< BaseTraits, DT, EDM, ETCM >, EquilibriumVolVars > type
Definition porousmediumflow/2p2c/model.hh:381
NonEquilibriumVolumeVariables< NCTraits< BaseTraits, DT, EDM >, EquilibriumVolVars > type
Definition porousmediumflow/2p2c/model.hh:309
Specifies a number properties of two-phase n-component models.
Definition porousmediumflow/2pnc/model.hh:114
Definition porousmediumflow/2p2c/model.hh:222
static constexpr int numConstraintEq()
Definition porousmediumflow/2p2c/model.hh:223
Traits class for the two-phase model.
Definition porousmediumflow/2p/model.hh:107
Effective thermal conductivity based on weighted arithmetic average.