3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Loading...
Searching...
No Matches
Dumux::Components::H2< Scalar > Class Template Reference

Properties of pure molecular hydrogen \(H_2\). More...

#include <dumux/material/components/h2.hh>

Inheritance diagram for Dumux::Components::H2< Scalar >:
Inheritance graph

Description

template<class Scalar>
class Dumux::Components::H2< Scalar >

Properties of pure molecular hydrogen \(H_2\).

Template Parameters
ScalarThe type used for scalar values

Public Types

using Scalar
 export the scalar type used by the component

Static Public Member Functions

static std::string name ()
 A human readable name for the \(H_2\).
static constexpr Scalar molarMass ()
 The molar mass in \(\mathrm{[kg/mol]}\) of molecular hydrogen.
static Scalar criticalTemperature ()
 Returns the critical temperature \(\mathrm{[K]}\) of molecular hydrogen.
static Scalar criticalPressure ()
 Returns the critical pressure \(\mathrm{[Pa]}\) of molecular hydrogen.
static Scalar tripleTemperature ()
 Returns the temperature \(\mathrm{[K]}\) at molecular hydrogen's triple point.
static Scalar vaporPressure (Scalar temperature)
 The vapor pressure in \(\mathrm{[Pa]}\) of pure molecular hydrogen at a given temperature.
static Scalar gasDensity (Scalar temperature, Scalar pressure)
 The density \(\mathrm{[kg/m^3]}\) of \(H_2\) at a given pressure and temperature.
static Scalar gasMolarDensity (Scalar temperature, Scalar pressure)
 The molar density of \(H_2\) in \(\mathrm{[mol/m^3]}\), depending on pressure and temperature.
static constexpr bool gasIsCompressible ()
 Returns true if the gas phase is assumed to be compressible.
static constexpr bool gasIsIdeal ()
 Returns true if the gas phase is assumed to be ideal.
static Scalar gasPressure (Scalar temperature, Scalar density)
 The pressure of gaseous \(H_2\) in \(\mathrm{[Pa]}\) at a given density and temperature.
static const Scalar gasEnthalpy (Scalar temperature, Scalar pressure)
 Specific enthalpy \(\mathrm{[J/kg]}\) of pure hydrogen gas.
static const Scalar gasHeatCapacity (Scalar T, Scalar pressure)
 Specific isobaric heat capacity \(\mathrm{[J/(kg*K)]}\) of pure hydrogen gas.
static Scalar gasViscosity (Scalar temperature, Scalar pressure)
 The dynamic viscosity \(\mathrm{[Pa*s]}\) of \(H_2\) at a given pressure and temperature.
static void init (Scalar tempMin, Scalar tempMax, unsigned nTemp, Scalar pressMin, Scalar pressMax, unsigned nPress)
 A default routine for initialization, not needed for components and must not be called.
static constexpr Scalar triplePressure ()
 Returns the pressure in \(\mathrm{[Pa]}\) at the component's triple point.
static constexpr bool gasViscosityIsConstant ()
 Returns true if the gas phase viscostiy is constant.
static const Scalar gasInternalEnergy (Scalar temperature, Scalar pressure)
 Specific internal energy \(\mathrm{[J/kg]}\) of the pure component in gas.
static Scalar gasThermalConductivity (Scalar temperature, Scalar pressure)
 Thermal conductivity of the component \(\mathrm{[W/(m*K)]}\) as a gas.

Static Public Attributes

static constexpr bool isTabulated
 if the component relies on tabulated values

Member Typedef Documentation

◆ Scalar

using Dumux::Components::Base< Scalar, H2< Scalar > >::Scalar
inherited

export the scalar type used by the component

Member Function Documentation

◆ criticalPressure()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::criticalPressure ( )
inlinestatic

Returns the critical pressure \(\mathrm{[Pa]}\) of molecular hydrogen.

◆ criticalTemperature()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::criticalTemperature ( )
inlinestatic

Returns the critical temperature \(\mathrm{[K]}\) of molecular hydrogen.

◆ gasDensity()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::gasDensity ( Scalar temperature,
Scalar pressure )
inlinestatic

The density \(\mathrm{[kg/m^3]}\) of \(H_2\) at a given pressure and temperature.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

◆ gasEnthalpy()

template<class Scalar>
const Scalar Dumux::Components::H2< Scalar >::gasEnthalpy ( Scalar temperature,
Scalar pressure )
inlinestatic

Specific enthalpy \(\mathrm{[J/kg]}\) of pure hydrogen gas.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

◆ gasHeatCapacity()

template<class Scalar>
const Scalar Dumux::Components::H2< Scalar >::gasHeatCapacity ( Scalar T,
Scalar pressure )
inlinestatic

Specific isobaric heat capacity \(\mathrm{[J/(kg*K)]}\) of pure hydrogen gas.

This is equivalent to the partial derivative of the specific enthalpy to the temperature.

Parameters
Ttemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

See: R. Reid, et al. (1987, pp 154, 657, 665) [53]

◆ gasInternalEnergy()

const Scalar Dumux::Components::Gas< Scalar, H2< Scalar > >::gasInternalEnergy ( Scalar temperature,
Scalar pressure )
inlinestaticinherited

Specific internal energy \(\mathrm{[J/kg]}\) of the pure component in gas.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

◆ gasIsCompressible()

template<class Scalar>
constexpr bool Dumux::Components::H2< Scalar >::gasIsCompressible ( )
inlinestaticconstexpr

Returns true if the gas phase is assumed to be compressible.

◆ gasIsIdeal()

template<class Scalar>
constexpr bool Dumux::Components::H2< Scalar >::gasIsIdeal ( )
inlinestaticconstexpr

Returns true if the gas phase is assumed to be ideal.

◆ gasMolarDensity()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::gasMolarDensity ( Scalar temperature,
Scalar pressure )
inlinestatic

The molar density of \(H_2\) in \(\mathrm{[mol/m^3]}\), depending on pressure and temperature.

Parameters
temperatureThe temperature of the gas
pressureThe pressure of the gas

◆ gasPressure()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::gasPressure ( Scalar temperature,
Scalar density )
inlinestatic

The pressure of gaseous \(H_2\) in \(\mathrm{[Pa]}\) at a given density and temperature.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
densitydensity of component in \(\mathrm{[kg/m^3]}\)

◆ gasThermalConductivity()

Scalar Dumux::Components::Gas< Scalar, H2< Scalar > >::gasThermalConductivity ( Scalar temperature,
Scalar pressure )
inlinestaticinherited

Thermal conductivity of the component \(\mathrm{[W/(m*K)]}\) as a gas.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

◆ gasViscosity()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::gasViscosity ( Scalar temperature,
Scalar pressure )
inlinestatic

The dynamic viscosity \(\mathrm{[Pa*s]}\) of \(H_2\) at a given pressure and temperature.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)
pressurepressure of component in \(\mathrm{[Pa]}\)

See:

See: R. Reid, et al.: The Properties of Gases and Liquids, 4th edition (1987, pp 396-397, 667) [53]
5th edition (2001, pp 9.7-9.8 (omega and V_c taken from p. A.19)) [51]

◆ gasViscosityIsConstant()

constexpr bool Dumux::Components::Gas< Scalar, H2< Scalar > >::gasViscosityIsConstant ( )
inlinestaticconstexprinherited

Returns true if the gas phase viscostiy is constant.

◆ init()

void Dumux::Components::Base< Scalar, H2< Scalar > >::init ( Scalar tempMin,
Scalar tempMax,
unsigned nTemp,
Scalar pressMin,
Scalar pressMax,
unsigned nPress )
inlinestaticinherited

A default routine for initialization, not needed for components and must not be called.

Parameters
tempMinThe minimum of the temperature range in \(\mathrm{[K]}\)
tempMaxThe maximum of the temperature range in \(\mathrm{[K]}\)
nTempThe number of entries/steps within the temperature range
pressMinThe minimum of the pressure range in \(\mathrm{[Pa]}\)
pressMaxThe maximum of the pressure range in \(\mathrm{[Pa]}\)
nPressThe number of entries/steps within the pressure range

This function throws a warning when called: "No init routine defined - make sure that this is not necessary!"

◆ molarMass()

template<class Scalar>
constexpr Scalar Dumux::Components::H2< Scalar >::molarMass ( )
inlinestaticconstexpr

The molar mass in \(\mathrm{[kg/mol]}\) of molecular hydrogen.

◆ name()

template<class Scalar>
std::string Dumux::Components::H2< Scalar >::name ( )
inlinestatic

A human readable name for the \(H_2\).

◆ triplePressure()

constexpr Scalar Dumux::Components::Base< Scalar, H2< Scalar > >::triplePressure ( )
inlinestaticconstexprinherited

Returns the pressure in \(\mathrm{[Pa]}\) at the component's triple point.

◆ tripleTemperature()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::tripleTemperature ( )
inlinestatic

Returns the temperature \(\mathrm{[K]}\) at molecular hydrogen's triple point.

◆ vaporPressure()

template<class Scalar>
Scalar Dumux::Components::H2< Scalar >::vaporPressure ( Scalar temperature)
inlinestatic

The vapor pressure in \(\mathrm{[Pa]}\) of pure molecular hydrogen at a given temperature.

Parameters
temperaturetemperature of component in \(\mathrm{[K]}\)

Taken from:

See: R. Reid, et al. (1987, pp 208-209, 669) [53]

Todo
implement the Gomez-Thodos approach...

Member Data Documentation

◆ isTabulated

bool Dumux::Components::Base< Scalar, H2< Scalar > >::isTabulated
staticconstexprinherited

if the component relies on tabulated values


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