12#ifndef DUMUX_COMPONENTS_CONSTANT_HH 
   13#define DUMUX_COMPONENTS_CONSTANT_HH 
   15#include <dune/common/exceptions.hh> 
   42template<
int id, 
class Scalar>
 
   85    static const std::string& 
name()
 
 
  163        static const Scalar dynamicViscosity = [&]
 
  165            if (
hasParamInGroup(std::to_string(
id), 
"Component.LiquidKinematicViscosity"))
 
  167                if (
hasParamInGroup(std::to_string(
id), 
"Component.LiquidDynamicViscosity"))
 
  168                    DUNE_THROW(Dune::InvalidStateException, 
"Found both Component.LiquidKinematicViscosity and Component.LiquidDynamicViscosity." 
  169                        << 
" Please only specify either the kinematic or the dynamic viscosity for all constant components to avoid ambiguities.");
 
  177        return dynamicViscosity;
 
 
  188        return thermalConductivity;
 
 
  201        return heatCapacity * (temperature - tRef);
 
 
  214        return u + pressure / rho;
 
 
  265        static const Scalar dynamicViscosity = [&]
 
  267            if (
hasParamInGroup(std::to_string(
id), 
"Component.GasKinematicViscosity"))
 
  269                if (
hasParamInGroup(std::to_string(
id), 
"Component.GasDynamicViscosity"))
 
  270                    DUNE_THROW(Dune::InvalidStateException, 
"Found both Component.GasKinematicViscosity and Component.GasDynamicViscosity." 
  271                        << 
" Please only specify either the kinematic or the dynamic viscosity for all constant components to avoid ambiguities.");
 
  279        return dynamicViscosity;
 
 
  290        return thermalConductivity;
 
 
 
Base class for all components Components provide the thermodynamic relations for the liquid,...
Definition components/base.hh:46
Scalar Scalar
Definition components/base.hh:50
A component which returns run time specified values for all fluid properties.
Definition constant.hh:48
static Scalar solidDensity(Scalar temperature)
The density in  of the component at a given pressure in  and temperature in .
Definition constant.hh:363
static const std::string & name()
A human readable name for the component.
Definition constant.hh:85
static Scalar solidThermalConductivity(Scalar temperature)
Thermal conductivity of the component  as a solid.
Definition constant.hh:373
static Scalar gasThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of the component  as a gas.
Definition constant.hh:287
static Scalar triplePressure()
Returns the pressure  at the component's triple point.
Definition constant.hh:112
static Scalar liquidThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of the component  as a liquid.
Definition constant.hh:185
static Scalar liquidEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the component  as a liquid.
Definition constant.hh:210
static Scalar liquidMolarDensity(Scalar temperature, Scalar pressure)
The molar density in  at a given pressure and temperature.
Definition constant.hh:147
static Scalar gasInternalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy of the component  as a gas.
Definition constant.hh:306
static constexpr bool gasIsCompressible()
Returns true if the gas phase is assumed to be compressible.
Definition constant.hh:55
static Scalar liquidHeatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the component  as a liquid.
Definition constant.hh:223
static Scalar gasHeatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the component  as a gas.
Definition constant.hh:332
static Scalar gasMolarDensity(Scalar temperature, Scalar pressure)
The molar density in  at a given pressure and temperature.
Definition constant.hh:248
static Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of the component  as a gas.
Definition constant.hh:320
static Scalar tripleTemperature()
Returns the temperature  at the components's triple point.
Definition constant.hh:103
static Scalar solidHeatCapacity(Scalar temperature)
Specific isobaric heat capacity of the component  as a solid.
Definition constant.hh:383
static constexpr bool gasViscosityIsConstant()
Returns true if the gas phase viscosity is constant.
Definition constant.hh:61
static Scalar liquidInternalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy of the component  as a liquid.
Definition constant.hh:196
static Scalar gasDensity(Scalar temperature, Scalar pressure)
Sets the gas density in .
Definition constant.hh:235
static constexpr bool liquidViscosityIsConstant()
Returns true if the liquid phase viscosity is constant.
Definition constant.hh:79
static constexpr bool gasIsIdeal()
Returns true if the gas phase is assumed to be ideal.
Definition constant.hh:67
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
Sets the liquid density in .
Definition constant.hh:134
static Scalar molarMass()
The mass in  of one mole of the component.
Definition constant.hh:94
static constexpr bool liquidIsCompressible()
Returns true if the liquid phase is assumed to be compressible.
Definition constant.hh:73
static Scalar vaporPressure(Scalar T)
The vapor pressure in  of a the component at a given temperature.
Definition constant.hh:346
static Scalar vaporizationEnthalpy()
The vaporization enthalpy in  needed to vaporize one kilogram of the liquid component to the gaseous ...
Definition constant.hh:121
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
Sets the liquid dynamic viscosity in .
Definition constant.hh:161
static Scalar gasViscosity(Scalar temperature, Scalar pressure)
Sets the gas dynamic viscosity in .
Definition constant.hh:263
Interface for components that have a gas state.
Definition gas.hh:28
Interface for components that have a liquid state.
Definition liquid.hh:28
Interface for components that have a solid state.
Definition solid.hh:28
Relations valid for an ideal gas.
Definition idealgas.hh:25
static constexpr Scalar R
The ideal gas constant .
Definition idealgas.hh:28
Base class for all components Components provide the thermodynamic relations for the liquid,...
Interface for components that have a gas state.
T getParamFromGroup(Args &&... args)
A free function to get a parameter from the parameter tree singleton with a model group.
Definition parameters.hh:149
bool hasParamInGroup(const std::string ¶mGroup, const std::string ¶m)
Check whether a key exists in the parameter tree with a model group prefix.
Definition parameters.hh:165
Relations valid for an ideal gas.
Interface for components that have a liquid state.
const Scalar PengRobinsonMixture< Scalar, StaticParameters >::u
Definition pengrobinsonmixture.hh:138
The infrastructure to retrieve run-time parameters from Dune::ParameterTrees.
Interface for components that have a solid state.