Opm::BaseFluidSystem< ScalarT, Implementation > Class Template Reference

The base class for all fluid systems. More...

#include <BaseFluidSystem.hpp>

List of all members.

Classes

struct  ParameterCache
 The type of the fluid system's parameter cache. More...

Public Types

typedef ScalarT Scalar
 The type used for scalar quantities.

Static Public Member Functions

static char * phaseName (unsigned)
 Return the human readable name of a fluid phase.
static bool isLiquid (unsigned)
 Return whether a phase is liquid.
static bool isIdealMixture (unsigned)
 Returns true if and only if a fluid phase is assumed to be an ideal mixture.
static bool isCompressible (unsigned)
 Returns true if and only if a fluid phase is assumed to be compressible.
static bool isIdealGas (unsigned)
 Returns true if and only if a fluid phase is assumed to be an ideal gas.
static const char * componentName (unsigned)
 Return the human readable name of a component.
static Scalar molarMass (unsigned)
 Return the molar mass of a component in [kg/mol].
static void init ()
 Initialize the fluid system's static parameters.
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval density (const FluidState &, const ParamCache &, unsigned)
 Calculate the density [kg/m^3] of a fluid phase.
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval fugacityCoefficient (const FluidState &, ParamCache &, unsigned, unsigned)
 Calculate the fugacity coefficient [Pa] of an individual component in a fluid phase.
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval viscosity (const FluidState &, ParamCache &, unsigned)
 Calculate the dynamic viscosity of a fluid phase [Pa*s].
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval diffusionCoefficient (const FluidState &, ParamCache &, unsigned, unsigned)
 Calculate the binary molecular diffusion coefficient for a component in a fluid phase [mol^2 * s / (kg*m^3)].
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval enthalpy (const FluidState &, ParamCache &, unsigned)
 Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy [J/kg].
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval thermalConductivity (const FluidState &, ParamCache &, unsigned)
 Thermal conductivity of a fluid phase [W/(m K)].
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval heatCapacity (const FluidState &, ParamCache &, unsigned)
 Specific isobaric heat capacity of a fluid phase [J/kg].

Static Public Attributes

static const int numComponents = -1000
 Number of chemical species in the fluid system.
static const int numPhases = -2000
 Number of fluid phases in the fluid system.

Detailed Description

template<class ScalarT, class Implementation>
class Opm::BaseFluidSystem< ScalarT, Implementation >

The base class for all fluid systems.


Member Function Documentation

template<class ScalarT, class Implementation>
static const char* Opm::BaseFluidSystem< ScalarT, Implementation >::componentName ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::density ( const FluidState &  ,
const ParamCache &  ,
unsigned   
) [inline, static]

Calculate the density [kg/m^3] of a fluid phase.

template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::diffusionCoefficient ( const FluidState &  ,
ParamCache &  ,
unsigned  ,
unsigned   
) [inline, static]

Calculate the binary molecular diffusion coefficient for a component in a fluid phase [mol^2 * s / (kg*m^3)].

Molecular diffusion of a compoent $\kappa$ is caused by a gradient of the mole fraction and follows the law

\[ J = - D \mathbf{grad} x^\kappa_\alpha \]

where $x_\alpha^\kappa$ is the component's mole fraction in phase $\alpha$, $D$ is the diffusion coefficient and $J$ is the diffusive flux.

template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::enthalpy ( const FluidState &  ,
ParamCache &  ,
unsigned   
) [inline, static]

Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy [J/kg].

template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::fugacityCoefficient ( const FluidState &  ,
ParamCache &  ,
unsigned  ,
unsigned   
) [inline, static]

Calculate the fugacity coefficient [Pa] of an individual component in a fluid phase.

The fugacity coefficient $\phi_\kappa$ is connected to the fugacity $f_\kappa$ and the component's molarity $x_\kappa$ by means of the relation

\[ f_\kappa = \phi_\kappa\,x_{\kappa} \]

template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::heatCapacity ( const FluidState &  ,
ParamCache &  ,
unsigned   
) [inline, static]

Specific isobaric heat capacity of a fluid phase [J/kg].

template<class ScalarT, class Implementation>
static bool Opm::BaseFluidSystem< ScalarT, Implementation >::isCompressible ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
static bool Opm::BaseFluidSystem< ScalarT, Implementation >::isIdealGas ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
static bool Opm::BaseFluidSystem< ScalarT, Implementation >::isIdealMixture ( unsigned   )  [inline, static]

Returns true if and only if a fluid phase is assumed to be an ideal mixture.

We define an ideal mixture as a fluid phase where the fugacity coefficients of all components times the pressure of the phase are independent on the fluid composition. This assumption is true if Henry's law and Rault's law apply. If you are unsure what this function should return, it is safe to return false. The only damage done will be (slightly) increased computation times in some cases.

Reimplemented in Opm::FluidSystems::BlackOil< Scalar >, Opm::FluidSystems::H2OAir< Scalar, H2Otype, useComplexRelations >, Opm::FluidSystems::H2OAirMesitylene< Scalar >, Opm::FluidSystems::H2OAirXylene< Scalar >, Opm::FluidSystems::H2ON2< Scalar, useComplexRelations >, Opm::FluidSystems::H2ON2LiquidPhase< Scalar, useComplexRelations >, Opm::FluidSystems::SinglePhase< Scalar, Fluid >, Opm::FluidSystems::Spe5< Scalar >, and Opm::FluidSystems::TwoPhaseImmiscible< Scalar, WettingPhase, NonwettingPhase >.

template<class ScalarT, class Implementation>
static bool Opm::BaseFluidSystem< ScalarT, Implementation >::isLiquid ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
static Scalar Opm::BaseFluidSystem< ScalarT, Implementation >::molarMass ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
static char* Opm::BaseFluidSystem< ScalarT, Implementation >::phaseName ( unsigned   )  [inline, static]
template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::thermalConductivity ( const FluidState &  ,
ParamCache &  ,
unsigned   
) [inline, static]

Thermal conductivity of a fluid phase [W/(m K)].

template<class ScalarT, class Implementation>
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCache >
static LhsEval Opm::BaseFluidSystem< ScalarT, Implementation >::viscosity ( const FluidState &  ,
ParamCache &  ,
unsigned   
) [inline, static]

Calculate the dynamic viscosity of a fluid phase [Pa*s].


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

Generated on 25 Mar 2018 by  doxygen 1.6.1