31 template<
class Specie>
34 const Specie& sp,
const scalar rho0,
const scalar T0,
const scalar beta
44 template<
class Specie>
57 template<
class Specie>
71 template<
class Specie>
82 template<
class Specie>
96 template<
class Specie>
112 template<
class Specie>
119 return rho0_*(1.0 - beta_*(T - T0_));
123 template<
class Specie>
130 template<
class Specie>
137 template<
class Specie>
148 template<
class Specie>
159 template<
class Specie>
170 template<
class Specie>
183 template<
class Specie>
184 inline void Foam::Boussinesq<Specie>::operator=
189 Specie::operator=(b);
197 template<
class Specie>
198 inline void Foam::Boussinesq<Specie>::operator+=
203 scalar molr1 = this->nMoles();
204 Specie::operator+=(b);
205 molr1 /= this->nMoles();
206 scalar molr2 = b.nMoles()/this->nMoles();
208 rho0_ = molr1*rho0_ + molr2*b.rho0_;
209 T0_ = molr1*T0_ + molr2*b.T0_;
210 beta_ = molr1*beta_ + molr2*b.beta_;
214 template<
class Specie>
215 inline void Foam::Boussinesq<Specie>::operator-=
220 Specie::operator-=(b);
227 template<
class Specie>
230 Specie::operator*=(s);
236 template<
class Specie>
243 scalar nMoles = b1.nMoles() + b2.nMoles();
244 scalar molr1 = b1.nMoles()/nMoles;
245 scalar molr2 = b2.nMoles()/nMoles;
249 static_cast<const Specie&
>(b1)
250 + static_cast<const Specie&>(b2),
251 molr1*b1.rho0_ + molr2*b2.rho0_,
252 molr1*b1.T0_ + molr2*b2.T0_,
253 molr1*b1.beta_ + molr2*b2.beta_
258 template<
class Specie>
267 static_cast<const Specie&
>(b1)
268 - static_cast<const Specie&>(b2),
276 template<
class Specie>
285 s*
static_cast<const Specie&
>(
b),
293 template<
class Specie>
autoPtr< Boussinesq > clone() const
Construct and return a clone.
scalar s(const scalar p, const scalar T) const
Return entropy [J/(kmol K)].
scalar h(const scalar p, const scalar T) const
Return enthalpy departure [J/kmol].
static autoPtr< Boussinesq > New(Istream &is)
Boussinesq(const Specie &sp, const scalar rho0, const scalar T0, const scalar beta)
Construct from components.
A list of keyword definitions, which are a keyword followed by any number of values (e...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
scalar Z(scalar p, scalar T) const
Return compression factor [].
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))
const dimensionedScalar b
Wien displacement law constant: default SI units: [m.K].
A class for handling words, derived from string.
scalar psi(scalar p, scalar T) const
Return compressibility rho/p [s^2/m^2].
scalar cp(scalar p, scalar T) const
Return cp departure [J/(kmol K].
scalar cpMcv(scalar p, scalar T) const
Return (cp - cv) [J/(kmol K].
scalar rho(scalar p, scalar T) const
Return density [kg/m^3].
const scalar RR
Universal gas constant (default in [J/(kmol K)])
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
void operator*=(const scalar)
Incompressible gas equation of state using the Boussinesq approximation for the density as a function...