version 3.10-dev
Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar > Class Template Reference

A regularization for the VanGenuchten material law. More...

#include <dumux/material/fluidmatrixinteractions/2p/vangenuchten.hh>

Description

template<class Scalar>
class Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >
Note
Regularization can be turned of by setting the threshold parameters out of range (runtime) or by replacing this class by NoRegularization (compile time).

Classes

struct  Params
 Regularization parameters. More...
 

Public Member Functions

template<class MaterialLaw >
void init (const MaterialLaw *m, const std::string &paramGroup)
 Initialize the spline. More...
 
template<class MaterialLaw , class BaseParams , class EffToAbsParams >
void init (const MaterialLaw *m, const BaseParams &bp, const EffToAbsParams &etap, const Params< Scalar > &p)
 
bool operator== (const VanGenuchtenRegularization &o) const
 Equality comparison with another instance. More...
 
OptionalScalar< Scalar > pc (const Scalar swe) const
 The regularized capillary pressure-saturation curve regularized part: More...
 
OptionalScalar< Scalar > dpc_dswe (const Scalar swe) const
 The regularized partial derivative of the capillary pressure w.r.t. the saturation. More...
 
OptionalScalar< Scalar > swe (const Scalar pc) const
 The regularized saturation-capillary pressure curve. More...
 
OptionalScalar< Scalar > dswe_dpc (const Scalar pc) const
 The regularized partial derivative of the saturation to the capillary pressure. More...
 
OptionalScalar< Scalar > krw (const Scalar swe) const
 The regularized relative permeability for the wetting phase. More...
 
OptionalScalar< Scalar > dkrw_dswe (const Scalar swe) const
 The regularized derivative of the relative permeability for the wetting phase w.r.t. saturation. More...
 
OptionalScalar< Scalar > krn (const Scalar swe) const
 The regularized relative permeability for the non-wetting phase. More...
 
OptionalScalar< Scalar > dkrn_dswe (const Scalar swe) const
 The regularized derivative of the relative permeability for the non-wetting phase w.r.t. saturation. More...
 

Member Function Documentation

◆ dkrn_dswe()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::dkrn_dswe ( const Scalar  swe) const
inline

◆ dkrw_dswe()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::dkrw_dswe ( const Scalar  swe) const
inline

◆ dpc_dswe()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::dpc_dswe ( const Scalar  swe) const
inline

◆ dswe_dpc()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::dswe_dpc ( const Scalar  pc) const
inline

◆ init() [1/2]

template<class Scalar >
template<class MaterialLaw , class BaseParams , class EffToAbsParams >
void Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::init ( const MaterialLaw *  m,
const BaseParams &  bp,
const EffToAbsParams &  etap,
const Params< Scalar > &  p 
)
inline

◆ init() [2/2]

template<class Scalar >
template<class MaterialLaw >
void Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::init ( const MaterialLaw *  m,
const std::string &  paramGroup 
)
inline

◆ krn()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::krn ( const Scalar  swe) const
inline

◆ krw()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::krw ( const Scalar  swe) const
inline

◆ operator==()

template<class Scalar >
bool Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::operator== ( const VanGenuchtenRegularization< Scalar > &  o) const
inline

◆ pc()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::pc ( const Scalar  swe) const
inline
  • low saturation: extend the \(\mathrm{p_c(S_w)}\) curve with the slope at the regularization point (i.e. no kink).
  • high saturation: connect the high regularization point with \(\mathrm{\overline{S}_w =1}\) with a spline and continue linearly for \(\mathrm{\overline{S}_w > 1}\)

◆ swe()

template<class Scalar >
OptionalScalar< Scalar > Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >::swe ( const Scalar  pc) const
inline

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