Wrapper class to implement regularized laws (pc-sw-a) with a conversion policy between absolution and effective saturations. More...
#include <dumux/material/fluidmatrixinteractions/2p/interfacialarea/interfacialarea.hh>
ScalarType | the scalar type |
BaseLaw | the base law (e.g. VanGenuchten, BrooksCorey, Linear, ...) |
Regularization | the regularization type (set to NoAwnRegularization to turn it off) |
EffToAbsPolicy | the policy how to convert effective <-> absolute saturations |
Public Types | |
using | Scalar = ScalarType |
using | BasicParams = typename BaseLaw::template Params< Scalar > |
using | EffToAbsParams = typename EffToAbsPolicy::template Params< Scalar > |
using | RegularizationParams = typename Regularization::template Params< Scalar > |
using | EffToAbs = EffToAbsPolicy |
Public Member Functions | |
InterfacialArea ()=delete | |
Deleted default constructor (so we are never in an undefined state) More... | |
InterfacialArea (const std::string ¶mGroup) | |
Construct from a subgroup from the global parameter tree. More... | |
InterfacialArea (const BasicParams &baseParams, const EffToAbsParams &effToAbsParams={}, const RegularizationParams ®Params={}) | |
Construct from parameter structs. More... | |
template<bool enableRegularization = isRegularized()> | |
Scalar | area (const Scalar sw, const Scalar pc) const |
The capillary pressure-saturation curve. More... | |
template<bool enableRegularization = isRegularized()> | |
Scalar | darea_dpc (const Scalar sw, const Scalar pc) const |
The partial derivative of the capillary pressure w.r.t. the saturation. More... | |
template<bool enableRegularization = isRegularized()> | |
Scalar | darea_dsw (const Scalar sw, const Scalar pc) const |
The partial derivative of the saturation to the capillary pressure. More... | |
bool | operator== (const InterfacialArea &o) const |
Equality comparison with another instance. More... | |
const BasicParams & | basicParams () const |
Return the base law's parameters. More... | |
const EffToAbsParams & | effToAbsParams () const |
Return the parameters of the EffToAbs policy. More... | |
Static Public Member Functions | |
static constexpr bool | isRegularized () |
Return whether this law is regularized. More... | |
static BasicParams | makeBasicParams (const std::string ¶mGroup) |
Create the base law's parameters using input file parameters. More... | |
static EffToAbsParams | makeEffToAbsParams (const std::string ¶mGroup) |
Create the parameters of the EffToAbs policy using input file parameters. More... | |
using Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >::BasicParams = typename BaseLaw::template Params<Scalar> |
using Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >::EffToAbs = EffToAbsPolicy |
using Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >::EffToAbsParams = typename EffToAbsPolicy::template Params<Scalar> |
using Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >::RegularizationParams = typename Regularization::template Params<Scalar> |
using Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >::Scalar = ScalarType |
|
delete |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestaticconstexpr |
|
inlinestatic |
|
inlinestatic |
|
inline |