41 #ifndef PengRobinsonGas_H 42 #define PengRobinsonGas_H 55 template<
class Specie>
62 template<
class Specie>
69 template<
class Specie>
76 template<
class Specie>
89 template<
class Specie>
148 return "PengRobinsonGas<" +
word(Specie::typeName_()) +
'>';
161 inline scalar
rho(scalar
p, scalar
T)
const;
164 inline scalar
H(
const scalar
p,
const scalar
T)
const;
167 inline scalar
Cp(scalar
p, scalar
T)
const;
170 inline scalar
E(
const scalar
p,
const scalar
T)
const;
173 inline scalar
Cv(scalar
p, scalar
T)
const;
176 inline scalar
S(
const scalar
p,
const scalar
T)
const;
179 inline scalar
psi(scalar
p, scalar
T)
const;
182 inline scalar
Z(scalar
p, scalar
T)
const;
185 inline scalar
CpMCv(scalar
p, scalar
T)
const;
222 friend Ostream& operator<< <Specie>
void write(Ostream &os) const
Write to Ostream.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
scalar psi(scalar p, scalar T) const
Return compressibility rho/p [s^2/m^2].
scalar Z(scalar p, scalar T) const
Return compression factor [].
void operator*=(const scalar)
scalar H(const scalar p, const scalar T) const
Return enthalpy departure [J/kg].
scalar Cv(scalar p, scalar T) const
Return Cv departure [J/(kg K].
autoPtr< PengRobinsonGas > clone() const
Construct and return a clone.
scalar rho(scalar p, scalar T) const
Return density [kg/m^3].
scalar Cp(scalar p, scalar T) const
Return Cp departure [J/(kg K].
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
scalar CpMCv(scalar p, scalar T) const
Return (Cp - Cv) [J/(kg K].
A class for handling words, derived from Foam::string.
static autoPtr< PengRobinsonGas > New(const dictionary &dict)
static word typeName()
Return the instantiated type name.
PengRobinsonGas gas equation of state.
void operator+=(const PengRobinsonGas &)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
PengRobinsonGas(const Specie &sp, const scalar &Tc, const scalar &Vc, const scalar &Zc, const scalar &Pc, const scalar &omega)
Construct from components.
OBJstream os(runTime.globalPath()/outputName)
scalar S(const scalar p, const scalar T) const
Return entropy [J/(kg K)].
static const bool incompressible
Is the equation of state is incompressible i.e. rho != f(p)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
static const bool isochoric
Is the equation of state is isochoric i.e. rho = const.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
scalar E(const scalar p, const scalar T) const
Return internal energy departure [J/kg].
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))