3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Files | Classes | Typedefs | Functions
Fluid-Matrix Interactions

e.g. pc-Sw, kr-Sw relations, effective diffusion coefficients More...

Description

e.g. pc-Sw, kr-Sw relations, effective diffusion coefficients

Some parameters are functions of the fluid state as well as parameters of the matrix. For example the capillary pressure is a function of the phase saturation and the shape parameter \(\lambda\) which is dependent on the material. All such relations are gathered in this module.

Files

file  thermalconductivityaverage.hh
 Reation for a simple effective thermal conductivity.
 
file  fluidsolidinterfacialareashiwang.hh
 Description of a interfacial area between solid and fluid phase.
 
file  brookscorey.hh
 Implementation of the capillary pressure and relative permeability <-> saturation relations according to Brooks and Corey.
 
file  datasplinemateriallaw.hh
 Pc- and Kr-sw curves based on monotone splines through given data points.
 
file  efftoabsdefaultpolicy.hh
 This is a policy for 2p material laws how to convert absolute to relative saturations and vice versa.
 
file  heatpipelaw.hh
 Implementation of the capillary pressure <-> saturation relation for the heatpipe problem.
 
file  exponential.hh
 Specification of a function relating volume specific interfacial area to capillary pressure and saturation. This function is exponential.
 
file  exponentialcubic.hh
 Specification of a function relating volume specific interfacial area to capillary pressure and saturation. This function is of third order in pc.
 
file  interfacialarea.hh
 Implementation helper for capillary-pressure-saturation-interfacial-area relations.
 
file  pcmax.hh
 Specification of a function relating volume specific interfacial area to capillary pressure and saturation. This parametrization uses a maximum value of capillary pressure.
 
file  polynomial2ndorder.hh
 Specification of a function relating volume specific interfacial area to capillary pressure and saturation. This parametrization is a second order polynomial.
 
file  polynomialedgezero2ndorder.hh
 Specification of a function relating volume specific interfacial area to capillary pressure and saturation. This parametrization is a second order polynomial which is zero for saturations of zero and one.
 
file  linearmaterial.hh
 Linear capillary pressure and relative permeability <-> saturation relations.
 
file  materiallaw.hh
 Implementation helper for capillary pressure and relative permeability <-> saturation relations for two-phase models.
 
file  noregularization.hh
 A tag to turn off regularization and it's overhead.
 
file  smoothedlinearlaw.hh
 Implementation of the capillary pressure / relPerm <-> saturation relation using a linear relation smoothed at the upper and lower bounds for kr.
 
file  splinemateriallaw.hh
 A spline approximation wrapper for 2p material laws.
 
file  johansen.hh
 Relation for the saturation-dependent effective thermal conductivity.
 
file  simplefluidlumping.hh
 Relation for the saturation-dependent effective thermal conductivity.
 
file  somerton.hh
 Relation for the saturation-dependent effective thermal conductivity.
 
file  vangenuchten.hh
 Implementation of the capillary pressure and relative permeability <-> saturation relations according to van Genuchten.
 
file  napladsorption.hh
 Implementation of a NAPL adsorption model.
 
file  parkervangenuchten.hh
 Implementation of van Genuchten's capillary pressure-saturation relation for three phases.
 
file  thermalconductivitysomerton3p.hh
 Relation for the saturation-dependent effective thermal conductivity.
 
file  diffusivityconstanttortuosity.hh
 Relation for the saturation-dependent effective diffusion coefficient.
 
file  diffusivitymillingtonquirk.hh
 Relation for the saturation-dependent effective diffusion coefficient.
 
file  fulltensor.hh
 
file  scheidegger.hh
 
file  fluidmatrixinteraction.hh
 Wrapper type to combine an arbitrary number of different laws for fluid-matrix interaction (e.g., pc-Sw-curves).
 
file  frictionlaw.hh
 
file  manning.hh
 
file  nikuradse.hh
 
file  nofriction.hh
 
file  mpadapter.hh
 Makes the capillary pressure-saturation relations available under the M-phase API for material laws.
 
file  mplinearmaterial.hh
 Implements a linear saturation-capillary pressure relation.
 
file  permeabilitykozenycarman.hh
 The Kozeny-Carman relationship for the calculation of a porosity-dependent permeability.
 
file  localrulesforplatonicbody.hh
 Pore-local pc-Sw curves for for platonic bodies (tetrahedron, cube, octahedron, dodecahedron, icosahedron).
 
file  multishapelocalrules.hh
 Implementation of capillary pressure curves for multiple pore body geometries.
 
file  singleshapelocalrules.hh
 Base classes for standard pore-local pc-Sw curves.
 
file  emptycache.hh
 An empty cache for transmissibility laws using only standard quantities.
 
file  thresholdcapillarypressures.hh
 Specification of threshold capillary pressures for the PNM.
 
file  transmissibility1p.hh
 Implementation of the single-phase transmissibility laws for throats.
 
file  transmissibility2p.hh
 Implementation of the transmissibility laws for throats.
 
file  porositydeformation.hh
 A relationship for the porosity of a porous medium under mechanical deformation.
 
file  porosityprecipitation.hh
 Class for the evaluation of the porosity subject to precipitation.
 

Classes

class  Dumux::ThermalConductivityAverage< Scalar >
 Relation for a simple effective thermal conductivity. More...
 
class  Dumux::FluidSolidInterfacialAreaShiWang< Scalar >
 Description of a interfacial area between solid and fluid phase. More...
 
class  Dumux::FluidMatrix::BrooksCorey
 Implementation of the Brooks-Corey capillary pressure <-> saturation relation. This class bundles the "raw" curves as static members and doesn't concern itself converting absolute to effective saturations and vice versa. More...
 
class  Dumux::FluidMatrix::BrooksCoreyRegularization< Scalar >
 A regularization for the BrooksCorey material law. More...
 
class  Dumux::FluidMatrix::DataSplineTwoPMaterialLaw< S, approximatePcSwInverse >
 Pc- and Kr-sw curves based on monotone splines through given data points. More...
 
class  Dumux::FluidMatrix::TwoPEffToAbsDefaultPolicy
 This is a policy for 2p material laws how to convert absolute to relative saturations and vice versa. More...
 
class  Dumux::FluidMatrix::HeatPipeLaw< ScalarType, EffToAbsPolicy >
 Implementation of the capillary pressure <-> saturation relation for the heatpipe problem. More...
 
class  Dumux::FluidMatrix::InterfacialAreaExponential
 Implementation of the exponential function relating specific interfacial area to wetting phase saturation and capillary pressure as suggested by Nuske(2009) (Diploma thesis) [48] . More...
 
class  Dumux::FluidMatrix::InterfacialAreaExponentialCubic
 Implementation of a exponential function relating specific interfacial area to wetting phase saturation and capillary pressure. More...
 
class  Dumux::FluidMatrix::InterfacialArea< ScalarType, BaseLaw, InterfaceType, Regularization, EffToAbsPolicy >
 Wrapper class to implement regularized laws (pc-sw-a) with a conversion policy between absolution and effective saturations. More...
 
class  Dumux::FluidMatrix::InterfacialAreaPcMax
 Implementation of the polynomial of second order relating specific interfacial area to wetting phase saturation and capillary pressure. More...
 
class  Dumux::FluidMatrix::InterfacialAreaPolynomialSecondOrder
 Implementation of the polynomial of second order relating specific interfacial area to wetting phase saturation and capillary pressure as suggested by Joekar-Niasar(2008) [34] . More...
 
class  Dumux::FluidMatrix::InterfacialAreaolynomialEdgeZero2ndOrder
 Implementation of the polynomial of second order relating specific interfacial area to wetting phase saturation and capillary pressure. More...
 
class  Dumux::FluidMatrix::LinearMaterial
 Linear capillary pressure and relative permeability <-> saturation relations. More...
 
class  Dumux::FluidMatrix::TwoPMaterialLaw< ScalarType, BaseLaw, Regularization, EffToAbsPolicy >
 Wrapper class to implement regularized material laws (pc-sw, kr-sw) with a conversion policy between absolution and effective saturations. More...
 
struct  Dumux::FluidMatrix::NoRegularization
 A tag to turn off regularization and it's overhead. More...
 
class  Dumux::FluidMatrix::SmoothedLinearLaw< ScalarType, EffToAbsPolicy >
 Implements a linear saturation-capillary pressure relation. More...
 
class  Dumux::FluidMatrix::SplineTwoPMaterialLaw< TwoPMaterialLaw, approximatePcSwInverse >
 A spline approximation wrapper for 2p material laws. More...
 
class  Dumux::ThermalConductivityJohansen< Scalar >
 Relation for the saturation-dependent effective thermal conductivity. More...
 
class  Dumux::ThermalConductivitySimpleFluidLumping< Scalar >
 Relation for the saturation-dependent effective thermal conductivity. More...
 
class  Dumux::ThermalConductivitySomerton< Scalar >
 Relation for the saturation-dependent effective thermal conductivity. More...
 
class  Dumux::FluidMatrix::VanGenuchten
 Implementation of the van Genuchten capillary pressure <-> saturation relation, and relative permeability. More...
 
class  Dumux::FluidMatrix::VanGenuchtenRegularization< Scalar >
 A regularization for the VanGenuchten material law. More...
 
class  Dumux::FluidMatrix::ThreePNAPLAdsorption< Scalar >
 Implementation of a NAPL adsorption model. More...
 
class  Dumux::FluidMatrix::ParkerVanGenuchten3P
 Implementation of Parker/vanGenuchten's capillary pressure <-> saturation relation for three phases. This class bundles the "raw" curves as static members and doesn't concern itself converting absolute to effective saturations and vince versa. More...
 
class  Dumux::FluidMatrix::ParkerVanGenuchten3PRegularization< Scalar >
 A regularization for the ParkerVanGenuchten3PRegularization material law. More...
 
class  Dumux::FluidMatrix::ParkerVanGenuchtenMaterialLaw< ScalarType, BaseLaw, Regularization, EffToAbsPolicy >
 Parker van Genuchten material law. More...
 
class  Dumux::DiffusivityConstantTortuosity< Scalar >
 Relation for the saturation-dependent effective diffusion coefficient. More...
 
class  Dumux::DiffusivityMillingtonQuirk< Scalar >
 Relation for the saturation-dependent effective diffusion coefficient. More...
 
class  Dumux::FullDispersionTensor< TypeTag >
 Full dispersion tensor. More...
 
class  Dumux::ScheideggersDispersionTensor< TypeTag >
 Scheidegger's dispersion tensor. More...
 
struct  Dumux::FluidMatrixInteraction< Laws >
 Wrapper type to combine an arbitrary number of different laws for fluid-matrix interaction (e.g., pc-Sw-curves). More...
 
struct  Dumux::FluidMatrix::Adapter< A, Wrapper >
 Adapter to inherit from, allowing the inheriting class to be wrapped by the makeFluidMatrixInteraction function. More...
 
class  Dumux::FluidMatrix::PcKrSw< T >
 Wrapper type for laws providing pc-Sw and kr-Sw rules. More...
 
class  Dumux::FluidMatrix::MultiPhasePcKrSw< T >
 Wrapper type for multiphase interface laws providing pc-S and kr-S rules. More...
 
struct  Dumux::FluidMatrix::ThreePhasePcKrSw< T >
 Wrapper type for 3p interface laws providing pc-S and kr-S rules. More...
 
class  Dumux::FluidMatrix::WettingNonwettingInterfacialAreaPcSw< T >
 Wrapper type for laws providing rules for the wetting-nonwetting interfacial area. More...
 
class  Dumux::FluidMatrix::WettingSolidInterfacialAreaPcSw< T >
 Wrapper type for laws providing rules for the wetting-solid interfacial area. More...
 
class  Dumux::FluidMatrix::NonwettingSolidInterfacialAreaPcSw< T >
 Wrapper type for laws providing rules for the nonwetting-solid interfacial area. More...
 
class  Dumux::FluidMatrix::Adsorption< T >
 Wrapper type for adsorption laws. More...
 
class  Dumux::FrictionLaw< VolumeVariables >
 Implementation of the abstract base class for friction laws. More...
 
class  Dumux::FrictionLawManning< VolumeVariables >
 Implementation of the friction law after Manning. More...
 
class  Dumux::FrictionLawNikuradse< VolumeVariables >
 Implementation of the friction law after Nikuradse. More...
 
class  Dumux::FrictionLawNoFriction< VolumeVariables >
 A pseudo friction law with no bottom friction. More...
 
class  Dumux::FluidMatrix::MPAdapter< MaterialLaw, numFluidPhases >
 An adapter for mpnc to use the capillary pressure-saturation relationships. More...
 
class  Dumux::FluidMatrix::MPLinearMaterial< S, numFluidPhases >
 Implements a linear saturation-capillary pressure relation. More...
 
class  Dumux::PermeabilityKozenyCarman< PermeabilityType >
 The Kozeny-Carman relationship for the calculation of a porosity-dependent permeability. When the porosity is implemented as solution-independent, using this relationship for the permeability leads to unnecessary overhead. More...
 
struct  Dumux::PoreNetwork::FluidMatrix::TwoPLocalRulesPlatonicBody< shape >
 Implementation of the simplified pore-local capillary pressure-saturation curve for platonic bodies (tetrahedron, cube, octahedron, dodecahedron, icosahedron). More...
 
class  Dumux::PoreNetwork::FluidMatrix::TwoPLocalRulesPlatonicBodyRegularization< Scalar, BaseLaw >
 Two-phase rules for regularizing the pc-SW for platonic bodies. More...
 
struct  Dumux::PoreNetwork::FluidMatrix::LocalRulesTraits< ScalarT >
 LocalRulesTraits for implementation of capillary pressure curves for multiple pore body geometries. More...
 
class  Dumux::PoreNetwork::FluidMatrix::MultiShapeTwoPLocalRules< ScalarT >
 Implementation of capillary pressure curves for multiple pore body geometries. More...
 
class  Dumux::PoreNetwork::FluidMatrix::SingleShapeTwoPLocalRules< ScalarType, BaseLaw, Regularization >
 Base class for all standard pore-local pc-Sw curves. More...
 
class  Dumux::PoreNetwork::TransmissibilityBruus< Scalar >
 Collection of single-phase flow throat transmissibilities based on Bruus, H. (2011). Acoustofluidics 1: Governing equations in microfluidics. Lab on a Chip, 11(22), 3742-3751. https://backend.orbit.dtu.dk/ws/portalfiles/portal/5900070/rsc%5B1%5D.pdf. More...
 
class  Dumux::PoreNetwork::TransmissibilityPatzekSilin< Scalar, considerPoreResistance, interpolateK >
 Single-phase flow throat transmissibility based on Patzek & Silin (2001) https://doi.org/10.1006/jcis.2000.7413. More...
 
class  Dumux::PorosityDeformation< Scalar >
 A relationship for the porosity of a porous medium under mechanical deformation. More...
 
class  Dumux::PorosityPrecipitation< Scalar, numComp, numSolidPhases >
 Calculates the porosity depending on the volume fractions of precipitated minerals. More...
 

Typedefs

template<typename Scalar = double>
using Dumux::FluidMatrix::BrooksCoreyDefault = TwoPMaterialLaw< Scalar, BrooksCorey, BrooksCoreyRegularization< Scalar >, TwoPEffToAbsDefaultPolicy >
 A default configuration for using the VanGenuchten material law. More...
 
template<typename Scalar = double>
using Dumux::FluidMatrix::BrooksCoreyNoReg = TwoPMaterialLaw< Scalar, BrooksCorey, NoRegularization, TwoPEffToAbsDefaultPolicy >
 A default configuration without regularization for using the VanGenuchten material law. More...
 
template<typename Scalar = double>
using Dumux::FluidMatrix::VanGenuchtenDefault = TwoPMaterialLaw< Scalar, VanGenuchten, VanGenuchtenRegularization< Scalar >, TwoPEffToAbsDefaultPolicy >
 A default configuration for using the VanGenuchten material law. More...
 
template<typename Scalar = double>
using Dumux::FluidMatrix::VanGenuchtenNoReg = TwoPMaterialLaw< Scalar, VanGenuchten, NoRegularization, TwoPEffToAbsDefaultPolicy >
 A default configuration without regularization for using the VanGenuchten material law. More...
 
template<class Scalar >
using Dumux::FluidMatrix::ParkerVanGenuchten3PNoReg = ParkerVanGenuchtenMaterialLaw< Scalar, ParkerVanGenuchten3P, NoRegularization, ParkerVanGenuchten3PEffToAbsPolicy >
 A configuration for using the ParkerVanGenuchten material law without regularization. More...
 
template<class Scalar >
using Dumux::FluidMatrix::ParkerVanGenuchten3PDefault = ParkerVanGenuchtenMaterialLaw< Scalar, ParkerVanGenuchten3P, ParkerVanGenuchten3PRegularization< Scalar >, ParkerVanGenuchten3PEffToAbsPolicy >
 A default configuration for using the ParkerVanGenuchten material law. More...
 

Functions

template<class... Laws>
auto Dumux::makeFluidMatrixInteraction (Laws &&... laws)
 Helper function to create an FluidMatrixInteraction object containing an arbitrary number of fluid matrix interaction laws (e.g., pc-Sw curves and interfacial area laws). To be used in the spatial parameters. More...
 
template<typename T >
 Dumux::FluidMatrix::PcKrSw (T &&) -> PcKrSw< T >
 Deduction guide for the PcKrSw class. Makes sure that PcKrSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::MultiPhasePcKrSw (T &&) -> MultiPhasePcKrSw< T >
 Deduction guide for the MultiPhasePcKrSw class. Makes sure that MultiPhasePcKrSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::ThreePhasePcKrSw (T &&) -> ThreePhasePcKrSw< T >
 Deduction guide for the ThreePhasePcKrSw class. Makes sure that ThreePhasePcKrSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::WettingNonwettingInterfacialAreaPcSw (T &&) -> WettingNonwettingInterfacialAreaPcSw< T >
 Deduction guide for the WettingNonwettingInterfacialAreaPcSw class. Makes sure that WettingNonwettingInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::WettingSolidInterfacialAreaPcSw (T &&) -> WettingSolidInterfacialAreaPcSw< T >
 Deduction guide for the WettingSolidInterfacialAreaPcSw class. Makes sure that WettingSolidInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::NonwettingSolidInterfacialAreaPcSw (T &&) -> NonwettingSolidInterfacialAreaPcSw< T >
 Deduction guide for the NonwettingSolidInterfacialAreaPcSw class. Makes sure that NonwettingSolidInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::Adsorption (T &&) -> Adsorption< T >
 Deduction guide for the Adsorption class. Makes sure that Adsorption stores a copy of T if the constructor is called with a temporary object. More...
 
template<typename T >
 Dumux::FluidMatrix::MPAdapter (T &&) -> MPAdapter< T >
 Deduction guide for the MPAdapter class. Makes sure that MPAdapter stores a copy of T if the constructor is called with a temporary object. More...
 

Typedef Documentation

◆ BrooksCoreyDefault

template<typename Scalar = double>
using Dumux::FluidMatrix::BrooksCoreyDefault = typedef TwoPMaterialLaw<Scalar, BrooksCorey, BrooksCoreyRegularization<Scalar>, TwoPEffToAbsDefaultPolicy>

A default configuration for using the VanGenuchten material law.

◆ BrooksCoreyNoReg

A default configuration without regularization for using the VanGenuchten material law.

◆ ParkerVanGenuchten3PDefault

A default configuration for using the ParkerVanGenuchten material law.

◆ ParkerVanGenuchten3PNoReg

A configuration for using the ParkerVanGenuchten material law without regularization.

◆ VanGenuchtenDefault

A default configuration for using the VanGenuchten material law.

◆ VanGenuchtenNoReg

A default configuration without regularization for using the VanGenuchten material law.

Function Documentation

◆ Adsorption()

template<typename T >
Dumux::FluidMatrix::Adsorption ( T &&  ) -> Adsorption< T >

Deduction guide for the Adsorption class. Makes sure that Adsorption stores a copy of T if the constructor is called with a temporary object.

◆ makeFluidMatrixInteraction()

template<class... Laws>
auto Dumux::makeFluidMatrixInteraction ( Laws &&...  laws)

Helper function to create an FluidMatrixInteraction object containing an arbitrary number of fluid matrix interaction laws (e.g., pc-Sw curves and interfacial area laws). To be used in the spatial parameters.

◆ MPAdapter()

template<typename T >
Dumux::FluidMatrix::MPAdapter ( T &&  ) -> MPAdapter< T >

Deduction guide for the MPAdapter class. Makes sure that MPAdapter stores a copy of T if the constructor is called with a temporary object.

◆ MultiPhasePcKrSw()

template<typename T >
Dumux::FluidMatrix::MultiPhasePcKrSw ( T &&  ) -> MultiPhasePcKrSw< T >

Deduction guide for the MultiPhasePcKrSw class. Makes sure that MultiPhasePcKrSw stores a copy of T if the constructor is called with a temporary object.

◆ NonwettingSolidInterfacialAreaPcSw()

Deduction guide for the NonwettingSolidInterfacialAreaPcSw class. Makes sure that NonwettingSolidInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object.

◆ PcKrSw()

template<typename T >
Dumux::FluidMatrix::PcKrSw ( T &&  ) -> PcKrSw< T >

Deduction guide for the PcKrSw class. Makes sure that PcKrSw stores a copy of T if the constructor is called with a temporary object.

◆ ThreePhasePcKrSw()

template<typename T >
Dumux::FluidMatrix::ThreePhasePcKrSw ( T &&  ) -> ThreePhasePcKrSw< T >

Deduction guide for the ThreePhasePcKrSw class. Makes sure that ThreePhasePcKrSw stores a copy of T if the constructor is called with a temporary object.

◆ WettingNonwettingInterfacialAreaPcSw()

Deduction guide for the WettingNonwettingInterfacialAreaPcSw class. Makes sure that WettingNonwettingInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object.

◆ WettingSolidInterfacialAreaPcSw()

Deduction guide for the WettingSolidInterfacialAreaPcSw class. Makes sure that WettingSolidInterfacialAreaPcSw stores a copy of T if the constructor is called with a temporary object.