version 3.9-dev
Dumux::FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > Class Template Reference

A spatial params implementation for 1p problem with constant properties.

#include <dumux/porousmediumflow/fvspatialparams1pconstant.hh>

Inheritance diagram for Dumux::FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar >:

Public Types

using PermeabilityType = Scalar
 

Public Member Functions

 FVPorousMediumFlowSpatialParamsOnePConstant (std::shared_ptr< const GridGeometry > gridGeometry)
 
PermeabilityType permeabilityAtPos (const GlobalPosition &globalPos) const
 The (intrinsic) permeability \([m^2]\). More...
 
Scalar porosityAtPos (const GlobalPosition &globalPos) const
 The porosity \([-]\). More...
 
Scalar temperatureAtPos (const GlobalPosition &globalPos) const
 The temperature \([K]\). More...
 
decltype(auto) permeability (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Function for defining the (intrinsic) permeability \([m^2]\). 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...
 
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 inertVolumeFraction (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol, int compIdx) const
 
Scalar inertVolumeFraction (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol, int compIdx) const
 
Scalar extrusionFactor (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return how much the domain is extruded at a given sub-control volume. More...
 
Scalar extrusionFactorAtPos (const GlobalPosition &globalPos) const
 Return how much the domain is extruded at a given position. More...
 
Scalar temperature (const Element &element, const SubControlVolume &scv, const ElementSolution &elemSol) const
 Return the temperature in the given sub-control volume. More...
 
Scalar temperatureAtPos (const GlobalPosition &globalPos) const
 Return the temperature in the domain at the given position. More...
 
const GravityVector & gravity (const GlobalPosition &pos) const
 Returns the acceleration due to gravity \(\mathrm{[m/s^2]}\). 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

FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > & asImp_ ()
 Returns the implementation of the spatial parameters (static polymorphism) More...
 
const FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > & asImp_ () const
 Returns the implementation of the spatial parameters (static polymorphism) More...
 

Member Typedef Documentation

◆ PermeabilityType

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

Constructor & Destructor Documentation

◆ FVPorousMediumFlowSpatialParamsOnePConstant()

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

Member Function Documentation

◆ asImp_() [1/2]

FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > & Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::asImp_ ( )
inlineprotectedinherited

◆ asImp_() [2/2]

const FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > & Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::asImp_ ( ) const
inlineprotectedinherited

◆ beaversJosephCoeffAtPos()

Scalar Dumux::FVPorousMediumFlowSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::beaversJosephCoeffAtPos ( const GlobalPosition &  globalPos) const
inlineinherited
Returns
Beavers-Joseph coefficient \(\mathrm{[-]}\)
Parameters
globalPosThe global position

◆ evaluatePermeabilityAtScvfIP()

static constexpr bool Dumux::FVPorousMediumFlowSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::evaluatePermeabilityAtScvfIP ( )
inlinestaticconstexprinherited

◆ extrusionFactor()

Scalar Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::extrusionFactor ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

This means the factor by which a lower-dimensional (1D or 2D) entity needs to be expanded to get a full dimensional cell. The default is 1.0 which means that 1D problems are actually thought as pipes with a cross section of 1 m^2 and 2D problems are assumed to extend 1 m to the back.

◆ extrusionFactorAtPos()

Scalar Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::extrusionFactorAtPos ( const GlobalPosition &  globalPos) const
inlineinherited

◆ forchCoeff()

Scalar Dumux::FVPorousMediumFlowSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::forchCoeff ( const SubControlVolumeFace &  scvf) const
inlineinherited
Parameters
scvfThe sub-control volume face where the intrinsic velocity ought to be calculated.

◆ gravity()

const GravityVector & Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::gravity ( const GlobalPosition &  pos) const
inlineinherited

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 evaluate the gravity vector

◆ gridGeometry()

const GridGeometry & Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::gridGeometry ( ) const
inlineinherited

◆ inertVolumeFraction() [1/3]

Scalar Dumux::FVPorousMediumSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::inertVolumeFraction ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol,
int  compIdx 
) const
inlineinherited
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/3]

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

◆ inertVolumeFraction() [3/3]

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

◆ permeability()

decltype(auto) Dumux::FVPorousMediumFlowSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::permeability ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited
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

◆ permeabilityAtPos()

template<class GridGeometry , class Scalar >
PermeabilityType Dumux::FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar >::permeabilityAtPos ( const GlobalPosition &  globalPos) const
inline

◆ porosity()

Scalar Dumux::FVPorousMediumSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::porosity ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited
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

◆ porosityAtPos()

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

◆ temperature()

Scalar Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::temperature ( const Element &  element,
const SubControlVolume &  scv,
const ElementSolution &  elemSol 
) const
inlineinherited

◆ temperatureAtPos() [1/2]

Scalar Dumux::FVSpatialParams< GridGeometry, Scalar, FVPorousMediumFlowSpatialParamsOnePConstant< GridGeometry, Scalar > >::temperatureAtPos ( const GlobalPosition &  globalPos) const
inlineinherited
Parameters
globalPosThe position in global coordinates where the temperature should be specified.

◆ temperatureAtPos() [2/2]

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

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