13#ifndef DUMUX_COMPONENT_GAS_HH
14#define DUMUX_COMPONENT_GAS_HH
16#include <dune/common/exceptions.hh>
26template<
class Scalar,
class Component>
33 template<
class C = Component>
43 template<
class C = Component>
53 template<
class C = Component>
67 template<
class C = Component>
71 DUNE_THROW(Dune::NotImplemented,
"gasDensity(t,p)");
81 template<
class C = Component>
85 DUNE_THROW(Dune::NotImplemented,
"gasMolarDensity(t,p)");
94 template<
class C = Component>
98 DUNE_THROW(Dune::NotImplemented,
"gasEnthalpy(t,p)");
107 template<
class C = Component>
111 DUNE_THROW(Dune::NotImplemented,
"gasInternalEnergy(t,p)");
121 template<
class C = Component>
125 DUNE_THROW(Dune::NotImplemented,
"gasViscosity(t,p)");
133 template<
class C = Component>
136 static_assert(
AlwaysFalse<C>::value,
"Mandatory function not implemented: gasThermalConductivity(t,p)");
137 DUNE_THROW(Dune::NotImplemented,
"gasThermalConductivity(t,p)");
145 template<
class C = Component>
149 DUNE_THROW(Dune::NotImplemented,
"gasHeatCapacity(t,p)");
Interface for components that have a gas state.
Definition: gas.hh:28
static Scalar gasDensity(Scalar temperature, Scalar pressure)
The density in of the component at a given pressure in and temperature in .
Definition: gas.hh:68
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:122
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:82
static const Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the pure component in gas.
Definition: gas.hh:95
static constexpr bool gasIsCompressible()
Returns true if the gas phase is assumed to be compressible.
Definition: gas.hh:34
static const Scalar gasInternalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy of the pure component in gas.
Definition: gas.hh:108
static constexpr bool gasViscosityIsConstant()
Returns true if the gas phase viscostiy is constant.
Definition: gas.hh:44
static Scalar gasThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of the component as a gas.
Definition: gas.hh:134
static Scalar gasHeatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the component as a gas.
Definition: gas.hh:146
static constexpr bool gasIsIdeal()
Returns true if the gas phase is assumed to be ideal.
Definition: gas.hh:54
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