32template<
class Thermo,
int PolySize>
36 const Polynomial<PolySize>& muCoeffs,
37 const Polynomial<PolySize>& kappaCoeffs
42 kappaCoeffs_(kappaCoeffs)
46template<
class Thermo,
int PolySize>
54 muCoeffs_(pt.muCoeffs_),
55 kappaCoeffs_(pt.kappaCoeffs_)
59template<
class Thermo,
int PolySize>
67template<
class Thermo,
int PolySize>
77template<
class Thermo,
int PolySize>
84 return exp(muCoeffs_.value(
log(
T)));
88template<
class Thermo,
int PolySize>
95 return exp(kappaCoeffs_.value(
log(
T)));
99template<
class Thermo,
int PolySize>
102 const scalar
p,
const scalar T
105 return kappa(
p,
T)/this->
Cp(p,
T);
111template<
class Thermo,
int PolySize>
117 scalar Y1 = this->
Y();
119 Thermo::operator+=(pt);
121 if (
mag(this->
Y()) > SMALL)
124 scalar Y2 = pt.Y()/this->
Y();
126 muCoeffs_ = Y1*muCoeffs_ + Y2*pt.muCoeffs_;
127 kappaCoeffs_ = Y1*kappaCoeffs_ + Y2*pt.kappaCoeffs_;
132template<
class Thermo,
int PolySize>
138 Thermo::operator*=(
s);
144template<
class Thermo,
int PolySize>
153 static_cast<const Thermo&
>(pt1) +
static_cast<const Thermo&
>(pt2)
156 if (
mag(t.Y()) < SMALL)
168 scalar Y1 = pt1.Y()/t.Y();
169 scalar Y2 = pt2.Y()/t.Y();
171 return logPolynomialTransport<Thermo, PolySize>
174 Y1*pt1.muCoeffs_ + Y2*pt2.muCoeffs_,
175 Y1*pt1.kappaCoeffs_ + Y2*pt2.kappaCoeffs_
181template<
class Thermo,
int PolySize>
185 const logPolynomialTransport<Thermo, PolySize>& pt
188 return logPolynomialTransport<Thermo, PolySize>
190 s*
static_cast<const Thermo&
>(pt),
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Transport package using polynomial functions of ln(T) for mu and kappa:
scalar alphah(const scalar p, const scalar T) const
Thermal diffusivity of enthalpy [kg/ms].
autoPtr< logPolynomialTransport > clone() const
Construct and return a clone.
A class for handling words, derived from Foam::string.
PtrList< volScalarField > & Y
const volScalarField & Cp
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))
const dimensionedScalar kappa
Coulomb constant: default SI units: [N.m2/C2].
const dimensionedScalar mu
Atomic mass unit.
dimensionedScalar exp(const dimensionedScalar &ds)
dimensionedScalar log(const dimensionedScalar &ds)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.