37namespace thermophysicalFunctions
44 integratedNonUniformTable,
53Foam::thermophysicalFunctions::integratedNonUniformTable::
54integratedNonUniformTable
57 const dictionary&
dict
60 nonUniformTable(name,
dict),
61 intf_(values().size()),
62 intfByT_(values().size())
67 for (label i = 1; i < intf_.size(); ++i)
69 intf_[i] = intf_[i-1] + intfdT(0, values()[i].first());
70 intfByT_[i] = intfByT_[i-1] + intfByTdT(0, values()[i].first());
73 const scalar intfStd = intfdT(Pstd, Tstd);
74 const scalar intfByTStd = intfByTdT(Pstd, Tstd);
79 intfByT_[i] -= intfByTStd;
84Foam::thermophysicalFunctions::integratedNonUniformTable::
85integratedNonUniformTable
87 const dictionary&
dict
90 integratedNonUniformTable(
"values",
dict)
96Foam::scalar Foam::thermophysicalFunctions::integratedNonUniformTable::intfdT
102 const label i = index(
p,
T);
103 const scalar Ti =
values()[i].first();
104 const scalar fi =
values()[i].second();
105 const scalar dT =
T - Ti;
106 const scalar
lambda = dT/(
values()[i + 1].first() - Ti);
114Foam::scalar Foam::thermophysicalFunctions::integratedNonUniformTable::intfByTdT
120 const label i = index(
p,
T);
121 const scalar Ti =
values()[i].first();
122 const scalar fi =
values()[i].second();
124 (
values()[i + 1].second() - fi)/(
values()[i + 1].first() - Ti);
127 intfByT_[i] + ((fi - gradf*Ti)*
log(
T/Ti) + gradf*(
T - Ti));
131void Foam::thermophysicalFunctions::integratedNonUniformTable::writeData
136 nonUniformTable::writeData(
os);
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Abstract base class for thermo-physical functions.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
OBJstream os(runTime.globalPath()/outputName)
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
dimensionedScalar log(const dimensionedScalar &ds)
dimensionedScalar lambda("lambda", dimTime/sqr(dimLength), laminarTransport)
#define forAll(list, i)
Loop across all elements in list.