13#ifndef DUMUX_COMPONENT_GAS_HH
14#define DUMUX_COMPONENT_GAS_HH
16#include <dune/common/exceptions.hh>
27template<
class Scalar,
class Component>
34 template<
class C = Component>
44 template<
class C = Component>
54 template<
class C = Component>
68 template<
class C = Component>
72 DUNE_THROW(Dune::NotImplemented,
"gasDensity(t,p)");
82 template<
class C = Component>
86 DUNE_THROW(Dune::NotImplemented,
"gasMolarDensity(t,p)");
95 template<
class C = Component>
99 DUNE_THROW(Dune::NotImplemented,
"gasEnthalpy(t,p)");
108 template<
class C = Component>
112 DUNE_THROW(Dune::NotImplemented,
"gasInternalEnergy(t,p)");
122 template<
class C = Component>
126 DUNE_THROW(Dune::NotImplemented,
"gasViscosity(t,p)");
134 template<
class C = Component>
137 static_assert(
AlwaysFalse<C>::value,
"Mandatory function not implemented: gasThermalConductivity(t,p)");
138 DUNE_THROW(Dune::NotImplemented,
"gasThermalConductivity(t,p)");
146 template<
class C = Component>
150 DUNE_THROW(Dune::NotImplemented,
"gasHeatCapacity(t,p)");
Interface for components that have a gas state.
Definition: gas.hh:29
static Scalar gasDensity(Scalar temperature, Scalar pressure)
The density in of the component at a given pressure in and temperature in .
Definition: gas.hh:69
static Scalar gasViscosity(Scalar temperature, Scalar pressure)
The dynamic viscosity of the pure component at a given pressure in and temperature in .
Definition: gas.hh:123
static Scalar gasMolarDensity(Scalar temperature, Scalar pressure)
The molar density in of the component at a given pressure in and temperature in .
Definition: gas.hh:83
static const Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the pure component in gas.
Definition: gas.hh:96
static constexpr bool gasIsCompressible()
Returns true if the gas phase is assumed to be compressible.
Definition: gas.hh:35
static const Scalar gasInternalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy of the pure component in gas.
Definition: gas.hh:109
static constexpr bool gasViscosityIsConstant()
Returns true if the gas phase viscostiy is constant.
Definition: gas.hh:45
static Scalar gasThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of the component as a gas.
Definition: gas.hh:135
static Scalar gasHeatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the component as a gas.
Definition: gas.hh:147
static constexpr bool gasIsIdeal()
Returns true if the gas phase is assumed to be ideal.
Definition: gas.hh:55
std::string temperature() noexcept
I/O name of temperature for equilibrium models.
Definition: name.hh:39
std::string pressure(int phaseIdx) noexcept
I/O name of pressure for multiphase systems.
Definition: name.hh:22
Template which always yields a false value.
Definition: common/typetraits/typetraits.hh:24