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>
164 struct NCTraits :
public BaseTraits
166 using DiffusionType = DT;
175template<
class TypeTag>
179template<
class TypeTag>
187template<
class TypeTag>
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>
224 struct NCNITraits :
public BaseTraits
226 using DiffusionType = DT;
228 using EffectiveThermalConductivityModel = ETCM;
235template<
class TypeTag>
245template<
class TypeTag>
Represents all relevant thermodynamic quantities of a multi-phase fluid system assuming immiscibility...
Relation for the saturation-dependent effective diffusion coefficient.
Implementation of the single-phase transmissibility laws for throats.
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:154
typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType
get the type alias defined in the property
Definition propertysystem.hh:150
Definition common/properties.hh:37
Type tag for numeric models.
Definition grid.hh:36
Traits class encapsulating model specifications.
Definition common/properties.hh:53
A class helping models to define input and output fields.
Definition common/properties.hh:63
Property whether to use moles or kg as amount unit for balance equations.
Definition common/properties.hh:85
The component balance index that should be replaced by the total mass/mole balance.
Definition common/properties.hh:87
The secondary variables within a sub-control volume.
Definition common/properties.hh:107
The type for the calculation the advective fluxes.
Definition common/properties.hh:141
The type for the calculation of the molecular diffusion fluxes.
Definition common/properties.hh:145
The type of the spatial parameters object.
Definition common/properties.hh:160
The employed model for the computation of the effective diffusivity.
Definition common/properties.hh:170
Model to be used for the calculation of the effective conductivity.
Definition common/properties.hh:172
Definition advection.hh:47
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 porenetwork1p.hh:43
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
PoreNetwork::OnePDefaultSpatialParams< GridGeometry, Scalar > type
Definition porenetwork/1pnc/model.hh:108
PoreNetwork::CreepingFlow< Scalar, TransmissibilityLaw > type
Definition porenetwork/1pnc/model.hh:119
static constexpr auto value
Definition porenetwork/1pnc/model.hh:129
PoreNetwork::PNMFicksLaw< Scalar, ModelTraits::numFluidPhases(), ModelTraits::numFluidComponents()> type
Definition porenetwork/1pnc/model.hh:140
PoreNetwork::OnePNCVolumeVariables< NCTraits< BaseTraits, DT, EDM > > type
Definition porenetwork/1pnc/model.hh:171
PoreNetwork::OnePNCIOFields< GetPropType< TypeTag, Properties::FluidSystem > > type
Definition porenetwork/1pnc/model.hh:177
static constexpr bool value
Definition porenetwork/1pnc/model.hh:180
PorousMediumFlowNIModelTraits< IsothermalTraits, ThermalDispersionModel > type
Definition porenetwork/1pnc/model.hh:200
PoreNetwork::OnePNCVolumeVariables< NCNITraits< BaseTraits, DT, EDM, ETCM > > type
Definition porenetwork/1pnc/model.hh:232
EnergyIOFields< IsothermalFields > type
Definition porenetwork/1pnc/model.hh:242
ThermalConductivityAverage< GetPropType< TypeTag, Properties::Scalar > > type
Definition porenetwork/1pnc/model.hh:248
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:90
Specifies a number properties of models that consider a single-phase with multiple components.
Definition porousmediumflow/1pnc/model.hh:87
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
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...
Element-wise calculation of the local residual for problems using compositional fully implicit model.
Declares all properties used in Dumux.
Defines common properties required for all pore-network models.
Defines the indices used by the non-isothermal two-phase two-component model.
Adds output fields specific to the PNM 1pnc model.
Adds I/O fields specific to the OnePNC model.
Adds I/O fields specific to non-isothermal models.
Contains the quantities which are are constant within a finite volume in the one-phase,...
The spatial parameters for single-phase pore-network models.