3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
Dumux::CombustionSpatialParams< GridGeometry, Scalar > Class Template Reference

Definition of the spatial parameters for the one component combustion problem. More...

#include <test/porousmediumflow/mpnc/implicit/thermalnonequilibrium/spatialparams.hh>

Inheritance diagram for Dumux::CombustionSpatialParams< GridGeometry, Scalar >:
Inheritance graph

Description

template<class GridGeometry, class Scalar>
class Dumux::CombustionSpatialParams< GridGeometry, Scalar >

Definition of the spatial parameters for the one component combustion problem.

Public Types

using PermeabilityType = Scalar
 Export the type used for the permeability. More...
 
using MaterialLaw = EffToAbsLaw< EffectiveLaw >
 Export the material law type used. More...
 
using MaterialLawParams = typename MaterialLaw::Params
 
using FluidSolidInterfacialAreaFormulation = FluidSolidInterfacialAreaShiWang< Scalar >
 
using AwnSurfaceParams = Scalar
 export the types used for interfacial area calculations More...
 
using AwsSurfaceParams = Scalar
 
using AnsSurfaceParams = Scalar
 

Public Member Functions

 CombustionSpatialParams (std::shared_ptr< const GridGeometry > gridGeometry)
 
template<class ElementSolution >
PermeabilityType permeability (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 
template<class ElementSolution >
Scalar porosity (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining the porosity which is possibly solution dependent. More...
 
template<class SolidSystem , class ElementSolution >
Scalar inertVolumeFraction (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol, int compIdx) const
 Function for defining the porosity which is possibly solution dependent. More...
 
template<class FluidSystem >
int wettingPhaseAtPos (const GlobalPosition &globalPos) const
 Function for defining which phase is to be considered as the wetting phase. More...
 
const MaterialLawParamsmaterialLawParamsAtPos (const GlobalPosition &globalPos) const
 Returns a reference to the material parameters of the material law. More...
 
const Scalar characteristicLengthAtPos (const GlobalPosition &globalPos) const
 Returns the characteristic length for the mass transfer. More...
 
const Scalar factorEnergyTransferAtPos (const GlobalPosition &globalPos) const
 Returns the pre factor the the energy transfer. More...
 
bool inOutFlow (const GlobalPosition &globalPos) const
 Returns if the tested position is at the right end of the porous medium. More...
 
Scalar lengthPM () const
 Returns the length of the porous medium domain. More...
 
Scalar interfacialTension () const
 Returns the interfacial tension. More...
 
const Scalar characteristicLength (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return the characteristic length for the mass transfer. More...
 
const Scalar characteristicLengthAtPos (const GlobalPosition &globalPos) const
 Return the characteristic length for the mass transfer. More...
 
const Scalar factorEnergyTransfer (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return the pre-factor the the energy transfer. More...
 
const Scalar factorEnergyTransferAtPos (const GlobalPosition &globalPos) const
 Return the pre factor the the energy transfer. More...
 
const Scalar factorMassTransfer (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return the pre-factor the the mass transfer. More...
 
const Scalar factorMassTransferAtPos (const GlobalPosition &globalPos) const
 Return the pre-factor the the mass transfer. More...
 
decltype(auto) materialLawParams (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining the parameters needed by constitutive relationships (kr-sw, pc-sw, etc.). More...
 
int wettingPhase (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining which phase is to be considered as the wetting phase. More...
 
int wettingPhaseAtPos (const GlobalPosition &globalPos) const
 Function for defining which phase is to be considered as the wetting phase. More...
 
const GlobalPosition & gravity (const GlobalPosition &pos) const
 Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\). More...
 
Scalar harmonicMean (const Scalar T1, const Scalar T2, const GlobalPosition &normal) const
 Harmonic average of a discontinuous scalar field at discontinuity interface (for compatibility reasons with the function below) More...
 
DimWorldMatrix harmonicMean (const DimWorldMatrix &T1, const DimWorldMatrix &T2, const GlobalPosition &normal) const
 Harmonic average of a discontinuous tensorial field at discontinuity interface. More...
 
decltype(auto) permeability (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining the (intrinsic) permeability \([m^2]\). More...
 
Scalar porosity (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining the porosity. That is possibly solution dependent. More...
 
Scalar inertVolumeFraction (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol, int compIdx) const
 Function for defining the solid volume fraction. That is possibly solution dependent. More...
 
Scalar beaversJosephCoeffAtPos (const GlobalPosition &globalPos) const
 Function for defining the Beavers-Joseph coefficient for multidomain problems \(\mathrm{[-]}\). More...
 
Scalar forchCoeff (const SubControlVolumeFace &scvf) const
 Apply the Forchheimer coefficient for inertial forces calculation. More...
 
const GridGeometry & fvGridGeometry () const
 The finite volume grid geometry. More...
 
const GridGeometry & gridGeometry () const
 The finite volume grid geometry. More...
 

Static Public Member Functions

static constexpr bool evaluatePermeabilityAtScvfIP ()
 If the permeability should be evaluated directly at the scvf integration point (for convergence tests with analytical and continuous perm functions) or is evaluated at the scvs (for permeability fields with discontinuities) -> default. More...
 

Protected Member Functions

CombustionSpatialParams< GridGeometry, Scalar > & asImp_ ()
 
const CombustionSpatialParams< GridGeometry, Scalar > & asImp_ () const
 

Member Typedef Documentation

◆ AnsSurfaceParams

using Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::AnsSurfaceParams = Scalar
inherited

◆ AwnSurfaceParams

using Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::AwnSurfaceParams = Scalar
inherited

export the types used for interfacial area calculations

◆ AwsSurfaceParams

using Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::AwsSurfaceParams = Scalar
inherited

◆ FluidSolidInterfacialAreaFormulation

template<class GridGeometry , class Scalar >
using Dumux::CombustionSpatialParams< GridGeometry, Scalar >::FluidSolidInterfacialAreaFormulation = FluidSolidInterfacialAreaShiWang<Scalar>

◆ MaterialLaw

template<class GridGeometry , class Scalar >
using Dumux::CombustionSpatialParams< GridGeometry, Scalar >::MaterialLaw = EffToAbsLaw<EffectiveLaw>

Export the material law type used.

◆ MaterialLawParams

template<class GridGeometry , class Scalar >
using Dumux::CombustionSpatialParams< GridGeometry, Scalar >::MaterialLawParams = typename MaterialLaw::Params

◆ PermeabilityType

template<class GridGeometry , class Scalar >
using Dumux::CombustionSpatialParams< GridGeometry, Scalar >::PermeabilityType = Scalar

Export the type used for the permeability.

Constructor & Destructor Documentation

◆ CombustionSpatialParams()

template<class GridGeometry , class Scalar >
Dumux::CombustionSpatialParams< GridGeometry, Scalar >::CombustionSpatialParams ( std::shared_ptr< const GridGeometry >  gridGeometry)
inline

Member Function Documentation

◆ asImp_() [1/2]

CombustionSpatialParams< GridGeometry, Scalar > & Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::asImp_ ( )
inlineprotectedinherited

◆ asImp_() [2/2]

const CombustionSpatialParams< GridGeometry, Scalar > & Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::asImp_ ( ) const
inlineprotectedinherited

◆ beaversJosephCoeffAtPos()

Scalar Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::beaversJosephCoeffAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Function for defining the Beavers-Joseph coefficient for multidomain problems \(\mathrm{[-]}\).

Returns
Beavers-Joseph coefficient \(\mathrm{[-]}\)
Parameters
globalPosThe global position

◆ characteristicLength()

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::characteristicLength ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Return the characteristic length for the mass transfer.

The position is determined based on the coordinate of the vertex belonging to the considered sub control volume.

◆ characteristicLengthAtPos() [1/2]

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::characteristicLengthAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Return the characteristic length for the mass transfer.

Parameters
globalPosThe position in global coordinates.

◆ characteristicLengthAtPos() [2/2]

template<class GridGeometry , class Scalar >
const Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::characteristicLengthAtPos ( const GlobalPosition &  globalPos) const
inline

Returns the characteristic length for the mass transfer.

Parameters
globalPosThe position in global coordinates.

◆ evaluatePermeabilityAtScvfIP()

static constexpr bool Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::evaluatePermeabilityAtScvfIP ( )
inlinestaticconstexprinherited

If the permeability should be evaluated directly at the scvf integration point (for convergence tests with analytical and continuous perm functions) or is evaluated at the scvs (for permeability fields with discontinuities) -> default.

◆ factorEnergyTransfer()

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::factorEnergyTransfer ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Return the pre-factor the the energy transfer.

The position is determined based on the coordinate of the vertex belonging to the considered sub control volume.

◆ factorEnergyTransferAtPos() [1/2]

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::factorEnergyTransferAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Return the pre factor the the energy transfer.

Parameters
globalPosThe position in global coordinates.

◆ factorEnergyTransferAtPos() [2/2]

template<class GridGeometry , class Scalar >
const Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::factorEnergyTransferAtPos ( const GlobalPosition &  globalPos) const
inline

Returns the pre factor the the energy transfer.

Parameters
globalPosThe position in global coordinates.

◆ factorMassTransfer()

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::factorMassTransfer ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Return the pre-factor the the mass transfer.

The position is determined based on the coordinate of the vertex belonging to the considered sub control volume.

◆ factorMassTransferAtPos()

const Scalar Dumux::FVNonEquilibriumSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::factorMassTransferAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Return the pre-factor the the mass transfer.

Parameters
globalPosThe position in global coordinates.

◆ forchCoeff()

Scalar Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::forchCoeff ( const SubControlVolumeFace &  scvf) const
inlineinherited

Apply the Forchheimer coefficient for inertial forces calculation.

Parameters
scvfThe sub-control volume face where the intrinsic velocity ought to be calculated.

◆ fvGridGeometry()

const GridGeometry & Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::fvGridGeometry ( ) const
inlineinherited

The finite volume grid geometry.

◆ gravity()

const GlobalPosition & Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::gravity ( const GlobalPosition &  pos) const
inlineinherited

Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\).

The default behaviour is a constant gravity vector; if the Problem.EnableGravity parameter is true, \(\boldsymbol{g} = ( 0,\dots,\ -9.81)^T \), else \(\boldsymbol{g} = ( 0,\dots, 0)^T \).

Parameters
posthe spatial position at which to evaulate the gravity vector

◆ gridGeometry()

const GridGeometry & Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::gridGeometry ( ) const
inlineinherited

The finite volume grid geometry.

◆ harmonicMean() [1/2]

DimWorldMatrix Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::harmonicMean ( const DimWorldMatrix &  T1,
const DimWorldMatrix &  T2,
const GlobalPosition &  normal 
) const
inlineinherited

Harmonic average of a discontinuous tensorial field at discontinuity interface.

Note
We do a harmonic average of the part normal to the interface (alpha*I) and an arithmetic average of the tangential part (T - alpha*I).
Returns
the averaged tensor
Parameters
T1first tensor
T2second tensor
normalThe unit normal vector of the interface

◆ harmonicMean() [2/2]

Scalar Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::harmonicMean ( const Scalar  T1,
const Scalar  T2,
const GlobalPosition &  normal 
) const
inlineinherited

Harmonic average of a discontinuous scalar field at discontinuity interface (for compatibility reasons with the function below)

Returns
the averaged scalar
Parameters
T1first scalar parameter
T2second scalar parameter
normalThe unit normal vector of the interface

◆ inertVolumeFraction() [1/2]

Scalar Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::inertVolumeFraction ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol,
int  compIdx 
) const
inlineinherited

Function for defining the solid volume fraction. That is possibly solution dependent.

Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
compIdxThe solid component index
Returns
the volume fraction of the inert solid component with index compIdx
Note
this overload is enable if there is only one inert solid component and the user didn't choose to implement a inertVolumeFractionAtPos overload. It then forwards to the simpler porosity interface. With more than one solid components or active solid components (i.e. dissolution) please overload the more general inertVolumeFraction/inertVolumeFractionAtPos interface.

◆ inertVolumeFraction() [2/2]

template<class GridGeometry , class Scalar >
template<class SolidSystem , class ElementSolution >
Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::inertVolumeFraction ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol,
int  compIdx 
) const
inline

Function for defining the porosity which is possibly solution dependent.

Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
compIdxThe index of the component
Returns
The porosity

◆ inOutFlow()

template<class GridGeometry , class Scalar >
bool Dumux::CombustionSpatialParams< GridGeometry, Scalar >::inOutFlow ( const GlobalPosition &  globalPos) const
inline

Returns if the tested position is at the right end of the porous medium.

◆ interfacialTension()

template<class GridGeometry , class Scalar >
Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::interfacialTension ( ) const
inline

Returns the interfacial tension.

◆ lengthPM()

template<class GridGeometry , class Scalar >
Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::lengthPM ( ) const
inline

Returns the length of the porous medium domain.

◆ materialLawParams()

decltype(auto) Dumux::FVSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::materialLawParams ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Function for defining the parameters needed by constitutive relationships (kr-sw, pc-sw, etc.).

Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
Returns
the material parameters object

◆ materialLawParamsAtPos()

template<class GridGeometry , class Scalar >
const MaterialLawParams & Dumux::CombustionSpatialParams< GridGeometry, Scalar >::materialLawParamsAtPos ( const GlobalPosition &  globalPos) const
inline

Returns a reference to the material parameters of the material law.

Parameters
globalPosThe position in global coordinates.

◆ permeability() [1/2]

decltype(auto) Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::permeability ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Function for defining the (intrinsic) permeability \([m^2]\).

Note
It is possibly solution dependent.
Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
Returns
permeability

◆ permeability() [2/2]

template<class GridGeometry , class Scalar >
template<class ElementSolution >
PermeabilityType Dumux::CombustionSpatialParams< GridGeometry, Scalar >::permeability ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inline

◆ porosity() [1/2]

Scalar Dumux::FVSpatialParamsOneP< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::porosity ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Function for defining the porosity. That is possibly solution dependent.

Note
this can only be used for solids with one inert component (see inertVolumeFraction for the more general interface)
Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
Returns
the porosity

◆ porosity() [2/2]

template<class GridGeometry , class Scalar >
template<class ElementSolution >
Scalar Dumux::CombustionSpatialParams< GridGeometry, Scalar >::porosity ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inline

Function for defining the porosity which is possibly solution dependent.

Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
Returns
The porosity

◆ wettingPhase()

int Dumux::FVSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::wettingPhase ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

Function for defining which phase is to be considered as the wetting phase.

Parameters
elementThe current element
scvThe sub-control volume inside the element.
elemSolThe solution at the dofs connected to the element.
Returns
the wetting phase index

◆ wettingPhaseAtPos() [1/2]

int Dumux::FVSpatialParams< GridGeometry, Scalar, CombustionSpatialParams< GridGeometry, Scalar > >::wettingPhaseAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

Function for defining which phase is to be considered as the wetting phase.

Returns
the wetting phase index
Parameters
globalPosThe global position

◆ wettingPhaseAtPos() [2/2]

template<class GridGeometry , class Scalar >
template<class FluidSystem >
int Dumux::CombustionSpatialParams< GridGeometry, Scalar >::wettingPhaseAtPos ( const GlobalPosition &  globalPos) const
inline

Function for defining which phase is to be considered as the wetting phase.

Parameters
globalPosThe global position
Returns
The wetting phase index

The documentation for this class was generated from the following file: