30 template<
class Thermo,
int PolySize>
34 const Polynomial<PolySize>& muCoeffs,
35 const Polynomial<PolySize>& kappaCoeffs
40 kappaCoeffs_(kappaCoeffs)
44 template<
class Thermo,
int PolySize>
52 muCoeffs_(pt.muCoeffs_),
53 kappaCoeffs_(pt.kappaCoeffs_)
57 template<
class Thermo,
int PolySize>
68 template<
class Thermo,
int PolySize>
81 template<
class Thermo,
int PolySize>
88 return exp(muCoeffs_.value(
log(T)));
92 template<
class Thermo,
int PolySize>
99 return exp(kappaCoeffs_.value(
log(T)));
103 template<
class Thermo,
int PolySize>
106 const scalar p,
const scalar T
109 return kappa(p, T)/this->
Cp(p, T);
115 template<
class Thermo,
int PolySize>
116 inline void Foam::logPolynomialTransport<Thermo, PolySize>::operator+=
121 scalar Y1 = this->
Y();
123 Thermo::operator+=(pt);
125 if (
mag(this->
Y()) > small)
128 scalar Y2 = pt.Y()/this->
Y();
130 muCoeffs_ = Y1*muCoeffs_ + Y2*pt.muCoeffs_;
131 kappaCoeffs_ = Y1*kappaCoeffs_ + Y2*pt.kappaCoeffs_;
136 template<
class Thermo,
int PolySize>
137 inline void Foam::logPolynomialTransport<Thermo, PolySize>::operator*=
142 Thermo::operator*=(s);
148 template<
class Thermo,
int PolySize>
157 static_cast<const Thermo&>(pt1) + static_cast<const Thermo&>(pt2)
160 if (
mag(t.Y()) < small)
172 scalar Y1 = pt1.Y()/t.Y();
173 scalar Y2 = pt2.Y()/t.Y();
178 Y1*pt1.muCoeffs_ + Y2*pt2.muCoeffs_,
179 Y1*pt1.kappaCoeffs_ + Y2*pt2.kappaCoeffs_
185 template<
class Thermo,
int PolySize>
194 s*
static_cast<const Thermo&
>(pt),
autoPtr< logPolynomialTransport > clone() const
Construct and return a clone.
static autoPtr< logPolynomialTransport > New(const dictionary &dict)
dimensionedScalar log(const dimensionedScalar &ds)
A list of keyword definitions, which are a keyword followed by any number of values (e...
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))
dimensionedScalar exp(const dimensionedScalar &ds)
A class for handling words, derived from string.
scalar alphah(const scalar p, const scalar T) const
Thermal diffusivity of enthalpy [kg/m/s].
scalar mu(const scalar p, const scalar T) const
Dynamic viscosity [kg/m/s].
PtrList< volScalarField > & Y
scalar Cp(const scalar p, const scalar T) const
dimensioned< scalar > mag(const dimensioned< Type > &)
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Transport package using polynomial functions of ln(T) for mu and kappa:
scalar kappa(const scalar p, const scalar T) const
Thermal conductivity [W/m/K].