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>
scalar delta() const
Solubility parameter [(J/m^3)^(1/2)].
Base-class for thermophysical properties of solids, liquids and gases providing an interface compatib...
A list of keyword definitions, which are a keyword followed by a number of values (eg...
virtual scalar Cpg(scalar p, scalar T) const =0
Vapour heat capacity [J/(kg K)].
virtual scalar pvInvert(scalar p) const
Invert the vapour pressure relationship to retrieve the.
void readIfPresent(const dictionary &dict)
Read and set the properties present it the given dictionary.
scalar Y() const
No of moles of this species in mixture.
virtual scalar hl(scalar p, scalar T) const =0
Heat of vapourisation [J/kg].
declareRunTimeSelectionTable(autoPtr, liquidProperties,,(),())
scalar Ha(const scalar p, const scalar T) const
Absolute Enthalpy [J/kg].
scalar Pt() const
Triple point pressure [Pa].
virtual autoPtr< liquidProperties > clone() const =0
Construct and return clone.
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.
virtual scalar kappa(scalar p, scalar T) const =0
Liquid thermal conductivity [W/(m K)].
scalar dipm() const
Dipole moment [].
virtual scalar sigma(scalar p, scalar T) const =0
Surface tension [N/m].
friend Ostream & operator<<(Ostream &os, const liquidProperties &l)
Ostream Operator.
scalar limit(const scalar T) const
Limit temperature to be within the range.
scalar Tc() const
Critical temperature [K].
scalar Zc() const
Critical compressibility factor.
scalar Hc() const
Chemical enthalpy [J/kg].
static const bool isochoric
Is the equation of state is isochoric i.e. rho = const.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
scalar psi(scalar p, scalar T) const
Liquid compressibility rho/p [s^2/m^2].
A class for handling words, derived from Foam::string.
scalar W() const
Molecular weight [kg/kmol].
virtual scalar h(scalar p, scalar T) const =0
Liquid enthalpy [J/kg] - reference to 298.15 K.
The thermophysical properties of a liquid.
scalar CpMCv(scalar p, scalar T) const
Return (Cp - Cv) [J/(kg K].
virtual scalar pv(scalar p, scalar T) const =0
Vapour pressure [Pa].
scalar Vc() const
Critical volume [m^3/kmol].
virtual scalar kappag(scalar p, scalar T) const =0
Vapour thermal conductivity [W/(m K)].
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual scalar mug(scalar p, scalar T) const =0
Vapour viscosity [Pa s].
virtual ~liquidProperties()=default
Destructor.
scalar Hs(const scalar p, const scalar T) const
Sensible enthalpy [J/kg].
OBJstream os(runTime.globalPath()/outputName)
static autoPtr< liquidProperties > New(const word &name)
Return a pointer to a new liquidProperties created from name.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
static autoPtr< liquidProperties > Clone(const Derived &prop)
Clone liquidProperties.
virtual scalar D(scalar p, scalar T) const =0
Vapour diffusivity [m2/s].
static const bool incompressible
Is the equation of state is incompressible i.e. rho != f(p)
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
virtual void writeData(Ostream &os) const =0
Write the function coefficients.
scalar omega() const
Pitzer's acentric factor [].
scalar Pc() const
Critical pressure [Pa].
scalar S(const scalar p, const scalar T) const
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
virtual scalar mu(scalar p, scalar T) const =0
Liquid viscosity [Pa s].
scalar alphah(const scalar p, const scalar T) const
Liquid thermal diffusivity of enthalpy [kg/ms].
scalar Tb() const
Normal boiling temperature [K].
scalar Tt() const
Triple point temperature [K].