56#ifndef DUMUX_PNM1PNC_MODEL_HH
57#define DUMUX_PNM1PNC_MODEL_HH
101template<
class TypeTag>
112template<
class TypeTag>
123template<
class TypeTag>
129 static constexpr auto value = FluidSystem::numComponents;
133template<
class TypeTag>
144template<
class TypeTag>
155 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
156 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
157 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
158 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
163 template<
class BaseTraits,
class DT,
class EDM>
166 using DiffusionType = DT;
175template<
class TypeTag>
179template<
class TypeTag>
180struct UseMoles<TypeTag, TTag::PNMOnePNC> {
static constexpr bool value =
true; };
187template<
class TypeTag>
195 getPropValue<TypeTag, Properties::EnableCompositionalDispersion>(),
196 getPropValue<TypeTag, Properties::EnableThermalDispersion>(),
197 getPropValue<TypeTag, Properties::ReplaceCompEqIdx>(),
198 CompositionalDispersionModel>;
203template<
class TypeTag>
214 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
215 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
216 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
217 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
223 template<
class BaseTraits,
class DT,
class EDM,
class ETCM>
226 using DiffusionType = DT;
228 using EffectiveThermalConductivityModel = ETCM;
235template<
class TypeTag>
245template<
class TypeTag>
Relation for the saturation-dependent effective diffusion coefficient.
Implementation of the single-phase transmissibility laws for throats.
Represents all relevant thermodynamic quantities of a multi-phase fluid system assuming immiscibility...
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition: propertysystem.hh:180
Definition: common/properties.hh:37
Traits class encapsulating model specifications.
Definition: common/properties.hh:51
A class helping models to define input and output fields.
Definition: common/properties.hh:61
Property whether to use moles or kg as amount unit for balance equations.
Definition: common/properties.hh:83
The component balance index that should be replaced by the total mass/mole balance.
Definition: common/properties.hh:85
The secondary variables within a sub-control volume.
Definition: common/properties.hh:105
The type for the calculation the advective fluxes.
Definition: common/properties.hh:139
The type for the calculation of the molecular diffusion fluxes.
Definition: common/properties.hh:143
The type of the spatial parameters object.
Definition: common/properties.hh:158
The employed model for the computation of the effective diffusivity.
Definition: common/properties.hh:168
Model to be used for the calculation of the effective conductivity.
Definition: common/properties.hh:170
Hagen–Poiseuille-type flux law to describe the advective flux for pore-network models.
Definition: advection.hh:46
Specialization of Fick's Law for the pore-network model.
Definition: flux/porenetwork/fickslaw.hh:42
Relation for a simple effective thermal conductivity.
Definition: thermalconductivityaverage.hh:37
Single-phase flow throat transmissibility based on Patzek & Silin (2001) https://doi....
Definition: transmissibility1p.hh:126
The default class for spatial parameters for single-phase pore-network models.
Definition: porenetwork/1p/spatialparams.hh:56
Adds output fields specific to the PNM 1pnc model.
Definition: porenetwork/1pnc/iofields.hh:38
Definition: porenetwork/1pnc/model.hh:89
std::tuple< PoreNetworkModel, OnePNC > InheritsFrom
Definition: porenetwork/1pnc/model.hh:89
The type tags for the corresponding non-isothermal problems.
Definition: porenetwork/1pnc/model.hh:92
std::tuple< PNMOnePNC > InheritsFrom
Definition: porenetwork/1pnc/model.hh:92
Contains the quantities which are are constant within a finite volume in the one-phase,...
Definition: porenetwork/1pnc/volumevariables.hh:44
Traits class for the volume variables of the single-phase model.
Definition: porousmediumflow/1p/model.hh:86
Specifies a number properties of models that consider a single-phase with multiple components.
Definition: porousmediumflow/1pnc/model.hh:82
Adds I/O fields specific to non-isothermal models.
Definition: porousmediumflow/nonisothermal/iofields.hh:39
Specifies a number properties of non-isothermal porous medium flow models based on the specifics of a...
Definition: porousmediumflow/nonisothermal/model.hh:70
Declares all properties used in Dumux.
Defines common properties required for all pore-network models.
A one-phase-flow, isothermal pore-network model using the fully implicit scheme.
Adaption of the fully implicit model to the one-phase n-component flow model.
The implicit non-isothermal model.
This file contains the data which is required to calculate diffusive mass fluxes due to molecular dif...
Adds I/O fields specific to the OnePNC model.
Adds I/O fields specific to non-isothermal models.
Adds I/O fields specific to the tracer model.
Element-wise calculation of the local residual for problems using compositional fully implicit model.
Python wrapper for volume variables (finite volume schemes)
Defines the indices used by the non-isothermal two-phase two-component model.
The spatial parameters for single-phase pore-network models.