38#ifndef Foam_liquidProperties_H
39#define Foam_liquidProperties_H
143 template<
class Derived>
176 inline scalar
Y()
const;
179 inline scalar
Tc()
const;
182 inline scalar
Pc()
const;
185 inline scalar
Vc()
const;
188 inline scalar
Zc()
const;
191 inline scalar
Tt()
const;
194 inline scalar
Pt()
const;
197 inline scalar
Tb()
const;
200 inline scalar
dipm()
const;
203 inline scalar
omega()
const;
206 inline scalar
delta()
const;
209 inline scalar
limit(
const scalar
T)
const;
216 inline scalar
psi(scalar
p, scalar
T)
const;
221 inline scalar
CpMCv(scalar
p, scalar
T)
const;
227 inline scalar
Ha(
const scalar
p,
const scalar
T)
const;
230 inline scalar
Hs(
const scalar
p,
const scalar
T)
const;
233 inline scalar
Hc()
const;
236 scalar
S(
const scalar
p,
const scalar
T)
const;
242 virtual scalar
pv(scalar
p, scalar
T)
const = 0;
245 virtual scalar
hl(scalar
p, scalar
T)
const = 0;
248 virtual scalar
h(scalar
p, scalar
T)
const = 0;
251 virtual scalar
Cpg(scalar
p, scalar
T)
const = 0;
254 virtual scalar
mu(scalar
p, scalar
T)
const = 0;
257 virtual scalar
mug(scalar
p, scalar
T)
const = 0;
260 virtual scalar
kappa(scalar
p, scalar
T)
const = 0;
263 inline scalar
alphah(
const scalar
p,
const scalar
T)
const;
266 virtual scalar
kappag(scalar
p, scalar
T)
const = 0;
269 virtual scalar
sigma(scalar
p, scalar
T)
const = 0;
272 virtual scalar
D(scalar
p, scalar
T)
const = 0;
275 virtual scalar
D(scalar
p, scalar
T, scalar Wb)
const = 0;
299 template<
class Liqu
id>
306 template<
class Liqu
id>
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
The thermophysical properties of a liquid.
scalar Vc() const
Critical volume [m^3/kmol].
scalar limit(const scalar T) const
Limit temperature to be within the range.
virtual scalar mu(scalar p, scalar T) const =0
Liquid viscosity [Pa s].
virtual scalar D(scalar p, scalar T) const =0
Vapour diffusivity [m2/s].
scalar Hs(const scalar p, const scalar T) const
Sensible enthalpy [J/kg].
virtual ~liquidProperties()=default
Destructor.
virtual scalar hl(scalar p, scalar T) const =0
Heat of vapourisation [J/kg].
virtual scalar sigma(scalar p, scalar T) const =0
Surface tension [N/m].
scalar Zc() const
Critical compressibility factor.
scalar delta() const
Solubility parameter [(J/m^3)^(1/2)].
virtual scalar kappag(scalar p, scalar T) const =0
Vapour thermal conductivity [W/(m K)].
virtual scalar h(scalar p, scalar T) const =0
Liquid enthalpy [J/kg] - reference to 298.15 K.
virtual scalar mug(scalar p, scalar T) const =0
Vapour viscosity [Pa s].
scalar Tb() const
Normal boiling temperature [K].
scalar Pc() const
Critical pressure [Pa].
virtual scalar D(scalar p, scalar T, scalar Wb) const =0
Vapour diffusivity [m2/s] with specified binary pair.
virtual scalar pv(scalar p, scalar T) const =0
Vapour pressure [Pa].
scalar Hc() const
Chemical enthalpy [J/kg].
declareRunTimeSelectionTable(autoPtr, liquidProperties, dictionary,(const dictionary &dict),(dict))
scalar Pt() const
Triple point pressure [Pa].
scalar S(const scalar p, const scalar T) const
scalar omega() const
Pitzer's acentric factor [].
scalar Ha(const scalar p, const scalar T) const
Absolute Enthalpy [J/kg].
scalar CpMCv(scalar p, scalar T) const
Return (Cp - Cv) [J/(kg K].
scalar Tt() const
Triple point temperature [K].
scalar alphah(const scalar p, const scalar T) const
Liquid thermal diffusivity of enthalpy [kg/ms].
scalar dipm() const
Dipole moment [].
static const bool isochoric
Is the equation of state is isochoric i.e. rho = const.
virtual scalar Cpg(scalar p, scalar T) const =0
Vapour heat capacity [J/(kg K)].
declareRunTimeSelectionTable(autoPtr, liquidProperties,,(),())
friend Ostream & operator<<(Ostream &os, const liquidProperties &l)
Ostream Operator.
scalar Y() const
No of moles of this species in mixture.
static const bool incompressible
Is the equation of state is incompressible i.e. rho != f(p).
liquidProperties(scalar W, scalar Tc, scalar Pc, scalar Vc, scalar Zc, scalar Tt, scalar Pt, scalar Tb, scalar dipm, scalar omega, scalar delta)
Construct from components.
static autoPtr< liquidProperties > Clone(const Derived &prop)
Clone liquidProperties.
virtual void writeData(Ostream &os) const =0
Write the function coefficients.
static autoPtr< liquidProperties > New(const word &name)
Return a pointer to a new liquidProperties created from name.
virtual scalar pvInvert(scalar p) const
Invert the vapour pressure relationship to retrieve the.
virtual autoPtr< liquidProperties > clone() const =0
Construct and return clone.
scalar Tc() const
Critical temperature [K].
void readIfPresent(const dictionary &dict)
Read and set the properties present it the given dictionary.
virtual scalar kappa(scalar p, scalar T) const =0
Liquid thermal conductivity [W/(m K)].
thermophysicalProperties(scalar W)
Construct from molecular weight.
scalar W() const
Molecular weight [kg/kmol].
A class for handling words, derived from Foam::string.
const volScalarField & psi
OBJstream os(runTime.globalPath()/outputName)
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces).
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes).
const dimensionedScalar & D
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.