72#ifndef DUMUX_1PNCMIN_MODEL_HH
73#define DUMUX_1PNCMIN_MODEL_HH
106template<
class TypeTag>
107struct VolumeVariables<TypeTag,
TTag::OnePNCMin>
117 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
118 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
119 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
120 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
126 template<
class BaseTraits,
class CDM,
class DT,
class EDM>
127 struct NCTraits :
public BaseTraits
129 using CompositionalDispersionModel = CDM;
130 using DiffusionType = DT;
131 using EffectiveDiffusivityModel = EDM;
140template<
class TypeTag>
144template<
class TypeTag>
145struct ModelTraits<TypeTag,
TTag::OnePNCMin>
155template<
class TypeTag>
156struct SolidState<TypeTag,
TTag::OnePNCMin>
166template<
class TypeTag>
174template<
class TypeTag>
175struct IOFields<TypeTag,
TTag::OnePNCMinNI>
182template<
class TypeTag>
183struct ModelTraits<TypeTag,
TTag::OnePNCMinNI>
194template<
class TypeTag>
195struct VolumeVariables<TypeTag,
TTag::OnePNCMinNI>
205 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
206 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
207 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
208 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
215 template<
class BaseTraits,
class CDM,
class DT,
class EDM,
class ETCM>
216 struct NCNITraits :
public BaseTraits
218 using CompositionalDispersionModel = CDM;
219 using DiffusionType = DT;
220 using EffectiveDiffusivityModel = EDM;
221 using EffectiveThermalConductivityModel = ETCM;
228template<
class TypeTag>
229struct ThermalConductivityModel<TypeTag,
TTag::OnePNCMinNI>
Represents all relevant thermodynamic quantities of a compositional solid system.
Definition compositionalsolidstate.hh:25
Adds I/O fields specific to non-isothermal models.
Definition porousmediumflow/nonisothermal/iofields.hh:27
Adds I/O fields specific to a NCMin model.
Definition porousmediumflow/mineralization/iofields.hh:27
Element-wise calculation of the local residual for problems using a one/two-phase n-component mineral...
Definition porousmediumflow/mineralization/localresidual.hh:29
Contains the quantities which are are constant within a sub-control volume of the finite volume grid ...
Definition porousmediumflow/mineralization/volumevariables.hh:26
Contains the quantities which are are constant within a finite volume in the one-phase,...
Definition porousmediumflow/1pnc/volumevariables.hh:38
Effective thermal conductivity based on weighted arithmetic average.
Definition thermalconductivityaverage.hh:49
Represents all relevant thermodynamic quantities of a compositional solid system.
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition propertysystem.hh:296
Type tag for numeric models.
Definition grid.hh:24
The energy balance equation for a porous solid.
Definition common/properties.hh:26
Defines the primary variable and equation indices used by the 1pnc model.
Adaption of the fully implicit model to the one-phase n-component flow model.
Quantities required by the single-phase, n-component box model defined on a vertex.
Adds I/O fields specific to the models considering mineralization processes.
Element-wise calculation of the local residual for problems using a compositional model that also con...
Defines the properties required for compositional porous medium flow models considering mineralizatio...
Contains the quantities which are constant within a sub-control volume of the finite volume grid in t...
Defines the indices used by the non-isothermal two-phase two-component model.
Adds I/O fields specific to non-isothermal models.
Specifies a number properties of models that consider mineralization processes.
Definition porousmediumflow/mineralization/model.hh:45
Traits class for the volume variables of the single-phase model.
Definition porousmediumflow/1p/model.hh:83
Specifies a number properties of non-isothermal porous medium flow models based on the specifics of a...
Definition porousmediumflow/nonisothermal/model.hh:76
MineralizationIOFields< OnePNCIOFields > type
Definition porousmediumflow/1pncmin/model.hh:167
MineralizationIOFields< OnePNCIOFields > MineralizationIOF
Definition porousmediumflow/1pncmin/model.hh:177
EnergyIOFields< MineralizationIOF > type
Definition porousmediumflow/1pncmin/model.hh:178
MineralizationLocalResidual< TypeTag > type
Definition porousmediumflow/1pncmin/model.hh:141
MineralizationModelTraits< NonMinTraits, SolidSystem::numComponents, SolidSystem::numInertComponents > type
Definition porousmediumflow/1pncmin/model.hh:151
PorousMediumFlowNIModelTraits< IsothermalTraits > type
Definition porousmediumflow/1pncmin/model.hh:190
CompositionalSolidState< Scalar, SolidSystem > type
Definition porousmediumflow/1pncmin/model.hh:162
Definition porousmediumflow/1pncmin/model.hh:97
std::tuple< OnePNC > InheritsFrom
Definition porousmediumflow/1pncmin/model.hh:97
Definition porousmediumflow/1pncmin/model.hh:98
std::tuple< OnePNCMin > InheritsFrom
Definition porousmediumflow/1pncmin/model.hh:98
ThermalConductivityAverage< GetPropType< TypeTag, Properties::Scalar > > type
Definition porousmediumflow/1pncmin/model.hh:230
MineralizationVolumeVariables< NCTraits< BaseTraits, CDM, DT, EDM >, NonMinVolVars > type
Definition porousmediumflow/1pncmin/model.hh:136
MineralizationVolumeVariables< NCNITraits< BaseTraits, CDM, DT, EDM, ETCM >, NonMinVolVars > type
Definition porousmediumflow/1pncmin/model.hh:225
Effective thermal conductivity based on weighted arithmetic average.