52#ifndef DUMUX_FREEFLOW_NC_MODEL_HH
53#define DUMUX_FREEFLOW_NC_MODEL_HH
86template<
int dimension,
int nComp,
bool useM,
int repCompEqIdx = nComp>
91 static constexpr int numEq() {
return dimension+nComp; }
97 static constexpr bool useMoles() {
return useM; }
139template<
class TypeTag>
144 static constexpr int dim = GridView::dimension;
146 static constexpr int numComponents = FluidSystem::numComponents;
154template<
class TypeTag>
156template<
class TypeTag>
158template<
class TypeTag>
162template<
class TypeTag>
166template<
class TypeTag>
170template<
class TypeTag>
178 static_assert(FSY::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid system");
179 static_assert(FST::numComponents == MT::numFluidComponents(),
"Number of components mismatch between model and fluid state");
180 static_assert(FSY::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid system");
181 static_assert(FST::numPhases == MT::numFluidPhases(),
"Number of phases mismatch between model and fluid state");
185 template<
class BaseTraits,
class DT>
186 struct NCTraits :
public BaseTraits {
using DiffusionType = DT; };
192template<
class TypeTag>
196template<
class TypeTag>
205template<
class TypeTag>
220template<
class TypeTag>
225 static constexpr int dim = GridView::dimension;
227 static constexpr int numComponents = FluidSystem::numComponents;
236template<
class TypeTag>
246template<
class TypeTag>
Calculates the element-wise residual for the staggered FV scheme.
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
A gaseous phase consisting of a single component.
A liquid phase consisting of a single component.
@ none
Definition turbulencemodel.hh:38
FreeflowNCResidualImpl< TypeTag, GetPropType< TypeTag, Properties::GridGeometry >::discMethod > FreeflowNCResidual
The local residual class for the multi-component free-flow model (balance equations)....
Definition freeflow/compositional/localresidual.hh:46
FreeflowNCFluxVariablesImpl< TypeTag, GetPropType< TypeTag, Properties::GridGeometry >::discMethod > FreeflowNCFluxVariables
The flux variables class for the multi-component free-flow model. This is a convenience alias for tha...
Definition freeflow/compositional/fluxvariables.hh:44
FouriersLawImplementation< TypeTag, GetPropType< TypeTag, Properties::GridGeometry >::discMethod > FouriersLaw
Evaluates the heat conduction flux according to Fouriers's law.
Definition flux/fourierslaw.hh:44
FicksLawImplementation< TypeTag, GetPropType< TypeTag, Properties::GridGeometry >::discMethod, referenceSystem > FicksLaw
Evaluates the diffusive mass flux according to Fick's law.
Definition flux/fickslaw.hh:44
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:153
typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType
get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(....
Definition propertysystem.hh:149
Definition common/properties.hh:48
Type tag for numeric models.
Definition grid.hh:36
Traits class encapsulating model specifications.
Definition common/properties.hh:66
A class helping models to define input and output fields.
Definition common/properties.hh:76
Definition common/properties.hh:89
Property whether to use moles or kg as amount unit for balance equations.
Definition common/properties.hh:100
The component balance index that should be replaced by the total mass/mole balance.
Definition common/properties.hh:102
The secondary variables within a sub-control volume.
Definition common/properties.hh:118
Container storing the different types of flux variables.
Definition common/properties.hh:124
The type for the calculation of the molecular diffusion fluxes.
Definition common/properties.hh:156
The type for the calculation of the heat conduction fluxes.
Definition common/properties.hh:160
The type of the fluid state to use.
Definition common/properties.hh:169
Returns whether to normalize the pressure term in the momentum balance or not.
Definition common/properties.hh:290
Adds I/O fields specific to the FreeflowNC model.
Definition freeflow/compositional/iofields.hh:39
Traits for the multi-component free-flow model.
Definition navierstokesncmodel.hh:88
static constexpr int replaceCompEqIdx()
Index of of a component balance eq. to be replaced by a total mass/mole balance.
Definition navierstokesncmodel.hh:103
static constexpr auto turbulenceModel()
return the type of turbulence model used
Definition navierstokesncmodel.hh:109
static constexpr bool useMoles()
Use moles or not.
Definition navierstokesncmodel.hh:97
static constexpr bool enableMolecularDiffusion()
The one-phase model has no molecular diffusion.
Definition navierstokesncmodel.hh:100
static constexpr int numFluidComponents()
The number of components.
Definition navierstokesncmodel.hh:94
NavierStokesIndices< dimension > Indices
the indices
Definition navierstokesncmodel.hh:113
static constexpr bool usesTurbulenceModel()
The model does not include a turbulence model.
Definition navierstokesncmodel.hh:106
static constexpr int numEq()
Definition navierstokesncmodel.hh:91
The type tag for the single-phase, multi-component isothermal free-flow model.
Definition navierstokesncmodel.hh:128
std::tuple< FreeFlow > InheritsFrom
Definition navierstokesncmodel.hh:128
The type tag for the single-phase, multi-component non-isothermal free-flow model.
Definition navierstokesncmodel.hh:131
std::tuple< NavierStokesNC > InheritsFrom
Definition navierstokesncmodel.hh:131
NavierStokesNCModelTraits< dim, numComponents, useMoles, replaceCompEqIdx > type
Definition navierstokesncmodel.hh:151
static constexpr bool value
Definition navierstokesncmodel.hh:155
static constexpr int value
Definition navierstokesncmodel.hh:157
static constexpr bool value
Definition navierstokesncmodel.hh:159
FreeflowNCResidual< TypeTag > type
Definition navierstokesncmodel.hh:163
FicksLaw< TypeTag > type
Definition navierstokesncmodel.hh:167
FreeflowNCVolumeVariables< NCTraits< BaseTraits, DT > > type
Definition navierstokesncmodel.hh:188
FreeflowNCFluxVariables< TypeTag > type
Definition navierstokesncmodel.hh:193
FreeflowNCIOFields< NavierStokesIOFields > type
Definition navierstokesncmodel.hh:197
CompositionalFluidState< Scalar, FluidSystem > type
Definition navierstokesncmodel.hh:212
FreeflowNIModelTraits< IsothermalModelTraits > type
Definition navierstokesncmodel.hh:232
FreeflowNonIsothermalIOFields< IsothermalIOFields > type
Definition navierstokesncmodel.hh:242
FouriersLaw< TypeTag > type
Definition navierstokesncmodel.hh:247
Volume variables for the single-phase, multi-component free-flow model.
Definition freeflow/compositional/volumevariables.hh:40
The common indices for the isothermal Navier-Stokes model.
Definition freeflow/navierstokes/indices.hh:37
Traits for the Navier-Stokes model.
Definition freeflow/navierstokes/model.hh:77
Traits class for the volume variables of the Navier-Stokes model.
Definition freeflow/navierstokes/model.hh:125
Adds I/O fields specific to non-isothermal free-flow models.
Definition freeflow/nonisothermal/iofields.hh:38
Specifies a number properties of non-isothermal free-flow flow models based on the specifics of a giv...
Definition freeflow/nonisothermal/model.hh:59
Represents all relevant thermodynamic quantities of a multi-phase, multi-component fluid system assum...
Definition compositional.hh:47
Declares all properties used in Dumux.
A single-phase, isothermal Navier-Stokes model.
A single-phase, non-isothermal free-flow model.
Fick's law specilized for different discretization schemes. This file contains the data which is requ...
Fourier's law specialized for different discretization schemes This file contains the data which is r...
The flux variables class for the multi-component free-flow model. This is a convenience alias for tha...
Indices for the non-isothermal Navier-Stokes model.
Adds I/O fields specific to the FreeflowNC model.
Adds I/O fields specific to non-isothermal free-flow models.
The local residual class for the multi-component free-flow model (balance equations)....
Volume variables for the single-phase, multi-component free-flow model.