36 #ifndef perfectFluid_H 37 #define perfectFluid_H 50 template<
class Specie>
54 const perfectFluid<Specie>&
57 template<
class Specie>
58 inline perfectFluid<Specie>
operator*
61 const perfectFluid<Specie>&
64 template<
class Specie>
65 inline perfectFluid<Specie>
operator==
67 const perfectFluid<Specie>&,
68 const perfectFluid<Specie>&
71 template<
class Specie>
75 const perfectFluid<Specie>&
83 template<
class Specie>
127 return "perfectFluid<" +
word(Specie::typeName_()) +
'>';
140 inline scalar
R()
const;
143 inline scalar
rho(scalar
p, scalar
T)
const;
146 inline scalar
H(
const scalar
p,
const scalar
T)
const;
149 inline scalar
Cp(scalar
p, scalar
T)
const;
152 inline scalar
E(
const scalar
p,
const scalar
T)
const;
155 inline scalar
Cv(scalar
p, scalar
T)
const;
158 inline scalar
S(
const scalar
p,
const scalar
T)
const;
161 inline scalar
psi(scalar
p, scalar
T)
const;
164 inline scalar
Z(scalar
p, scalar
T)
const;
167 inline scalar
CpMCv(scalar
p, scalar
T)
const;
173 void write(Ostream& os)
const;
190 friend perfectFluid
operator* <Specie>
196 friend perfectFluid
operator== <Specie>
205 friend Ostream& operator<< <Specie>
autoPtr< perfectFluid > clone() const
Construct and return a clone.
static const bool isochoric
Is the equation of state is isochoric i.e. rho = const.
static word typeName()
Return the instantiated type name.
A list of keyword definitions, which are a keyword followed by any number of values (e...
static const bool incompressible
Is the equation of state is incompressible i.e. rho != f(p)
perfectFluid(const Specie &sp, const scalar R, const scalar rho0)
Construct from components.
scalar rho(scalar p, scalar T) const
Return density [kg/m^3].
static autoPtr< perfectFluid > New(const dictionary &dict)
scalar CpMCv(scalar p, scalar T) const
Return (Cp - Cv) [J/(kg K].
scalar R() const
Return fluid constant [J/kg/K].
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().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))
A class for handling words, derived from string.
scalar E(const scalar p, const scalar T) const
Return internal energy departure [J/kg].
void operator*=(const scalar)
scalar Z(scalar p, scalar T) const
Return compression factor [].
An Ostream is an abstract base class for all output systems (streams, files, token lists...
scalar H(const scalar p, const scalar T) const
Return enthalpy departure [J/kg].
scalar S(const scalar p, const scalar T) const
Return entropy [J/kg/K].
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Perfect gas equation of state.
word name(const complex &)
Return a string representation of a complex.
scalar psi(scalar p, scalar T) const
Return compressibility rho/p [s^2/m^2].
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
scalar Cp(scalar p, scalar T) const
Return Cp departure [J/(kg K].
void write(Ostream &os) const
Write to Ostream.
void operator+=(const perfectFluid &)
scalar Cv(scalar p, scalar T) const
Return Cv departure [J/(kg K].