3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
Dumux::ForchheimersLawImplementation< TypeTag, ForchheimerVelocity, DiscretizationMethods::Box > Class Template Reference

Forchheimer's law for box scheme. More...

#include <dumux/flux/box/forchheimerslaw.hh>

Inheritance diagram for Dumux::ForchheimersLawImplementation< TypeTag, ForchheimerVelocity, DiscretizationMethods::Box >:

Description

template<class TypeTag, class ForchheimerVelocity>
class Dumux::ForchheimersLawImplementation< TypeTag, ForchheimerVelocity, DiscretizationMethods::Box >

Forchheimer's law for box scheme.

Public Types

using Scalar = GetPropType< TypeTag, Properties::Scalar >
 state the scalar type of the law More...
 
using DiscretizationMethod = DiscretizationMethods::Box
 

Static Public Member Functions

static Scalar flux (const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf, int phaseIdx, const ElementFluxVarsCache &elemFluxVarsCache)
 Compute the advective flux of a phase across the given sub-control volume face using the Forchheimer equation. More...
 
static Scalar calculateTransmissibility (const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf)
 
static DimWorldMatrix calculateHarmonicMeanSqrtPermeability (const Problem &problem, const ElementVolumeVariables &elemVolVars, const SubControlVolumeFace &scvf)
 Returns the harmonic mean of \(\sqrt{K_0}\) and \(\sqrt{K_1}\). More...
 

Static Public Attributes

static constexpr DiscretizationMethod discMethod
 state the discretization method this implementation belongs to More...
 

Member Typedef Documentation

◆ DiscretizationMethod

◆ Scalar

state the scalar type of the law

Member Function Documentation

◆ calculateHarmonicMeanSqrtPermeability()

static DimWorldMatrix Dumux::BoxForchheimersLaw< GetPropType< TypeTag, Properties::Scalar > , GetPropType< TypeTag, Properties::GridGeometry > , ForchheimerVelocity >::calculateHarmonicMeanSqrtPermeability ( const Problem &  problem,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolumeFace &  scvf 
)
inlinestaticinherited

Returns the harmonic mean of \(\sqrt{K_0}\) and \(\sqrt{K_1}\).

This is a specialization for scalar-valued permeabilities which returns a tensor with identical diagonal entries.

◆ calculateTransmissibility()

static Scalar Dumux::BoxForchheimersLaw< GetPropType< TypeTag, Properties::Scalar > , GetPropType< TypeTag, Properties::GridGeometry > , ForchheimerVelocity >::calculateTransmissibility ( const Problem &  problem,
const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolumeFace &  scvf 
)
inlinestaticinherited

The flux variables cache has to be bound to an element prior to flux calculations During the binding, the transmissibility will be computed and stored using the method below.

◆ flux()

static Scalar Dumux::BoxForchheimersLaw< GetPropType< TypeTag, Properties::Scalar > , GetPropType< TypeTag, Properties::GridGeometry > , ForchheimerVelocity >::flux ( const Problem &  problem,
const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const SubControlVolumeFace &  scvf,
int  phaseIdx,
const ElementFluxVarsCache &  elemFluxVarsCache 
)
inlinestaticinherited

Compute the advective flux of a phase across the given sub-control volume face using the Forchheimer equation.

The flux is given in N*m, and can be converted into a volume flux (m^3/s) or mass flux (kg/s) by applying an upwind scheme for the mobility or the product of density and mobility, respectively.

Member Data Documentation

◆ discMethod

constexpr DiscretizationMethod Dumux::BoxForchheimersLaw< GetPropType< TypeTag, Properties::Scalar > , GetPropType< TypeTag, Properties::GridGeometry > , ForchheimerVelocity >::discMethod
staticconstexprinherited

state the discretization method this implementation belongs to


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