Loading web-font TeX/Math/Italic
3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
Dumux::SaturationOverlayFluidState< FluidState > Class Template Reference

This is a fluid state which allows to set the fluid saturations and takes all other quantities from an other fluid state. More...

#include <dumux/material/fluidstates/saturationoverlay.hh>

Description

template<class FluidState>
class Dumux::SaturationOverlayFluidState< FluidState >

This is a fluid state which allows to set the fluid saturations and takes all other quantities from an other fluid state.

Public Types

using Scalar = typename FluidState::Scalar
 export the scalar type More...
 

Public Member Functions

 SaturationOverlayFluidState (const FluidState &fs)
 Constructor. More...
 
 SaturationOverlayFluidState (const SaturationOverlayFluidState &fs)=default
 
 SaturationOverlayFluidState (SaturationOverlayFluidState &&fs)=default
 
SaturationOverlayFluidStateoperator= (const SaturationOverlayFluidState &fs)=default
 
SaturationOverlayFluidStateoperator= (SaturationOverlayFluidState &&fs)=default
 
Scalar saturation (int phaseIdx) const
 Returns the saturation S_\alpha of a fluid phase \alpha in \mathrm{[-]}. More...
 
Scalar moleFraction (int phaseIdx, int compIdx) const
 Returns the molar fraction x^\kappa_\alpha of the component \kappa in fluid phase \alpha in \mathrm{[-]}. More...
 
Scalar massFraction (int phaseIdx, int compIdx) const
 Returns the mass fraction X^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[-]}. More...
 
Scalar averageMolarMass (int phaseIdx) const
 The average molar mass \overline M_\alpha of phase \alpha in \mathrm{[kg/mol]}. More...
 
Scalar molarity (int phaseIdx, int compIdx) const
 The molar concentration c^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[mol/m^3]}. More...
 
Scalar fugacity (int phaseIdx, int compIdx) const
 The fugacity f^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[Pa]}. More...
 
Scalar fugacityCoefficient (int phaseIdx, int compIdx) const
 The fugacity coefficient \Phi^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[-]}. More...
 
Scalar molarVolume (int phaseIdx) const
 The molar volume v_{mol,\alpha} of a fluid phase \alpha in \mathrm{[m^3/mol]}. More...
 
Scalar density (int phaseIdx) const
 The mass density \rho_\alpha of the fluid phase \alpha in \mathrm{[kg/m^3]}. More...
 
Scalar molarDensity (int phaseIdx) const
 The molar density \rho_\alpha of the fluid phase \alpha in \mathrm{[mol/m^3]}. More...
 
Scalar temperature (int phaseIdx) const
 The absolute temperature T_\alpha of a fluid phase \alpha in \mathrm{[K]}. More...
 
Scalar pressure (int phaseIdx) const
 The pressure p_\alpha of a fluid phase \alpha in \mathrm{[Pa]}. More...
 
Scalar enthalpy (int phaseIdx) const
 The specific enthalpy h_\alpha of a fluid phase \alpha in \mathrm{[J/kg]}. More...
 
Scalar internalEnergy (int phaseIdx) const
 The specific internal energy u_\alpha of a fluid phase \alpha in \mathrm{[J/kg]}. More...
 
Scalar viscosity (int phaseIdx) const
 The dynamic viscosity \mu_\alpha of fluid phase \alpha in \mathrm{[Pa s]}. More...
 
void setSaturation (int phaseIdx, Scalar value)
 Set the saturation \mathrm{[-]} of a fluid phase. More...
 

Static Public Attributes

static constexpr int numPhases = FluidState::numPhases
 
static constexpr int numComponents = FluidState::numComponents
 

Protected Attributes

const FluidState * fs_
 
Scalar saturation_ [numPhases] = {}
 

Member Typedef Documentation

◆ Scalar

template<class FluidState >
using Dumux::SaturationOverlayFluidState< FluidState >::Scalar = typename FluidState::Scalar

export the scalar type

Constructor & Destructor Documentation

◆ SaturationOverlayFluidState() [1/3]

template<class FluidState >
Dumux::SaturationOverlayFluidState< FluidState >::SaturationOverlayFluidState ( const FluidState &  fs)
inline

Constructor.

Parameters
fsFluidstate The overlay fluid state copies the saturation from the argument, so it initially behaves exactly like the underlying fluid state.

◆ SaturationOverlayFluidState() [2/3]

template<class FluidState >
Dumux::SaturationOverlayFluidState< FluidState >::SaturationOverlayFluidState ( const SaturationOverlayFluidState< FluidState > &  fs)
default

◆ SaturationOverlayFluidState() [3/3]

template<class FluidState >
Dumux::SaturationOverlayFluidState< FluidState >::SaturationOverlayFluidState ( SaturationOverlayFluidState< FluidState > &&  fs)
default

Member Function Documentation

◆ averageMolarMass()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::averageMolarMass ( int  phaseIdx) const
inline

The average molar mass \overline M_\alpha of phase \alpha in \mathrm{[kg/mol]}.

The average molar mass is the mean mass of a mole of the fluid at current composition. It is defined as the sum of the component's molar masses weighted by the current mole fraction:

\mathrm{ \overline M_\alpha = \sum_\kappa M^\kappa x_\alpha^\kappa}

◆ density()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::density ( int  phaseIdx) const
inline

The mass density \rho_\alpha of the fluid phase \alpha in \mathrm{[kg/m^3]}.

◆ enthalpy()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::enthalpy ( int  phaseIdx) const
inline

The specific enthalpy h_\alpha of a fluid phase \alpha in \mathrm{[J/kg]}.

◆ fugacity()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::fugacity ( int  phaseIdx,
int  compIdx 
) const
inline

The fugacity f^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[Pa]}.

The fugacity is defined as: f_\alpha^\kappa := \Phi^\kappa_\alpha x^\kappa_\alpha p_\alpha \;, where \Phi^\kappa_\alpha is the fugacity coefficient [61] . The physical meaning of fugacity becomes clear from the equation:

f_\alpha^\kappa = p_\alpha \exp\left\{\frac{\zeta^\kappa_\alpha}{R T_\alpha} \right\} \;,

where \zeta^\kappa_\alpha represents the \kappa's chemical potential in phase \alpha, R stands for the ideal gas constant, and T_\alpha for the absolute temperature of phase \alpha. Assuming thermal equilibrium, there is a one-to-one mapping between a component's chemical potential \zeta^\kappa_\alpha and its fugacity f^\kappa_\alpha. In this case chemical equilibrium can thus be expressed by:

f^\kappa := f^\kappa_\alpha = f^\kappa_\beta\quad\forall \alpha, \beta

◆ fugacityCoefficient()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::fugacityCoefficient ( int  phaseIdx,
int  compIdx 
) const
inline

The fugacity coefficient \Phi^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[-]}.

◆ internalEnergy()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::internalEnergy ( int  phaseIdx) const
inline

The specific internal energy u_\alpha of a fluid phase \alpha in \mathrm{[J/kg]}.

The specific internal energy is defined by the relation:

u_\alpha = h_\alpha - \frac{p_\alpha}{\rho_\alpha}

◆ massFraction()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::massFraction ( int  phaseIdx,
int  compIdx 
) const
inline

Returns the mass fraction X^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[-]}.

The mass fraction X^\kappa_\alpha is defined as the weight of all molecules of a component divided by the total mass of the fluid phase. It is related with the component's mole fraction by means of the relation

X^\kappa_\alpha = x^\kappa_\alpha \frac{M^\kappa}{\overline M_\alpha}\;,

where M^\kappa is the molar mass of component \kappa and \overline M_\alpha is the mean molar mass of a molecule of phase \alpha.

Parameters
phaseIdxthe index of the phase
compIdxthe index of the component

◆ molarDensity()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::molarDensity ( int  phaseIdx) const
inline

The molar density \rho_\alpha of the fluid phase \alpha in \mathrm{[mol/m^3]}.

◆ molarity()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::molarity ( int  phaseIdx,
int  compIdx 
) const
inline

The molar concentration c^\kappa_\alpha of component \kappa in fluid phase \alpha in \mathrm{[mol/m^3]}.

This quantity is usually called "molar concentration" or just "concentration", but there are many other (though less common) measures for concentration.

http://en.wikipedia.org/wiki/Concentration

◆ molarVolume()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::molarVolume ( int  phaseIdx) const
inline

The molar volume v_{mol,\alpha} of a fluid phase \alpha in \mathrm{[m^3/mol]}.

This quantity is the inverse of the molar density.

◆ moleFraction()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::moleFraction ( int  phaseIdx,
int  compIdx 
) const
inline

Returns the molar fraction x^\kappa_\alpha of the component \kappa in fluid phase \alpha in \mathrm{[-]}.

The molar fraction x^\kappa_\alpha is defined as the ratio of the number of molecules of component \kappa and the total number of molecules of the phase \alpha.

Parameters
phaseIdxthe index of the phase
compIdxthe index of the component

◆ operator=() [1/2]

template<class FluidState >
SaturationOverlayFluidState & Dumux::SaturationOverlayFluidState< FluidState >::operator= ( const SaturationOverlayFluidState< FluidState > &  fs)
default

◆ operator=() [2/2]

template<class FluidState >
SaturationOverlayFluidState & Dumux::SaturationOverlayFluidState< FluidState >::operator= ( SaturationOverlayFluidState< FluidState > &&  fs)
default

◆ pressure()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::pressure ( int  phaseIdx) const
inline

The pressure p_\alpha of a fluid phase \alpha in \mathrm{[Pa]}.

◆ saturation()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::saturation ( int  phaseIdx) const
inline

Returns the saturation S_\alpha of a fluid phase \alpha in \mathrm{[-]}.

The saturation is defined as the pore space occupied by the fluid divided by the total pore space:

S_\alpha := \frac{\phi \mathcal{V}_\alpha}{\phi \mathcal{V}}

Parameters
phaseIdxthe index of the phase

◆ setSaturation()

template<class FluidState >
void Dumux::SaturationOverlayFluidState< FluidState >::setSaturation ( int  phaseIdx,
Scalar  value 
)
inline

Set the saturation \mathrm{[-]} of a fluid phase.

◆ temperature()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::temperature ( int  phaseIdx) const
inline

The absolute temperature T_\alpha of a fluid phase \alpha in \mathrm{[K]}.

◆ viscosity()

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::viscosity ( int  phaseIdx) const
inline

The dynamic viscosity \mu_\alpha of fluid phase \alpha in \mathrm{[Pa s]}.

Member Data Documentation

◆ fs_

template<class FluidState >
const FluidState* Dumux::SaturationOverlayFluidState< FluidState >::fs_
protected

◆ numComponents

template<class FluidState >
constexpr int Dumux::SaturationOverlayFluidState< FluidState >::numComponents = FluidState::numComponents
staticconstexpr

◆ numPhases

template<class FluidState >
constexpr int Dumux::SaturationOverlayFluidState< FluidState >::numPhases = FluidState::numPhases
staticconstexpr

◆ saturation_

template<class FluidState >
Scalar Dumux::SaturationOverlayFluidState< FluidState >::saturation_[numPhases] = {}
protected

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