12#ifndef DUMUX_FLUIDSYSTEMS_LIQUID_PHASE_HH
13#define DUMUX_FLUIDSYSTEMS_LIQUID_PHASE_HH
18#include <dune/common/exceptions.hh>
30template <
class Scalar,
class ComponentT>
32:
public Base<Scalar, OnePLiquid<Scalar, ComponentT> >
88 static constexpr bool isGas(
int phaseIdx = 0)
171 template <
class Flu
idState>
175 return density(fluidState.temperature(phaseIdx),
176 fluidState.pressure(phaseIdx));
181 template <
class Flu
idState>
185 fluidState.pressure(phaseIdx));
214 template <
class Flu
idState>
218 return enthalpy(fluidState.temperature(phaseIdx),
219 fluidState.pressure(phaseIdx));
240 template <
class Flu
idState>
244 return viscosity(fluidState.temperature(phaseIdx),
245 fluidState.pressure(phaseIdx));
250 template <
class Flu
idState>
255 assert(0 <= phaseIdx && phaseIdx <
numPhases);
258 if (phaseIdx == compIdx)
264 return std::numeric_limits<Scalar>::infinity();
269 template <
class Flu
idState>
274 DUNE_THROW(Dune::InvalidStateException,
"Not applicable: Diffusion coefficients");
279 template <
class Flu
idState>
285 DUNE_THROW(Dune::InvalidStateException,
"Not applicable: Binary diffusion coefficients");
298 template <
class Flu
idState>
303 fluidState.pressure(phaseIdx));
316 template <
class Flu
idState>
321 fluidState.pressure(phaseIdx));
static Scalar criticalTemperature()
Returns the critical temperature of water.
Definition simpleh2o.hh:56
static std::string name()
A human readable name for the water.
Definition simpleh2o.hh:44
static Scalar criticalPressure()
Returns the critical pressure of water.
Definition simpleh2o.hh:62
static Scalar tripleTemperature()
Returns the temperature at water's triple point.
Definition simpleh2o.hh:68
static Scalar liquidMolarDensity(Scalar temperature, Scalar pressure)
The molar density of pure water in at a given pressure and temperature.
Definition simpleh2o.hh:277
static constexpr bool liquidViscosityIsConstant()
Returns true if the liquid phase viscosity is constant.
Definition simpleh2o.hh:216
static constexpr Scalar molarMass()
The molar mass in of water.
Definition simpleh2o.hh:50
static constexpr bool liquidIsCompressible()
Returns true if the liquid phase is assumed to be compressible.
Definition simpleh2o.hh:204
static Scalar liquidThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of water. source: http://webbook.nist.gov/cgi/fluid.cgi?ID=C7732185&Action=Page...
Definition simpleh2o.hh:333
static const Scalar liquidEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of liquid water .
Definition simpleh2o.hh:134
static Scalar liquidPressure(Scalar temperature, Scalar density)
The pressure of water in at a given density and temperature.
Definition simpleh2o.hh:286
static Scalar liquidHeatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the component as a liquid. source: http://webbook....
Definition simpleh2o.hh:321
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
The dynamic viscosity of pure water.
Definition simpleh2o.hh:309
static Scalar triplePressure()
Returns the pressure at water's triple point.
Definition simpleh2o.hh:74
static Scalar vaporPressure(Scalar T)
The vapor pressure in of pure water at a given temperature.
Definition simpleh2o.hh:89
static const Scalar liquidInternalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy of liquid water .
Definition simpleh2o.hh:188
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
The density of pure water at a given pressure and temperature .
Definition simpleh2o.hh:265
Fluid system base class.
Definition fluidsystems/base.hh:32
Scalar Scalar
Definition fluidsystems/base.hh:35
A liquid phase consisting of a single component.
Definition 1pliquid.hh:33
static constexpr int numComponents
Definition 1pliquid.hh:43
static constexpr bool isCompressible(int phaseIdx=0)
Returns true if the fluid is assumed to be compressible.
Definition 1pliquid.hh:111
static const Scalar enthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy the pure component as a liquid.
Definition 1pliquid.hh:209
static Scalar molarDensity(const FluidState &fluidState, const int phaseIdx)
Calculate the molar density of a fluid phase.
Definition 1pliquid.hh:182
NullParameterCache ParameterCache
Definition 1pliquid.hh:40
static Scalar enthalpy(const FluidState &fluidState, const int phaseIdx)
Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy .
Definition 1pliquid.hh:215
static std::string phaseName(int phaseIdx=0)
Return the human readable name of a fluid phase.
Definition 1pliquid.hh:62
static constexpr bool isGas(int phaseIdx=0)
Returns whether the fluid is a liquid.
Definition 1pliquid.hh:88
static constexpr bool isIdealGas(int phaseIdx=0)
Returns true if the fluid is assumed to be an ideal gas.
Definition 1pliquid.hh:123
static constexpr bool isIdealMixture(int phaseIdx=0)
Returns true if and only if a fluid phase is assumed to be an ideal mixture.
Definition 1pliquid.hh:105
static void init()
Initialize the fluid system's static parameters generically.
Definition 1pliquid.hh:51
static Scalar diffusionCoefficient(const FluidState &fluidState, int phaseIdx, int compIdx)
Calculate the binary molecular diffusion coefficient for a component in a fluid phase .
Definition 1pliquid.hh:270
static Scalar molarMass(int compIdx=0)
The mass in of one mole of the component.
Definition 1pliquid.hh:129
static Scalar triplePressure(int compIdx=0)
Returns the pressure at the component's triple point.
Definition 1pliquid.hh:153
static Scalar criticalPressure(int compIdx=0)
Returns the critical pressure of the component.
Definition 1pliquid.hh:141
static Scalar thermalConductivity(const FluidState &fluidState, const int phaseIdx)
Thermal conductivity of a fluid phase .
Definition 1pliquid.hh:299
static Scalar density(const FluidState &fluidState, const int phaseIdx)
Calculate the density of a fluid phase.
Definition 1pliquid.hh:172
static std::string name()
A human readable name for the component.
Definition 1pliquid.hh:76
static Scalar binaryDiffusionCoefficient(const FluidState &fluidState, int phaseIdx, int compIIdx, int compJIdx)
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient for c...
Definition 1pliquid.hh:280
static constexpr bool isMiscible()
There is only one phase, so not mass transfer between phases can occur.
Definition 1pliquid.hh:82
static Scalar viscosity(const FluidState &fluidState, const int phaseIdx)
Calculate the dynamic viscosity of a fluid phase .
Definition 1pliquid.hh:241
static Scalar density(Scalar temperature, Scalar pressure)
The density of the component at a given pressure and temperature.
Definition 1pliquid.hh:166
static Scalar pressure(Scalar temperature, Scalar density)
Definition 1pliquid.hh:201
static Scalar thermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of the fluid .
Definition 1pliquid.hh:293
static Scalar vaporPressure(Scalar T)
The vapor pressure in of the component at a given temperature.
Definition 1pliquid.hh:160
static Scalar heatCapacity(const FluidState &fluidState, const int phaseIdx)
Specific isobaric heat capacity of a fluid phase .
Definition 1pliquid.hh:317
static const Scalar internalEnergy(Scalar temperature, Scalar pressure)
Specific internal energy the pure component as a liquid.
Definition 1pliquid.hh:227
static Scalar viscosity(Scalar temperature, Scalar pressure)
The dynamic liquid viscosity of the pure component.
Definition 1pliquid.hh:235
static Scalar heatCapacity(Scalar temperature, Scalar pressure)
Specific isobaric heat capacity of the fluid .
Definition 1pliquid.hh:311
static Scalar tripleTemperature(int compIdx=0)
Returns the temperature at the component's triple point.
Definition 1pliquid.hh:147
static constexpr int comp0Idx
Definition 1pliquid.hh:46
static Scalar criticalTemperature(int compIdx=0)
Returns the critical temperature of the component.
Definition 1pliquid.hh:135
static constexpr int phase0Idx
Definition 1pliquid.hh:45
static Scalar molarDensity(Scalar temperature, Scalar pressure)
The density of the component at a given pressure and temperature.
Definition 1pliquid.hh:193
static constexpr bool viscosityIsConstant(int phaseIdx=0)
Returns true if the fluid viscosity is constant.
Definition 1pliquid.hh:117
Components::SimpleH2O< Scalar > Component
Definition 1pliquid.hh:39
static Scalar fugacityCoefficient(const FluidState &fluidState, int phaseIdx, int compIdx)
Calculate the fugacity coefficient of an individual component in a fluid phase.
Definition 1pliquid.hh:251
static std::string componentName(int compIdx=0)
A human readable name for the component.
Definition 1pliquid.hh:70
static constexpr int numPhases
Definition 1pliquid.hh:42
The a parameter cache which does nothing.
Definition nullparametercache.hh:22
Component traits, i.e. information extracted from components.
A collection of input/output field names for common physical quantities.
std::string liquidPhase() noexcept
I/O name of liquid phase.
Definition name.hh:107
static constexpr bool hasLiquidState
if the component implements a liquid state
Definition componenttraits.hh:38