thermophysicalFunctions: Merged into Function1 and Function2

All thermophysicalFunctions, NSRDS, API and the fast uniform and non-uniform
tables have now been converted into the corresponding Function1<scalar> and
Function2<scalar> so that they can be used in other contexts, e.g. diffusion
coefficients for multi-component diffusion and in conjunction with other
Function1 and Function2s.  This also enables 'coded' Function1 and Function2 to
be used for thermo-physical properties.

Now all run-time selectable functions are within a single general framework
improving usability and simplifying maintenance.
This commit is contained in:
Henry Weller
2020-12-04 18:46:05 +00:00
parent a806e1bc6b
commit 0c79b63f2e
150 changed files with 2832 additions and 2827 deletions

View File

@ -98,6 +98,8 @@ primitives/functions/Function1/quarterCosineRamp/quarterCosineRamp.C
primitives/functions/Function1/halfCosineRamp/halfCosineRamp.C
primitives/functions/Function1/Table/tableBase.C
primitives/functions/Function1/Table/TableReader/makeTableReaders.C
primitives/functions/Function1/uniformTable1/uniformTable1.C
primitives/functions/Function1/nonUniformTable1/nonUniformTable1.C
primitives/functions/Function2/makeFunction2s.C

View File

@ -125,7 +125,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Coded
(
const word& name,

View File

@ -72,13 +72,13 @@ public:
// Constructors
//- Construct from entry name and value
//- Construct from name and value
Constant(const word& name, const Type& val);
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Constant(const word& name, const dictionary& dict);
//- Construct from entry name and Istream
//- Construct from name and Istream
// Reads the constant value without the Function1 type
// for backward compatibility
Constant(const word& name, Istream& is);

View File

@ -53,16 +53,6 @@ Foam::FieldFunction1<Type, Function1Type>::FieldFunction1
{}
template<class Type, class Function1Type>
Foam::FieldFunction1<Type, Function1Type>::FieldFunction1
(
const FieldFunction1<Type, Function1Type>& ff1
)
:
Function1<Type>(ff1)
{}
template<class Type, class Function1Type>
Foam::tmp<Foam::Function1<Type>>
Foam::FieldFunction1<Type, Function1Type>::clone() const
@ -133,6 +123,20 @@ Foam::FieldFunction1<Type, Function1Type>::integral
}
// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * //
template<class Type>
void Foam::Function1<Type>::operator=(const Function1<Type>& f)
{
if (this == &f)
{
FatalErrorInFunction
<< "attempted assignment to self"
<< abort(FatalError);
}
}
// * * * * * * * * * * * * * * * IOstream Functions * * * * * * * * * * * * //
template<class Type>

View File

@ -94,7 +94,7 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
Function1(const word& name);
//- Copy constructor
@ -143,8 +143,8 @@ public:
// Member Operators
//- Disallow default bitwise assignment
void operator=(const Function1<Type>&) = delete;
//- Assignment
void operator=(const Function1<Type>&);
// IOstream Operators
@ -176,12 +176,9 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
FieldFunction1(const word& name);
//- Copy constructor
FieldFunction1(const FieldFunction1<Type, Function1Type>& ff1);
//- Construct and return a clone
virtual tmp<Function1<Type>> clone() const;

View File

@ -67,10 +67,10 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
OneConstant(const word& name);
//- Construct from entry name and dictionary
//- Construct from name and dictionary
OneConstant(const word& name, const dictionary& dict);

View File

@ -82,6 +82,7 @@ public:
// Constructors
//- Construct from name and dictionary
Polynomial(const word& name, const dictionary& dict);
//- Construct from components

View File

@ -28,10 +28,10 @@ License
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
template <class Function1Type>
void Foam::Function1s::Ramp<Function1Type>::read(const dictionary& coeffs)
void Foam::Function1s::Ramp<Function1Type>::read(const dictionary& dict)
{
start_ = coeffs.lookupOrDefault<scalar>("start", 0);
duration_ = coeffs.lookup<scalar>("duration");
start_ = dict.lookupOrDefault<scalar>("start", 0);
duration_ = dict.lookup<scalar>("duration");
}

View File

@ -120,14 +120,14 @@ private:
// Private Member Functions
//- Read the coefficients from the given dictionary
void read(const dictionary& coeffs);
void read(const dictionary& dict);
public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Ramp
(
const word& name,

View File

@ -28,14 +28,14 @@ License
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
template<class Type>
void Foam::Function1s::Scale<Type>::read(const dictionary& coeffs)
void Foam::Function1s::Scale<Type>::read(const dictionary& dict)
{
scale_ = Function1<scalar>::New("scale", coeffs);
scale_ = Function1<scalar>::New("scale", dict);
xScale_ =
coeffs.found("xScale")
? Function1<scalar>::New("xScale", coeffs)
dict.found("xScale")
? Function1<scalar>::New("xScale", dict)
: autoPtr<Function1<scalar>>(new Constant<scalar>("xScale", 1));
value_ = Function1<Type>::New("value", coeffs);
value_ = Function1<Type>::New("value", dict);
integrableScale_ =
isA<Constant<scalar>>(xScale_())

View File

@ -158,7 +158,7 @@ class Scale
// Private Member Functions
//- Read the coefficients from the given dictionary
void read(const dictionary& coeffs);
void read(const dictionary& dict);
public:
@ -169,7 +169,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Scale
(
const word& name,

View File

@ -28,12 +28,12 @@ License
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
template<class Type>
void Foam::Function1s::Sine<Type>::read(const dictionary& coeffs)
void Foam::Function1s::Sine<Type>::read(const dictionary& dict)
{
amplitude_ = Function1<Type>::New("amplitude", coeffs);
frequency_ = coeffs.lookup<scalar>("frequency");
start_ = coeffs.lookupOrDefault<scalar>("start", 0);
level_ = Function1<Type>::New("level", coeffs);
amplitude_ = Function1<Type>::New("amplitude", dict);
frequency_ = dict.lookup<scalar>("frequency");
start_ = dict.lookupOrDefault<scalar>("start", 0);
level_ = Function1<Type>::New("level", dict);
integrable_ =
isA<Constant<Type>>(amplitude_())

View File

@ -112,7 +112,7 @@ class Sine
// Private Member Functions
//- Read the coefficients from the given dictionary
void read(const dictionary& coeffs);
void read(const dictionary& dict);
public:
@ -123,7 +123,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Sine
(
const word& name,

View File

@ -28,13 +28,13 @@ License
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
template<class Type>
void Foam::Function1s::Square<Type>::read(const dictionary& coeffs)
void Foam::Function1s::Square<Type>::read(const dictionary& dict)
{
amplitude_ = Function1<Type>::New("amplitude", coeffs);
frequency_ = coeffs.lookup<scalar>("frequency");
start_ = coeffs.lookupOrDefault<scalar>("start", 0);
level_ = Function1<Type>::New("level", coeffs);
markSpace_ = coeffs.lookupOrDefault<scalar>("markSpace", 1);
amplitude_ = Function1<Type>::New("amplitude", dict);
frequency_ = dict.lookup<scalar>("frequency");
start_ = dict.lookupOrDefault<scalar>("start", 0);
level_ = Function1<Type>::New("level", dict);
markSpace_ = dict.lookupOrDefault<scalar>("markSpace", 1);
integrable_ =
isA<Constant<Type>>(amplitude_())

View File

@ -123,7 +123,7 @@ class Square
// Private Member Functions
//- Read the coefficients from the given dictionary
void read(const dictionary& coeffs);
void read(const dictionary& dict);
public:
@ -134,7 +134,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Square
(
const word& name,

View File

@ -180,7 +180,7 @@ public:
const List<Tuple2<scalar, Type>>& table
);
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Table(const word& name, const dictionary& dict);
//- Copy constructor

View File

@ -70,7 +70,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Uniform(const word& name, const dictionary& dict);

View File

@ -67,7 +67,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
ZeroConstant(const word& name, const dictionary& dict);

View File

@ -65,7 +65,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
halfCosineRamp
(
const word& name,

View File

@ -65,7 +65,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
linearRamp
(
const word& name,

View File

@ -23,23 +23,16 @@ License
\*---------------------------------------------------------------------------*/
#include "nonUniformTable1DThermophysicalFunction.H"
#include "nonUniformTable1.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(nonUniformTable1D, 0);
addToRunTimeSelectionTable
(
thermophysicalFunction,
nonUniformTable1D,
dictionary
);
makeScalarFunction1(nonUniformTable)
}
}
@ -52,46 +45,46 @@ const char* const Foam::Tuple2<Foam::scalar, Foam::scalar>::typeName
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::nonUniformTable1D::nonUniformTable1D
Foam::Function1s::nonUniformTable::nonUniformTable
(
const word& name,
const dictionary& dict
)
:
name_(name),
Tlow_(great),
Thigh_(-great),
values_(dict.lookup(name)),
deltaT_(great)
FieldFunction1<scalar, nonUniformTable>(name),
low_(great),
high_(-great),
values_(dict.lookup("values")),
delta_(great)
{
if (values_.size() < 2)
{
FatalIOErrorInFunction(dict)
<< "Table " << nl
<< " " << name_ << nl
<< " " << name << nl
<< " has less than 2 entries."
<< exit(FatalIOError);
}
else
{
Tlow_ = values_.first().first();
Thigh_ = values_.last().first();
low_ = values_.first().first();
high_ = values_.last().first();
for(label i = 1; i<values_.size(); i++)
{
deltaT_ = min(deltaT_, values_[i].first() - values_[i - 1].first());
delta_ = min(delta_, values_[i].first() - values_[i - 1].first());
}
deltaT_ *= 0.9;
delta_ *= 0.9;
jumpTable_.setSize((Thigh_ - Tlow_)/deltaT_ + 1);
jumpTable_.setSize((high_ - low_)/delta_ + 1);
label i = 0;
forAll(jumpTable_, j)
{
const scalar T = Tlow_ + j*deltaT_;
const scalar x = low_ + j*delta_;
if (T > values_[i + 1].first())
if (x > values_[i + 1].first())
{
i++;
}
@ -102,25 +95,16 @@ Foam::thermophysicalFunctions::nonUniformTable1D::nonUniformTable1D
}
Foam::thermophysicalFunctions::nonUniformTable1D::nonUniformTable1D
(
const dictionary& dict
)
:
nonUniformTable1D("values", dict)
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::thermophysicalFunctions::nonUniformTable1D::value
Foam::scalar Foam::Function1s::nonUniformTable::value
(
scalar T
scalar x
) const
{
const label i = index(T);
const scalar Ti = values_[i].first();
const scalar lambda = (T - Ti)/(values_[i + 1].first() - Ti);
const label i = index(x);
const scalar xi = values_[i].first();
const scalar lambda = (x - xi)/(values_[i + 1].first() - xi);
return
values_[i].second()
@ -128,7 +112,18 @@ Foam::scalar Foam::thermophysicalFunctions::nonUniformTable1D::value
}
Foam::scalar Foam::thermophysicalFunctions::nonUniformTable1D::dfdT
Foam::scalar Foam::Function1s::nonUniformTable::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
Foam::scalar Foam::Function1s::nonUniformTable::dfdT
(
scalar T
) const
@ -141,7 +136,7 @@ Foam::scalar Foam::thermophysicalFunctions::nonUniformTable1D::dfdT
}
void Foam::thermophysicalFunctions::nonUniformTable1D::write(Ostream& os) const
void Foam::Function1s::nonUniformTable::write(Ostream& os) const
{
writeEntry(os, "values", values_);
}

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
Description
Non-uniform tabulated property function that linearly interpolates between
@ -33,16 +33,16 @@ Description
the table.
Usage
\nonUniformTable1D
\nonUniformTable
Property | Description
values | List of (temperature property) value pairs
\endnonUniformTable1D
values | List of value pairs
\endnonUniformTable
Example for the density of water between 280 and 350K
\verbatim
rho
{
type nonUniformTable1D;
type nonUniformTable;
values
(
@ -55,43 +55,40 @@ Usage
\*---------------------------------------------------------------------------*/
#ifndef nonUniformTable1DThermophysicalFunction_H
#define nonUniformTable1DThermophysicalFunction_H
#ifndef nonUniformTable1_H
#define nonUniformTable1_H
#include "thermophysicalFunction.H"
#include "Function1.H"
#include "Tuple2.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
Class nonUniformTable1D Declaration
Class nonUniformTable Declaration
\*---------------------------------------------------------------------------*/
class nonUniformTable1D
class nonUniformTable
:
public thermophysicalFunction
public FieldFunction1<scalar, nonUniformTable>
{
// Private member data
//- Name of dictionary from which this function is instantiated
word name_;
//- Lowest value in the nonUniformTable
scalar low_;
//- Lowest temperature in the nonUniformTable1D
scalar Tlow_;
//- Highest temperature in the nonUniformTable1D
scalar Thigh_;
//- Highest value in the nonUniformTable
scalar high_;
//- Table values
List<Tuple2<scalar, scalar>> values_;
//- Temperature increment derived from Tlow_, Thigh_ and values_.size()
scalar deltaT_;
//- Increment derived from low_, high_ and values_.size()
scalar delta_;
List<label> jumpTable_;
@ -99,23 +96,20 @@ class nonUniformTable1D
protected:
//- Return the lower index of the interval in the table
// corresponding to the given temperature
inline label index(scalar T) const;
// corresponding to the given value
inline label index(scalar x) const;
public:
//- Runtime type information
TypeName("nonUniformTable1D");
TypeName("nonUniformTable");
// Constructors
//- Construct from entry name and dictionary
nonUniformTable1D(const word& name, const dictionary& dict);
//- Construct from dictionary
nonUniformTable1D(const dictionary& dict);
//- Construct from name and dictionary
nonUniformTable(const word& name, const dictionary& dict);
// Member Functions
@ -127,7 +121,10 @@ public:
}
//- Evaluate the function and return the result
scalar value(scalar T) const;
virtual scalar value(scalar x) const;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Evaluate the derivative of the function and return the result
scalar dfdT(scalar T) const;
@ -139,12 +136,12 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "nonUniformTable1DThermophysicalFunctionI.H"
#include "nonUniformTable1I.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,30 +23,28 @@ License
\*---------------------------------------------------------------------------*/
#include "nonUniformTable1DThermophysicalFunction.H"
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
inline Foam::label Foam::thermophysicalFunctions::nonUniformTable1D::index
inline Foam::label Foam::Function1s::nonUniformTable::index
(
scalar T
scalar x
) const
{
if (T < Tlow_ || T > Thigh_)
if (x < low_ || x > high_)
{
FatalErrorInFunction
<< "Temperature " << T << " out of range "
<< Tlow_ << " to " << Thigh_ << nl
<< " of nonUniformTable1D " << name_
<< x << " out of range "
<< low_ << " to " << high_ << nl
<< " of nonUniformTable " << name_
<< exit(FatalError);
}
const scalar nd = (T - Tlow_)/deltaT_;
const scalar nd = (x - low_)/delta_;
const label j = nd;
label i = jumpTable_[j];
if (i < values_.size() - 1 && T > values_[i + 1].first())
if (i < values_.size() - 1 && x > values_[i + 1].first())
{
i++;
}

View File

@ -65,7 +65,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
quadraticRamp
(
const word& name,

View File

@ -65,7 +65,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
quarterCosineRamp
(
const word& name,

View File

@ -65,7 +65,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
quarterSineRamp
(
const word& name,

View File

@ -97,7 +97,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
reverseRamp
(
const word& name,

View File

@ -23,28 +23,32 @@ License
\*---------------------------------------------------------------------------*/
#include "table1DThermophysicalFunction.H"
#include "uniformTable1.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(table1D, 0);
addToRunTimeSelectionTable(thermophysicalFunction, table1D, dictionary);
makeScalarFunction1(uniformTable)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::table1D::table1D(const dictionary& dict)
Foam::Function1s::uniformTable::uniformTable
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, uniformTable>(name),
dictName_(dict.name()),
Tlow_(dict.lookup<scalar>("Tlow")),
Thigh_(dict.lookup<scalar>("Thigh")),
low_(dict.lookup<scalar>("low")),
high_(dict.lookup<scalar>("high")),
values_(dict.lookup("values"))
{
if (values_.size() < 2)
@ -57,41 +61,49 @@ Foam::thermophysicalFunctions::table1D::table1D(const dictionary& dict)
}
else
{
deltaT_ = (Thigh_ - Tlow_)/(values_.size() - 1);
delta_ = (high_ - low_)/(values_.size() - 1);
}
}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::thermophysicalFunctions::table1D::value
(
scalar T
) const
Foam::scalar Foam::Function1s::uniformTable::value(scalar x) const
{
const scalar nd = (T - Tlow_)/deltaT_;
const scalar nd = (x - low_)/delta_;
const label i = nd;
if (nd < 0 || i > values_.size() - 2)
{
FatalErrorInFunction
<< "Temperature " << T << " out of range "
<< Tlow_ << " to " << Thigh_ << nl
<< x << " out of range "
<< low_ << " to " << high_ << nl
<< " of table " << dictName_
<< exit(FatalError);
}
const scalar Ti = Tlow_ + i*deltaT_;
const scalar lambda = (T - Ti)/deltaT_;
const scalar xi = low_ + i*delta_;
const scalar lambda = (x - xi)/delta_;
return values_[i] + lambda*(values_[i + 1] - values_[i]);
}
void Foam::thermophysicalFunctions::table1D::write(Ostream& os) const
Foam::scalar Foam::Function1s::uniformTable::integral
(
const scalar x1,
const scalar x2
) const
{
writeEntry(os, "Tlow", Tlow_);
writeEntry(os, "Thigh", Thigh_);
NotImplemented;
return 0;
}
void Foam::Function1s::uniformTable::write(Ostream& os) const
{
writeEntry(os, "low", low_);
writeEntry(os, "high", high_);
writeEntry(os, "values", values_);
}

View File

@ -22,28 +22,28 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::table1D
Foam::Function1s::uniformTable
Description
Tabulated property function that linearly interpolates between
the table1D values.
the uniformTable values.
Usage
\table
Property | Description
Tlow | Lower temperature limit of the table1D
Thigh | Upper temperature limit of the table1D
values | Property values, assumed uniformly distributed
low | Lower limit of the table
high | Upper limit of the table
values | Values, assumed uniformly distributed
\endtable
Example for the density of water between 280 and 350K
\verbatim
rho
{
type table1D;
type uniformTable;
Tlow 280;
Thigh 350;
low 280;
high 350;
values
(
@ -56,60 +56,63 @@ Usage
\*---------------------------------------------------------------------------*/
#ifndef table1DThermophysicalFunction_H
#define table1DThermophysicalFunction_H
#ifndef uniformTable1_H
#define uniformTable1_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
Class table1D Declaration
Class uniformTable Declaration
\*---------------------------------------------------------------------------*/
class table1D
class uniformTable
:
public thermophysicalFunction
public FieldFunction1<scalar, uniformTable>
{
// Private member data
//- Name of dictionary from which this function is instantiated
fileName dictName_;
//- Lowest temperature in the table
scalar Tlow_;
//- Lowest value in the table
scalar low_;
//- Highest temperature in the table
scalar Thigh_;
//- Highest value in the table
scalar high_;
//- Table values
List<scalar> values_;
//- Temperature increment derived from Tlow_, Thigh_ and values_.size()
scalar deltaT_;
//- Increment derived from low_, high_ and values_.size()
scalar delta_;
public:
//- Runtime type information
TypeName("table1D");
TypeName("uniformTable");
// Constructors
//- Construct from dictionary
table1D(const dictionary& dict);
//- Construct from name and dictionary
uniformTable(const word& name, const dictionary& dict);
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const;
virtual scalar value(scalar x) const;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
void write(Ostream& os) const;
@ -118,7 +121,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -98,7 +98,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Coded
(
const word& name,

View File

@ -78,13 +78,13 @@ public:
// Constructors
//- Construct from entry name and value
//- Construct from name and value
Constant(const word& name, const Type& val);
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Constant(const word& name, const dictionary& dict);
//- Construct from entry name and Istream
//- Construct from name and Istream
// Reads the constant value without the Function2 type
// for backward compatibility
Constant(const word& name, Istream& is);

View File

@ -52,16 +52,6 @@ Foam::FieldFunction2<Type, Function2Type>::FieldFunction2
{}
template<class Type, class Function2Type>
Foam::FieldFunction2<Type, Function2Type>::FieldFunction2
(
const FieldFunction2<Type, Function2Type>& ff2
)
:
Function2<Type>(ff2)
{}
template<class Type, class Function2Type>
Foam::tmp<Foam::Function2<Type>>
Foam::FieldFunction2<Type, Function2Type>::clone() const
@ -113,6 +103,20 @@ Foam::tmp<Foam::Field<Type>> Foam::FieldFunction2<Type, Function2Type>::value
}
// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * //
template<class Type>
void Foam::Function2<Type>::operator=(const Function2<Type>& f)
{
if (this == &f)
{
FatalErrorInFunction
<< "attempted assignment to self"
<< abort(FatalError);
}
}
// * * * * * * * * * * * * * * * IOstream Functions * * * * * * * * * * * * //
template<class Type>

View File

@ -94,7 +94,7 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
Function2(const word& name);
//- Copy constructor
@ -137,8 +137,8 @@ public:
// Member Operators
//- Disallow default bitwise assignment
void operator=(const Function2<Type>&) = delete;
//- Assignment
void operator=(const Function2<Type>&);
// IOstream Operators
@ -170,12 +170,9 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
FieldFunction2(const word& name);
//- Copy constructor
FieldFunction2(const FieldFunction2<Type, Function2Type>& ff1);
//- Construct and return a clone
virtual tmp<Function2<Type>> clone() const;

View File

@ -67,10 +67,10 @@ public:
// Constructors
//- Construct from entry name
//- Construct from name
OneConstant(const word& name);
//- Construct from entry name and dictionary
//- Construct from name and dictionary
OneConstant(const word& name, const dictionary& dict);

View File

@ -28,24 +28,24 @@ License
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
template<class Type>
void Foam::Function2s::Scale<Type>::read(const dictionary& coeffs)
void Foam::Function2s::Scale<Type>::read(const dictionary& dict)
{
scale_ = Function2<scalar>::New("scale", coeffs);
scale_ = Function2<scalar>::New("scale", dict);
xScale_ =
coeffs.found("xScale")
? Function1<scalar>::New("xScale", coeffs)
dict.found("xScale")
? Function1<scalar>::New("xScale", dict)
: autoPtr<Function1<scalar>>
(
new Function1s::Constant<scalar>("xScale", 1)
);
yScale_ =
coeffs.found("yScale")
? Function1<scalar>::New("yScale", coeffs)
dict.found("yScale")
? Function1<scalar>::New("yScale", dict)
: autoPtr<Function1<scalar>>
(
new Function1s::Constant<scalar>("yScale", 1)
);
value_ = Function2<Type>::New("value", coeffs);
value_ = Function2<Type>::New("value", dict);
}

View File

@ -78,7 +78,7 @@ class Scale
// Private Member Functions
//- Read the coefficients from the given dictionary
void read(const dictionary& coeffs);
void read(const dictionary& dict);
public:
@ -89,7 +89,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
Scale
(
const word& name,

View File

@ -67,7 +67,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
ZeroConstant(const word& name, const dictionary& dict);

View File

@ -78,7 +78,7 @@ public:
// Constructor
//- Construct from time, entry name and dictionary
//- Construct from time, name and dictionary
TimeFunction1
(
const Time& time,
@ -86,7 +86,7 @@ public:
const dictionary& dict
);
//- Construct null from time and entry name
//- Construct null from time and name
TimeFunction1
(
const Time& time,

View File

@ -46,7 +46,7 @@ Foam::pureMixture<ThermoType>::pureMixture
template<class ThermoType>
void Foam::pureMixture<ThermoType>::read(const dictionary& thermoDict)
{
// ***HGW mixture_ = ThermoType(thermoDict.subDict("mixture"));
mixture_ = ThermoType(thermoDict.subDict("mixture"));
}

View File

@ -138,8 +138,7 @@ void Foam::multiComponentMixture<ThermoType>::read
{
forAll(species_, i)
{
// ***HGW specieThermos_[i] =
// ThermoType(thermoDict.subDict(species_[i]));
specieThermos_[i] = ThermoType(thermoDict.subDict(species_[i]));
}
}

View File

@ -3,25 +3,19 @@ specie/specie.C
reaction/specieCoeffs/specieCoeffs.C
reaction/reaction/reaction.C
thermophysicalFunctions/thermophysicalFunction/thermophysicalFunction.C
thermophysicalFunctions/none/noneThermophysicalFunction.C
thermophysicalFunctions/constant/constantThermophysicalFunction.C
thermophysicalFunctions/table1D/table1DThermophysicalFunction.C
thermophysicalFunctions/nonUniformTable1D/nonUniformTable1DThermophysicalFunction.C
thermophysicalFunctions/integratedNonUniformTable1D/integratedNonUniformTable1DThermophysicalFunction.C
thermophysicalFunctions/integratedNonUniformTable1/integratedNonUniformTable1.C
thermophysicalFunctions/uniformTable2/uniformTable2.C
thermophysicalFunctions/APIfunctions/APIdiffCoef/APIdiffCoefThermophysicalFunction.C
thermophysicalFunctions/APIdiffCoef/APIdiffCoef.C
NSRDS = thermophysicalFunctions/NSRDS
$(NSRDS)/NSRDS0/NSRDS0ThermophysicalFunction.C
$(NSRDS)/NSRDS1/NSRDS1ThermophysicalFunction.C
$(NSRDS)/NSRDS2/NSRDS2ThermophysicalFunction.C
$(NSRDS)/NSRDS3/NSRDS3ThermophysicalFunction.C
$(NSRDS)/NSRDS4/NSRDS4ThermophysicalFunction.C
$(NSRDS)/NSRDS5/NSRDS5ThermophysicalFunction.C
$(NSRDS)/NSRDS6/NSRDS6ThermophysicalFunction.C
$(NSRDS)/NSRDS7/NSRDS7ThermophysicalFunction.C
$(NSRDS)/NSRDS14/NSRDS14ThermophysicalFunction.C
$(NSRDS)/NSRDS0/NSRDS0.C
$(NSRDS)/NSRDS1/NSRDS1.C
$(NSRDS)/NSRDS2/NSRDS2.C
$(NSRDS)/NSRDS3/NSRDS3.C
$(NSRDS)/NSRDS4/NSRDS4.C
$(NSRDS)/NSRDS5/NSRDS5.C
$(NSRDS)/NSRDS6/NSRDS6.C
$(NSRDS)/NSRDS7/NSRDS7.C
$(NSRDS)/NSRDS14/NSRDS14.C
LIB = $(FOAM_LIBBIN)/libspecie

View File

@ -32,7 +32,7 @@ template<class Specie>
Foam::icoTabulated<Specie>::icoTabulated(const dictionary& dict)
:
Specie(dict),
rho_("rho", dict.subDict("equationOfState"))
rho_("rho", dict.subDict("equationOfState").subDict("rho"))
{}

View File

@ -52,14 +52,14 @@ SourceFiles
icoTabulated.C
See also
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
\*---------------------------------------------------------------------------*/
#ifndef icoTabulated_H
#define icoTabulated_H
#include "nonUniformTable1DThermophysicalFunction.H"
#include "nonUniformTable1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -88,13 +88,13 @@ class icoTabulated
:
public Specie
{
typedef thermophysicalFunctions::nonUniformTable1D nonUniformTable1D;
typedef Function1s::nonUniformTable nonUniformTable;
// Private Data
//- Density table [kg/m^3]
nonUniformTable1D rho_;
nonUniformTable rho_;
public:
@ -105,7 +105,7 @@ public:
inline icoTabulated
(
const Specie& sp,
const nonUniformTable1D& rho
const nonUniformTable& rho
);
//- Construct from dictionary

View File

@ -31,7 +31,7 @@ template<class Specie>
inline Foam::icoTabulated<Specie>::icoTabulated
(
const Specie& sp,
const nonUniformTable1D& rho
const nonUniformTable& rho
)
:
Specie(sp),

View File

@ -32,7 +32,7 @@ template<class Specie>
Foam::rhoTabulated<Specie>::rhoTabulated(const dictionary& dict)
:
Specie(dict),
rho_("rho", dict.subDict("equationOfState"))
rho_("rho", dict.subDict("equationOfState").subDict("rho"))
{}

View File

@ -71,7 +71,7 @@ SourceFiles
rhoTabulated.C
See also
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
\*---------------------------------------------------------------------------*/

View File

@ -37,7 +37,7 @@ Foam::eIcoTabulatedThermo<EquationOfState>::eIcoTabulatedThermo
EquationOfState(dict),
Hf_(dict.subDict("thermodynamics").lookup<scalar>("Hf")),
Sf_(dict.subDict("thermodynamics").lookup<scalar>("Sf")),
Cv_("Cv", dict.subDict("thermodynamics"))
Cv_("Cv", dict.subDict("thermodynamics").subDict("Cv"))
{}

View File

@ -57,14 +57,14 @@ SourceFiles
eIcoTabulatedThermo.C
See also
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
\*---------------------------------------------------------------------------*/
#ifndef eIcoTabulatedThermo_H
#define eIcoTabulatedThermo_H
#include "integratedNonUniformTable1DThermophysicalFunction.H"
#include "integratedNonUniformTable1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -93,8 +93,7 @@ class eIcoTabulatedThermo
:
public EquationOfState
{
typedef thermophysicalFunctions::integratedNonUniformTable1D
integratedNonUniformTable1D;
typedef Function1s::integratedNonUniformTable integratedNonUniformTable;
// Private Data
@ -106,7 +105,7 @@ class eIcoTabulatedThermo
scalar Sf_;
//- Specific heat at constant volume table [J/kg/K]
integratedNonUniformTable1D Cv_;
integratedNonUniformTable Cv_;
public:

View File

@ -37,8 +37,8 @@ Foam::eTabulatedThermo<EquationOfState>::eTabulatedThermo
EquationOfState(dict),
Hf_(dict.subDict("thermodynamics").lookup<scalar>("Hf")),
Sf_(dict.subDict("thermodynamics").lookup<scalar>("Sf")),
Es_("Es", dict.subDict("thermodynamics")),
Cv_("Cv", dict.subDict("thermodynamics"))
Es_("Es", dict.subDict("thermodynamics").subDict("Es")),
Cv_("Cv", dict.subDict("thermodynamics").subDict("Cv"))
{}

View File

@ -37,7 +37,7 @@ Foam::hIcoTabulatedThermo<EquationOfState>::hIcoTabulatedThermo
EquationOfState(dict),
Hf_(dict.subDict("thermodynamics").lookup<scalar>("Hf")),
Sf_(dict.subDict("thermodynamics").lookup<scalar>("Sf")),
Cp_("Cp", dict.subDict("thermodynamics"))
Cp_("Cp", dict.subDict("thermodynamics").subDict("Cp"))
{}

View File

@ -57,14 +57,14 @@ SourceFiles
hIcoTabulatedThermo.C
See also
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
\*---------------------------------------------------------------------------*/
#ifndef hIcoTabulatedThermo_H
#define hIcoTabulatedThermo_H
#include "integratedNonUniformTable1DThermophysicalFunction.H"
#include "integratedNonUniformTable1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -93,8 +93,7 @@ class hIcoTabulatedThermo
:
public EquationOfState
{
typedef thermophysicalFunctions::integratedNonUniformTable1D
integratedNonUniformTable1D;
typedef Function1s::integratedNonUniformTable integratedNonUniformTable;
// Private Data
@ -106,7 +105,7 @@ class hIcoTabulatedThermo
scalar Sf_;
//- Specific heat at constant pressure table [J/kg/K]
integratedNonUniformTable1D Cp_;
integratedNonUniformTable Cp_;
public:

View File

@ -37,8 +37,8 @@ Foam::hTabulatedThermo<EquationOfState>::hTabulatedThermo
EquationOfState(dict),
Hf_(dict.subDict("thermodynamics").lookup<scalar>("Hf")),
Sf_(dict.subDict("thermodynamics").lookup<scalar>("Sf")),
Hs_("Hs", dict.subDict("thermodynamics")),
Cp_("Cp", dict.subDict("thermodynamics"))
Hs_("Hs", dict.subDict("thermodynamics").subDict("Hs")),
Cp_("Cp", dict.subDict("thermodynamics").subDict("Cp"))
{}

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "APIdiffCoefThermophysicalFunction.H"
#include "APIdiffCoef.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -35,8 +35,8 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef APIdiffCoefThermophysicalFunction_H
#define APIdiffCoefThermophysicalFunction_H
#ifndef APIdiffCoef_H
#define APIdiffCoef_H
#include "Function2.H"
@ -82,7 +82,7 @@ public:
const scalar wa
);
//- Construct from dictionary
//- Construct from name and dictionary
APIdiffCoef
(
const word& name,

View File

@ -23,25 +23,25 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS0.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS0, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS0, dictionary);
makeScalarFunction1(NSRDS0)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS0::NSRDS0
Foam::Function1s::NSRDS0::NSRDS0
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -50,6 +50,7 @@ Foam::thermophysicalFunctions::NSRDS0::NSRDS0
const scalar f
)
:
FieldFunction1<scalar, NSRDS0>(name),
a_(a),
b_(b),
c_(c),
@ -59,8 +60,13 @@ Foam::thermophysicalFunctions::NSRDS0::NSRDS0
{}
Foam::thermophysicalFunctions::NSRDS0::NSRDS0(const dictionary& dict)
Foam::Function1s::NSRDS0::NSRDS0
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS0>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -72,7 +78,18 @@ Foam::thermophysicalFunctions::NSRDS0::NSRDS0(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS0::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS0::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS0::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS0
Foam::Function1s::NSRDS0
Description
NSRDS function number 100
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS0ThermophysicalFunction_H
#define NSRDS0ThermophysicalFunction_H
#ifndef NSRDS0_H
#define NSRDS0_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS0
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS0>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS0
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -96,19 +97,30 @@ public:
const scalar f
);
//- Construct from dictionary
NSRDS0(const dictionary& dict);
//- Construct from name and dictionary
NSRDS0
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS0(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return ((((f_*T + e_)*T + d_)*T + c_)*T + b_)*T + a_;
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -117,7 +129,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,25 +23,24 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS1.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS7, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS7, dictionary);
makeScalarFunction1(NSRDS1)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS7::NSRDS7
Foam::Function1s::NSRDS1::NSRDS1
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -49,6 +48,7 @@ Foam::thermophysicalFunctions::NSRDS7::NSRDS7
const scalar e
)
:
FieldFunction1<scalar, NSRDS1>(name),
a_(a),
b_(b),
c_(c),
@ -57,8 +57,13 @@ Foam::thermophysicalFunctions::NSRDS7::NSRDS7
{}
Foam::thermophysicalFunctions::NSRDS7::NSRDS7(const dictionary& dict)
Foam::Function1s::NSRDS1::NSRDS1
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS1>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -69,7 +74,18 @@ Foam::thermophysicalFunctions::NSRDS7::NSRDS7(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS7::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS1::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS1::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS1
Foam::Function1s::NSRDS1
Description
NSRDS function number 101
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS1ThermophysicalFunction_H
#define NSRDS1ThermophysicalFunction_H
#ifndef NSRDS1_H
#define NSRDS1_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS1
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS1>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS1
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -95,19 +96,30 @@ public:
const scalar e
);
//- Construct from dictionary
NSRDS1(const dictionary& dict);
//- Construct from name and dictionary
NSRDS1
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS1(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return exp(a_ + b_/T + c_*log(T) + d_*pow(T, e_));
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -116,7 +128,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,30 +23,25 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS14ThermophysicalFunction.H"
#include "NSRDS14.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS14, 0);
addToRunTimeSelectionTable
(
thermophysicalFunction,
NSRDS14,
dictionary
);
makeScalarFunction1(NSRDS14)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS14::NSRDS14
Foam::Function1s::NSRDS14::NSRDS14
(
const word& name,
const scalar Tc,
const scalar a,
const scalar b,
@ -54,6 +49,7 @@ Foam::thermophysicalFunctions::NSRDS14::NSRDS14
const scalar d
)
:
FieldFunction1<scalar, NSRDS14>(name),
Tc_(Tc),
a_(a),
b_(b),
@ -62,8 +58,13 @@ Foam::thermophysicalFunctions::NSRDS14::NSRDS14
{}
Foam::thermophysicalFunctions::NSRDS14::NSRDS14(const dictionary& dict)
Foam::Function1s::NSRDS14::NSRDS14
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS14>(name),
Tc_(dict.lookup<scalar>("Tc")),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
@ -74,7 +75,18 @@ Foam::thermophysicalFunctions::NSRDS14::NSRDS14(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS14::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS14::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS14::write(Ostream& os) const
{
writeEntry(os, "Tc", Tc_);
writeEntry(os, "a", a_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS14
Foam::Function1s::NSRDS14
Description
NSRDS function number 114
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS14ThermophysicalFunction_H
#define NSRDS14ThermophysicalFunction_H
#ifndef NSRDS14_H
#define NSRDS14_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS14
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS14>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS14
(
const word& name,
const scalar Tc,
const scalar a,
const scalar b,
@ -95,14 +96,24 @@ public:
const scalar d
);
//- Construct from dictionary
NSRDS14(const dictionary& dict);
//- Construct from name and dictionary
NSRDS14
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS14(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
scalar Tdash = min(T, Tc_ - rootVSmall);
@ -115,7 +126,8 @@ public:
);
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -124,7 +136,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,31 +23,31 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS2.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS5, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS5, dictionary);
makeScalarFunction1(NSRDS2)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS5::NSRDS5
Foam::Function1s::NSRDS2::NSRDS2
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
)
:
FieldFunction1<scalar, NSRDS2>(name),
a_(a),
b_(b),
c_(c),
@ -55,8 +55,13 @@ Foam::thermophysicalFunctions::NSRDS5::NSRDS5
{}
Foam::thermophysicalFunctions::NSRDS5::NSRDS5(const dictionary& dict)
Foam::Function1s::NSRDS2::NSRDS2
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS2>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -66,7 +71,18 @@ Foam::thermophysicalFunctions::NSRDS5::NSRDS5(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS5::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS2::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS2::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS2
Foam::Function1s::NSRDS2
Description
NSRDS function number 102
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS2ThermophysicalFunction_H
#define NSRDS2ThermophysicalFunction_H
#ifndef NSRDS2_H
#define NSRDS2_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS2
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS2>
{
// Private Data
@ -88,25 +88,37 @@ public:
//- Construct from components
NSRDS2
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
);
//- Construct from dictionary
NSRDS2(const dictionary& dict);
//- Construct from name and dictionary
NSRDS2
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS2(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return a_*pow(T, b_)/(1.0 + c_/T + d_/sqr(T));
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -115,7 +127,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,30 +23,31 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS2, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS2, dictionary);
makeScalarFunction1(NSRDS3)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS2::NSRDS2
Foam::Function1s::NSRDS3::NSRDS3
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
)
:
FieldFunction1<scalar, NSRDS3>(name),
a_(a),
b_(b),
c_(c),
@ -54,8 +55,13 @@ Foam::thermophysicalFunctions::NSRDS2::NSRDS2
{}
Foam::thermophysicalFunctions::NSRDS2::NSRDS2(const dictionary& dict)
Foam::Function1s::NSRDS3::NSRDS3
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS3>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -65,7 +71,18 @@ Foam::thermophysicalFunctions::NSRDS2::NSRDS2(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS2::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS3::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS3::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS3
Foam::Function1s::NSRDS3
Description
NSRDS function number 103
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS3ThermophysicalFunction_H
#define NSRDS3ThermophysicalFunction_H
#ifndef NSRDS3_H
#define NSRDS3_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS3
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS3>
{
// Private Data
@ -88,25 +88,37 @@ public:
//- Construct from components
NSRDS3
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
);
//- Construct from dictionary
NSRDS3(const dictionary& dict);
//- Construct from name and dictionary
NSRDS3
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS3(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return a_ + b_*exp(-c_/pow(T, d_));
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -115,7 +127,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,24 +23,24 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS4.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS4, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS4, dictionary);
makeScalarFunction1(NSRDS4)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS4::NSRDS4
Foam::Function1s::NSRDS4::NSRDS4
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -48,6 +48,7 @@ Foam::thermophysicalFunctions::NSRDS4::NSRDS4
const scalar e
)
:
FieldFunction1<scalar, NSRDS4>(name),
a_(a),
b_(b),
c_(c),
@ -56,8 +57,13 @@ Foam::thermophysicalFunctions::NSRDS4::NSRDS4
{}
Foam::thermophysicalFunctions::NSRDS4::NSRDS4(const dictionary& dict)
Foam::Function1s::NSRDS4::NSRDS4
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS4>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -68,7 +74,18 @@ Foam::thermophysicalFunctions::NSRDS4::NSRDS4(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS4::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS4::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS4::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS4
Foam::Function1s::NSRDS4
Description
NSRDS function number 104
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS4ThermophysicalFunction_H
#define NSRDS4ThermophysicalFunction_H
#ifndef NSRDS4_H
#define NSRDS4_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS4
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS4>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS4
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -95,8 +96,18 @@ public:
const scalar e
);
//- Construct from dictionary
NSRDS4(const dictionary& dict);
//- Construct from name and dictionary
NSRDS4
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS4(*this));
}
// Member Functions
@ -107,7 +118,8 @@ public:
return a_ + b_/T + c_/pow(T, 3) + d_/pow(T, 8) + e_/pow(T, 9);
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -116,7 +128,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,30 +23,32 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS5.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS3, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS3, dictionary);
makeScalarFunction1(NSRDS5)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS3::NSRDS3
Foam::Function1s::NSRDS5::NSRDS5
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
)
:
FieldFunction1<scalar, NSRDS5>(name),
a_(a),
b_(b),
c_(c),
@ -54,8 +56,13 @@ Foam::thermophysicalFunctions::NSRDS3::NSRDS3
{}
Foam::thermophysicalFunctions::NSRDS3::NSRDS3(const dictionary& dict)
Foam::Function1s::NSRDS5::NSRDS5
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS5>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -65,7 +72,18 @@ Foam::thermophysicalFunctions::NSRDS3::NSRDS3(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS3::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS5::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS5::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS5
Foam::Function1s::NSRDS5
Description
NSRDS function number 105
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS5ThermophysicalFunction_H
#define NSRDS5ThermophysicalFunction_H
#ifndef NSRDS5_H
#define NSRDS5_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS5
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS5>
{
// Private Data
@ -88,25 +88,37 @@ public:
//- Construct from components
NSRDS5
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
const scalar d
);
//- Construct from dictionary
NSRDS5(const dictionary& dict);
//- Construct from name and dictionary
NSRDS5
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS5(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return a_/pow(b_, 1 + pow(1 - T/c_, d_));
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -115,7 +127,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,25 +23,25 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS6.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS6, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS6, dictionary);
makeScalarFunction1(NSRDS6)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS6::NSRDS6
Foam::Function1s::NSRDS6::NSRDS6
(
const word& name,
const scalar Tc,
const scalar a,
const scalar b,
@ -50,6 +50,7 @@ Foam::thermophysicalFunctions::NSRDS6::NSRDS6
const scalar e
)
:
FieldFunction1<scalar, NSRDS6>(name),
Tc_(Tc),
a_(a),
b_(b),
@ -59,8 +60,13 @@ Foam::thermophysicalFunctions::NSRDS6::NSRDS6
{}
Foam::thermophysicalFunctions::NSRDS6::NSRDS6(const dictionary& dict)
Foam::Function1s::NSRDS6::NSRDS6
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS6>(name),
Tc_(dict.lookup<scalar>("Tc")),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
@ -72,7 +78,18 @@ Foam::thermophysicalFunctions::NSRDS6::NSRDS6(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS6::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS6::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS6::write(Ostream& os) const
{
writeEntry(os, "Tc", Tc_);
writeEntry(os, "a", a_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS6
Foam::Function1s::NSRDS6
Description
NSRDS function number 106
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS6ThermophysicalFunction_H
#define NSRDS6ThermophysicalFunction_H
#ifndef NSRDS6_H
#define NSRDS6_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS6
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS6>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS6
(
const word& name,
const scalar Tc,
const scalar a,
const scalar b,
@ -96,20 +97,31 @@ public:
const scalar e
);
//- Construct from dictionary
NSRDS6(const dictionary& dict);
//- Construct from name and dictionary
NSRDS6
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS6(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
scalar Tr = T/Tc_;
return a_*pow(1 - Tr, ((e_*Tr + d_)*Tr + c_)*Tr + b_);
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -118,7 +130,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,24 +23,25 @@ License
\*---------------------------------------------------------------------------*/
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS7.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(NSRDS1, 0);
addToRunTimeSelectionTable(thermophysicalFunction, NSRDS1, dictionary);
makeScalarFunction1(NSRDS7)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::NSRDS1::NSRDS1
Foam::Function1s::NSRDS7::NSRDS7
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -48,6 +49,7 @@ Foam::thermophysicalFunctions::NSRDS1::NSRDS1
const scalar e
)
:
FieldFunction1<scalar, NSRDS7>(name),
a_(a),
b_(b),
c_(c),
@ -56,8 +58,13 @@ Foam::thermophysicalFunctions::NSRDS1::NSRDS1
{}
Foam::thermophysicalFunctions::NSRDS1::NSRDS1(const dictionary& dict)
Foam::Function1s::NSRDS7::NSRDS7
(
const word& name,
const dictionary& dict
)
:
FieldFunction1<scalar, NSRDS7>(name),
a_(dict.lookup<scalar>("a")),
b_(dict.lookup<scalar>("b")),
c_(dict.lookup<scalar>("c")),
@ -68,7 +75,18 @@ Foam::thermophysicalFunctions::NSRDS1::NSRDS1(const dictionary& dict)
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::thermophysicalFunctions::NSRDS1::write(Ostream& os) const
Foam::scalar Foam::Function1s::NSRDS7::integral
(
const scalar x1,
const scalar x2
) const
{
NotImplemented;
return 0;
}
void Foam::Function1s::NSRDS7::write(Ostream& os) const
{
writeEntry(os, "a", a_);
writeEntry(os, "b", b_);

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::NSRDS7
Foam::Function1s::NSRDS7
Description
NSRDS-AICHE function number 107
@ -51,16 +51,16 @@ Description
\*---------------------------------------------------------------------------*/
#ifndef NSRDS7ThermophysicalFunction_H
#define NSRDS7ThermophysicalFunction_H
#ifndef NSRDS7_H
#define NSRDS7_H
#include "thermophysicalFunction.H"
#include "Function1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
@ -69,7 +69,7 @@ namespace thermophysicalFunctions
class NSRDS7
:
public thermophysicalFunction
public FieldFunction1<scalar, NSRDS7>
{
// Private Data
@ -88,6 +88,7 @@ public:
//- Construct from components
NSRDS7
(
const word& name,
const scalar a,
const scalar b,
const scalar c,
@ -95,19 +96,30 @@ public:
const scalar e
);
//- Construct from dictionary
NSRDS7(const dictionary& dict);
//- Construct from name and dictionary
NSRDS7
(
const word& name,
const dictionary& dict
);
//- Construct and return a clone
virtual tmp<Function1<scalar>> clone() const
{
return tmp<Function1<scalar>>(new NSRDS7(*this));
}
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const
virtual scalar value(scalar T) const
{
return a_ + b_*sqr((c_/T)/sinh(c_/T)) + d_*sqr((e_/T)/cosh(e_/T));
}
using thermophysicalFunction::write;
//- Integrate between two scalar values
virtual scalar integral(const scalar x1, const scalar x2) const;
//- Write the function coefficients
virtual void write(Ostream& os) const;
@ -116,7 +128,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -1,63 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2019-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "constantThermophysicalFunction.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
{
defineTypeNameAndDebug(constant, 0);
addToRunTimeSelectionTable(thermophysicalFunction, constant, dictionary);
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::constant::constant(const dictionary& dict)
:
value_(dict.lookup<scalar>("value"))
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::thermophysicalFunctions::constant::value(scalar T) const
{
return value_;
}
void Foam::thermophysicalFunctions::constant::write(Ostream& os) const
{
writeEntry(os, "value", value_);
}
// ************************************************************************* //

View File

@ -1,104 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2019-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::constant
Description
Constant property function.
Usage
\constant
Property | Description
value | Constant property value
\endconstant
Example for the density of water between 280 and 350K
\verbatim
rho
{
type constant;
value 999.87;
}
\endverbatim
\*---------------------------------------------------------------------------*/
#ifndef constantThermophysicalFunction_H
#define constantThermophysicalFunction_H
#include "thermophysicalFunction.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
{
/*---------------------------------------------------------------------------*\
Class constant Declaration
\*---------------------------------------------------------------------------*/
class constant
:
public thermophysicalFunction
{
// Private member data
//- Constant value
scalar value_;
public:
//- Runtime type information
TypeName("constant");
// Constructors
//- Construct from dictionary
constant(const dictionary& dict);
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const;
//- Write the function coefficients
void write(Ostream& os) const;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "integratedNonUniformTable1DThermophysicalFunction.H"
#include "integratedNonUniformTable1.H"
#include "specie.H"
#include "addToRunTimeSelectionTable.H"
@ -31,30 +31,22 @@ License
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
defineTypeNameAndDebug(integratedNonUniformTable1D, 0);
addToRunTimeSelectionTable
(
thermophysicalFunction,
integratedNonUniformTable1D,
dictionary
);
makeScalarFunction1(integratedNonUniformTable)
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::integratedNonUniformTable1D::
integratedNonUniformTable1D
Foam::Function1s::integratedNonUniformTable::integratedNonUniformTable
(
const word& name,
const dictionary& dict
)
:
nonUniformTable1D(name, dict),
nonUniformTable(name, dict),
intf_(values().size()),
intfByT_(values().size())
{
@ -78,19 +70,9 @@ integratedNonUniformTable1D
}
Foam::thermophysicalFunctions::integratedNonUniformTable1D::
integratedNonUniformTable1D
(
const dictionary& dict
)
:
integratedNonUniformTable1D("values", dict)
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::thermophysicalFunctions::integratedNonUniformTable1D::intfdT
Foam::scalar Foam::Function1s::integratedNonUniformTable::intfdT
(
scalar T
) const
@ -107,8 +89,7 @@ Foam::scalar Foam::thermophysicalFunctions::integratedNonUniformTable1D::intfdT
}
Foam::scalar Foam::thermophysicalFunctions::integratedNonUniformTable1D::
intfByTdT
Foam::scalar Foam::Function1s::integratedNonUniformTable::intfByTdT
(
scalar T
) const
@ -124,12 +105,12 @@ intfByTdT
}
void Foam::thermophysicalFunctions::integratedNonUniformTable1D::write
void Foam::Function1s::integratedNonUniformTable::write
(
Ostream& os
) const
{
nonUniformTable1D::write(os);
nonUniformTable::write(os);
}

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::integratedNonUniformTable1D
Foam::Function1s::integratedNonUniformTable
Description
Non-uniform tabulated property function that linearly interpolates between
@ -33,16 +33,16 @@ Description
the table.
Usage
\integratedNonUniformTable1D
\integratedNonUniformTable
Property | Description
values | List of (temperature property) value pairs
\endintegratedNonUniformTable1D
values | List of value pairs
\endintegratedNonUniformTable
Example for the density of water between 280 and 350K
\verbatim
rho
{
type integratedNonUniformTable1D;
type integratedNonUniformTable;
values
(
@ -55,25 +55,25 @@ Usage
\*---------------------------------------------------------------------------*/
#ifndef integratedNonUniformTable1DThermophysicalFunction_H
#define integratedNonUniformTable1DThermophysicalFunction_H
#ifndef integratedNonUniformTable1_H
#define integratedNonUniformTable1_H
#include "nonUniformTable1DThermophysicalFunction.H"
#include "nonUniformTable1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
namespace Function1s
{
/*---------------------------------------------------------------------------*\
Class integratedNonUniformTable1D Declaration
Class integratedNonUniformTable Declaration
\*---------------------------------------------------------------------------*/
class integratedNonUniformTable1D
class integratedNonUniformTable
:
public nonUniformTable1D
public nonUniformTable
{
// Private member data
@ -85,16 +85,13 @@ class integratedNonUniformTable1D
public:
//- Runtime type information
TypeName("integratedNonUniformTable1D");
TypeName("integratedNonUniformTable");
// Constructors
//- Construct from entry name and dictionary
integratedNonUniformTable1D(const word& name, const dictionary& dict);
//- Construct from dictionary
integratedNonUniformTable1D(const dictionary& dict);
integratedNonUniformTable(const word& name, const dictionary& dict);
// Member Functions
@ -112,7 +109,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Function1s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -1,66 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2019-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "noneThermophysicalFunction.H"
#include "addToRunTimeSelectionTable.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
{
defineTypeNameAndDebug(none, 0);
addToRunTimeSelectionTable(thermophysicalFunction, none, dictionary);
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::thermophysicalFunctions::none::none(const dictionary& dict)
:
dictName_(dict.name())
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::thermophysicalFunctions::none::value(scalar T) const
{
FatalErrorInFunction
<< "Required Function " << nl
<< " " << dictName_ << nl
<< " is not defined."
<< exit(FatalError);
return 0;
}
void Foam::thermophysicalFunctions::none::write(Ostream& os) const
{}
// ************************************************************************* //

View File

@ -1,89 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2019-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunctions::none
Description
Undefined function which returns an error when called.
\*---------------------------------------------------------------------------*/
#ifndef noneThermophysicalFunction_H
#define noneThermophysicalFunction_H
#include "thermophysicalFunction.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace thermophysicalFunctions
{
/*---------------------------------------------------------------------------*\
Class none Declaration
\*---------------------------------------------------------------------------*/
class none
:
public thermophysicalFunction
{
// Private member data
//- Name of dictionary from which this function is instantiated
fileName dictName_;
public:
//- Runtime type information
TypeName("none");
// Constructors
//- Construct from dictionary
none(const dictionary& dict);
// Member Functions
//- Evaluate the function and return the result
scalar value(scalar T) const;
//- Write the function coefficients
void write(Ostream& os) const;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace thermophysicalFunctions
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //

View File

@ -1,108 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "thermophysicalFunction.H"
#include "noneThermophysicalFunction.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
defineTypeNameAndDebug(thermophysicalFunction, 0);
defineRunTimeSelectionTable(thermophysicalFunction, dictionary);
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::autoPtr<Foam::thermophysicalFunction> Foam::thermophysicalFunction::New
(
const word& name,
const dictionary& dict
)
{
if (debug)
{
InfoInFunction
<< "Constructing thermophysicalFunction"
<< endl;
}
if (dict.isDict(name))
{
const dictionary& funcDict(dict.subDict(name));
const word thermophysicalFunctionType(funcDict.lookup("type"));
dictionaryConstructorTable::iterator cstrIter =
dictionaryConstructorTablePtr_->find(thermophysicalFunctionType);
if (cstrIter == dictionaryConstructorTablePtr_->end())
{
FatalErrorInFunction
<< "Unknown thermophysicalFunction type "
<< thermophysicalFunctionType
<< nl << nl
<< "Valid thermophysicalFunction types are :" << endl
<< dictionaryConstructorTablePtr_->sortedToc()
<< abort(FatalError);
}
return autoPtr<thermophysicalFunction>(cstrIter()(funcDict));
}
else
{
return autoPtr<thermophysicalFunction>
(
new thermophysicalFunctions::none(dict.name()/name)
);
}
}
// * * * * * * * * * * * * * * * IOstream Functions * * * * * * * * * * * * //
void Foam::writeEntry(Ostream& os, const thermophysicalFunction& f)
{
writeKeyword(os, "***HGW")
<< nl << indent << token::BEGIN_BLOCK << nl << incrIndent;
writeEntry(os, "type", f.type());
f.write(os);
os << decrIndent << indent << token::END_BLOCK << endl;
}
// * * * * * * * * * * * * * * * Ostream Operator * * * * * * * * * * * * * //
Foam::Ostream& Foam::operator<<(Ostream& os, const thermophysicalFunction& f)
{
f.write(os);
return os;
}
// ************************************************************************* //

View File

@ -1,125 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::thermophysicalFunction
Description
Abstract base class for thermo-physical functions
\*---------------------------------------------------------------------------*/
#ifndef thermophysicalFunction_H
#define thermophysicalFunction_H
#include "scalar.H"
#include "IOstreams.H"
#include "typeInfo.H"
#include "autoPtr.H"
#include "runTimeSelectionTables.H"
#include "dictionary.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
// Forward declaration of friend functions and operators
class thermophysicalFunction;
Ostream& operator<<(Ostream& os, const thermophysicalFunction& l);
/*---------------------------------------------------------------------------*\
Class thermophysicalFunction Declaration
\*---------------------------------------------------------------------------*/
class thermophysicalFunction
{
public:
//- Runtime type information
TypeName("thermophysicalFunction");
// Declare run-time constructor selection tables
declareRunTimeSelectionTable
(
autoPtr,
thermophysicalFunction,
dictionary,
(const dictionary& dict),
(dict)
);
// Constructors
//- Construct null
thermophysicalFunction()
{}
//- Return pointer to new thermophysicalFunction created from dict
static autoPtr<thermophysicalFunction> New
(
const word& name,
const dictionary& dict
);
//- Destructor
virtual ~thermophysicalFunction()
{}
// Member Functions
//- Evaluate the function and return the result
virtual scalar value(scalar T) const = 0;
//- Write the function coefficients
virtual void write(Ostream& os) const = 0;
// Ostream Operator
friend Ostream& operator<<
(
Ostream& os,
const thermophysicalFunction& f
);
};
void writeEntry(Ostream& os, const thermophysicalFunction& f);
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //

View File

@ -46,11 +46,9 @@ Foam::Function2s::uniformTable::uniformTable
)
:
FieldFunction2<scalar, uniformTable>(name),
pLow_(dict.lookup<scalar>("pLow")),
pHigh_(dict.lookup<scalar>("pHigh")),
Tlow_(dict.lookup<scalar>("Tlow")),
Thigh_(dict.lookup<scalar>("Thigh")),
values_(dict.lookup(name))
low_(dict.lookup<Pair<scalar>>("low")),
high_(dict.lookup<Pair<scalar>>("high")),
values_(dict.lookup("values"))
{
if (values_.m() < 2 || values_.n() < 2)
{
@ -62,8 +60,8 @@ Foam::Function2s::uniformTable::uniformTable
}
else
{
deltap_ = (pHigh_ - pLow_)/(values_.m() - 1);
deltaT_ = (Thigh_ - Tlow_)/(values_.n() - 1);
deltax_ = (high_.first() - low_.first())/(values_.m() - 1);
deltay_ = (high_.second() - low_.second())/(values_.n() - 1);
}
}
@ -72,28 +70,28 @@ Foam::Function2s::uniformTable::uniformTable
inline void Foam::Function2s::uniformTable::checkRange
(
scalar p,
scalar ndp,
label ip,
scalar T,
scalar ndT,
label iT
scalar x,
scalar ndx,
label ix,
scalar y,
scalar ndy,
label iy
) const
{
if (ndp < 0 || ip > values_.m() - 2)
if (ndx < 0 || ix > values_.m() - 2)
{
FatalErrorInFunction
<< "Pressure " << p << " out of range "
<< pLow_ << " to " << pHigh_ << nl
<< "x " << x << " out of range "
<< low_.first() << " to " << high_.first() << nl
<< " of table " << name_
<< exit(FatalError);
}
if (ndT < 0 || iT > values_.n() - 2)
if (ndy < 0 || iy > values_.n() - 2)
{
FatalErrorInFunction
<< "Temperature " << T << " out of range "
<< Tlow_ << " to " << Thigh_ << nl
<< "y " << y << " out of range "
<< low_.second() << " to " << high_.second() << nl
<< " of table " << name_
<< exit(FatalError);
}
@ -102,36 +100,36 @@ inline void Foam::Function2s::uniformTable::checkRange
Foam::scalar Foam::Function2s::uniformTable::value
(
scalar p,
scalar T
scalar x,
scalar y
) const
{
const scalar ndp = (p - pLow_)/deltap_;
const label ip = ndp;
const scalar ndx = (x - low_.first())/deltax_;
const label ix = ndx;
const scalar ndT = (T - Tlow_)/deltaT_;
const label iT = ndT;
const scalar ndy = (y - low_.second())/deltay_;
const label iy = ndy;
checkRange(p, ndp, ip, T, ndT, iT);
checkRange(x, ndx, ix, y, ndy, iy);
const scalar pi = pLow_ + ip*deltap_;
const scalar lambdap = (p - pi)/deltap_;
const scalar xi = low_.first() + ix*deltax_;
const scalar lambdax = (x - xi)/deltax_;
// Interpolate the values at Ti wrt p
const scalar fpi =
values_(ip, iT)
+ lambdap*(values_(ip + 1, iT) - values_(ip, iT));
// Interpolate the values at yi wrt x
const scalar fxi =
values_(ix, iy)
+ lambdax*(values_(ix + 1, iy) - values_(ix, iy));
// Interpolate the values at Ti+1 wrt p
const scalar fpip1 =
values_(ip, iT + 1)
+ lambdap*(values_(ip + 1, iT + 1) - values_(ip, iT + 1));
// Interpolate the values at yi+1 wrt x
const scalar fxix1 =
values_(ix, iy + 1)
+ lambdax*(values_(ix + 1, iy + 1) - values_(ix, iy + 1));
const scalar Ti = Tlow_ + iT*deltaT_;
const scalar lambdaT = (T - Ti)/deltaT_;
const scalar yi = low_.second() + iy*deltay_;
const scalar lambday = (y - yi)/deltay_;
// Interpolate wrt T
return fpi + lambdaT*(fpip1 - fpi);
// Interpolate wrt y
return fxi + lambday*(fxix1 - fxi);
}
@ -142,21 +140,21 @@ dfdp
scalar T
) const
{
const scalar ndp = (p - pLow_)/deltap_;
const scalar ndp = (p - low_.first())/deltax_;
const label ip = ndp;
const scalar ndT = (T - Tlow_)/deltaT_;
const scalar ndT = (T - low_.second())/deltay_;
const label iT = ndT;
checkRange(p, ndp, ip, T, ndT, iT);
const scalar dfdpi =
(values_(ip + 1, iT) - values_(ip, iT))/deltap_;
(values_(ip + 1, iT) - values_(ip, iT))/deltax_;
const scalar dfdpip1 =
(values_(ip + 1, iT + 1) - values_(ip, iT + 1))/deltap_;
(values_(ip + 1, iT + 1) - values_(ip, iT + 1))/deltax_;
const scalar Ti = Tlow_ + iT*deltaT_;
const scalar lambdaT = (T - Ti)/deltaT_;
const scalar Ti = low_.second() + iT*deltay_;
const scalar lambdaT = (T - Ti)/deltay_;
// Interpolate wrt T
return dfdpi + lambdaT*(dfdpip1 - dfdpi);
@ -170,21 +168,21 @@ dfdT
scalar T
) const
{
const scalar ndp = (p - pLow_)/deltap_;
const scalar ndp = (p - low_.first())/deltax_;
const label ip = ndp;
const scalar ndT = (T - Tlow_)/deltaT_;
const scalar ndT = (T - low_.second())/deltay_;
const label iT = ndT;
checkRange(p, ndp, ip, T, ndT, iT);
const scalar dfdTi =
(values_(ip, iT + 1) - values_(ip, iT))/deltaT_;
(values_(ip, iT + 1) - values_(ip, iT))/deltay_;
const scalar dfdTip1 =
(values_(ip + 1, iT + 1) - values_(ip + 1, iT))/deltaT_;
(values_(ip + 1, iT + 1) - values_(ip + 1, iT))/deltay_;
const scalar pi = pLow_ + ip*deltap_;
const scalar lambdap = (p - pi)/deltap_;
const scalar pi = low_.first() + ip*deltax_;
const scalar lambdap = (p - pi)/deltax_;
// Interpolate wrt p
return dfdTi + lambdap*(dfdTip1 - dfdTi);
@ -193,10 +191,8 @@ dfdT
void Foam::Function2s::uniformTable::write(Ostream& os) const
{
writeEntry(os, "pLow", Tlow_);
writeEntry(os, "pHigh", Thigh_);
writeEntry(os, "Tlow", Tlow_);
writeEntry(os, "Thigh", Thigh_);
writeEntry(os, "low", low_);
writeEntry(os, "high", high_);
writeEntry(os, "values", values_);
}

View File

@ -64,6 +64,7 @@ Usage
#include "Function2.H"
#include "scalarMatrices.H"
#include "Pair.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -82,38 +83,32 @@ class uniformTable
{
// Private member data
//- Lowest pressure in the table
scalar pLow_;
//- Lowest values in the table
Pair<scalar> low_;
//- Highest pressure in the table
scalar pHigh_;
//- Lowest temperature in the table
scalar Tlow_;
//- Highest temperature in the table
scalar Thigh_;
//- Highest values in the table
Pair<scalar> high_;
//- Table values
scalarRectangularMatrix values_;
//- pressure increment derived from pLow_, pHigh_ and values_.m()
scalar deltap_;
//- x increment derived from low_, high_ and values_.m()
scalar deltax_;
//- Temperature increment derived from Tlow_, Thigh_ and values_.n()
scalar deltaT_;
//- y increment derived from low_, high_ and values_.n()
scalar deltay_;
// Private member functions
inline void checkRange
(
scalar p,
scalar ndp,
label ip,
scalar T,
scalar ndT,
label iT
scalar x,
scalar ndx,
label ix,
scalar y,
scalar ndy,
label iy
) const;
@ -125,7 +120,7 @@ public:
// Constructors
//- Construct from entry name and dictionary
//- Construct from name and dictionary
uniformTable(const word& name, const dictionary& dict);
@ -138,7 +133,7 @@ public:
}
//- Evaluate the function and return the result
scalar value(scalar p, scalar T) const;
virtual scalar value(scalar x, scalar y) const;
//- Evaluate the derivative of the function w.r.t. p
scalar dfdp(scalar p, scalar T) const;

View File

@ -35,8 +35,8 @@ Foam::icoTabulatedTransport<Thermo>::icoTabulatedTransport
)
:
Thermo(dict),
mu_("mu", dict.subDict("transport")),
kappa_("kappa", dict.subDict("transport"))
mu_("mu", dict.subDict("transport").subDict("mu")),
kappa_("kappa", dict.subDict("transport").subDict("kappa"))
{}

View File

@ -61,14 +61,14 @@ SourceFiles
icoTabulatedTransport.C
See also
Foam::thermophysicalFunctions::nonUniformTable1D
Foam::Function1s::nonUniformTable
\*---------------------------------------------------------------------------*/
#ifndef icoTabulatedTransport_H
#define icoTabulatedTransport_H
#include "nonUniformTable1DThermophysicalFunction.H"
#include "nonUniformTable1.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -92,16 +92,16 @@ class icoTabulatedTransport
:
public Thermo
{
typedef thermophysicalFunctions::nonUniformTable1D nonUniformTable1D;
typedef Function1s::nonUniformTable nonUniformTable;
// Private Data
//- Dynamic viscosity table [Pa.s]
nonUniformTable1D mu_;
nonUniformTable mu_;
//- Thermal conductivity table [W/m/K]
nonUniformTable1D kappa_;
nonUniformTable kappa_;
// Private Member Functions
@ -110,8 +110,8 @@ class icoTabulatedTransport
inline icoTabulatedTransport
(
const Thermo& t,
const nonUniformTable1D& muPoly,
const nonUniformTable1D& kappaPoly
const nonUniformTable& muPoly,
const nonUniformTable& kappaPoly
);

View File

@ -31,8 +31,8 @@ template<class Thermo>
inline Foam::icoTabulatedTransport<Thermo>::icoTabulatedTransport
(
const Thermo& t,
const nonUniformTable1D& mu,
const nonUniformTable1D& kappa
const nonUniformTable& mu,
const nonUniformTable& kappa
)
:
Thermo(t),

View File

@ -35,8 +35,8 @@ Foam::tabulatedTransport<Thermo>::tabulatedTransport
)
:
Thermo(dict),
mu_("mu", dict.subDict("transport")),
kappa_("kappa", dict.subDict("transport"))
mu_("mu", dict.subDict("transport").subDict("mu")),
kappa_("kappa", dict.subDict("transport").subDict("kappa"))
{}

View File

@ -53,12 +53,22 @@ Foam::Ar::Ar()
0.0,
1.4138e+4
),
rho_(151.922244, 0.286, 150.86, 0.2984),
pv_(39.233, -1051.7, -3.5895, 5.0444e-05, 2),
hl_(150.86, 218509.061780314, 0.352, 0.0, 0.0, 0.0),
Cp_(4562.43116050866, -70.7770101131471, 0.367477721037349, 0.0, 0.0, 0.0),
rho_("rho", 151.922244, 0.286, 150.86, 0.2984),
pv_("pv", 39.233, -1051.7, -3.5895, 5.0444e-05, 2),
hl_("hl", 150.86, 218509.061780314, 0.352, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
4562.43116050866,
-70.7770101131471,
0.367477721037349,
0.0,
0.0,
0.0
),
h_
(
"h",
-1460974.49982473,
4562.43116050866,
-35.3885050565735,
@ -66,20 +76,21 @@ Foam::Ar::Ar()
0.0,
0.0
),
Cpg_(520.326424351657, 0.0, 0.0, 0.0, 0.0, 0.0),
Cpg_("Cpg", 520.326424351657, 0.0, 0.0, 0.0, 0.0, 0.0),
B_
(
"B",
0.000952488234705117,
-0.379993992189847,
-2022.62941824372,
4633523580654.85,
-302893761890458.0
),
mu_(-8.868, 204.3, -0.3831, -1.3e-22, 10.0),
mug_(8.386e-07, 0.6175, 75.377, -432.5),
kappa_(0.1819, -0.0003176, -4.11e-06, 0.0, 0.0, 0.0),
kappag_(0.0001236, 0.8262, -132.8, 16000),
sigma_(150.86, 0.03823, 1.2927, 0.0, 0.0, 0.0),
mu_("mu", -8.868, 204.3, -0.3831, -1.3e-22, 10.0),
mug_("mug", 8.386e-07, 0.6175, 75.377, -432.5),
kappa_("kappa", 0.1819, -0.0003176, -4.11e-06, 0.0, 0.0, 0.0),
kappag_("kappag", 0.0001236, 0.8262, -132.8, 16000),
sigma_("sigma", 150.86, 0.03823, 1.2927, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 39.948, 28) // note: Same as nHeptane
{}
@ -87,18 +98,18 @@ Foam::Ar::Ar()
Foam::Ar::Ar
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS0& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS0& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define Ar_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class Ar
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS0 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS0 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
Ar
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS0& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS0& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,11 +53,12 @@ Foam::C10H22::C10H22()
0.4923,
1.57e+4
),
rho_(60.94208835, 0.25745, 617.7, 0.28912),
pv_(112.73, -9749.6, -13.245, 7.1266e-06, 2.0),
hl_(617.70, 464743.296904101, 0.39797, 0.0, 0.0, 0.0),
rho_("rho", 60.94208835, 0.25745, 617.7, 0.28912),
pv_("pv", 112.73, -9749.6, -13.245, 7.1266e-06, 2.0),
hl_("hl", 617.70, 464743.296904101, 0.39797, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
1958.18252099659,
-1.39094071757388,
0.00754612221948905,
@ -67,6 +68,7 @@ Foam::C10H22::C10H22()
),
h_
(
"h",
-2699436.15229142,
1958.18252099659,
-0.695470358786942,
@ -74,20 +76,29 @@ Foam::C10H22::C10H22()
0.0,
0.0
),
Cpg_(1175.10630073444, 3762.16748076045, 1614.1, 2658.04547211582, 742),
Cpg_
(
"Cpg",
1175.10630073444,
3762.16748076045,
1614.1,
2658.04547211582,
742
),
B_
(
"B",
0.00337351091119935,
-4.13606494008504,
-534560.916470464,
-1.13364022911762e+19,
2.80704220402713e+21
),
mu_(-16.468, 1533.5, 0.7511, 0.0, 0.0),
mug_(2.64e-08, 0.9487, 71.0, 0.0),
kappa_(0.2063, -0.000254, 0.0, 0.0, 0.0, 0.0),
kappag_(-668.4, 0.9323, -4071000000.0, 0.0),
sigma_(617.70, 0.055435, 1.3095, 0.0, 0.0, 0.0),
mu_("mu", -16.468, 1533.5, 0.7511, 0.0, 0.0),
mug_("mug", 2.64e-08, 0.9487, 71.0, 0.0),
kappa_("kappa", 0.2063, -0.000254, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", -668.4, 0.9323, -4071000000.0, 0.0),
sigma_("sigma", 617.70, 0.055435, 1.3095, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 142.285, 28.0) // note: Same as nHeptane
{}
@ -95,18 +106,18 @@ Foam::C10H22::C10H22()
Foam::C10H22::C10H22
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C10H22_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C10H22
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C10H22
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,12 +53,22 @@ Foam::C12H26::C12H26()
0.5764,
1.59e+4
),
rho_(60.53982858, 0.25511, 658.0, 0.29368),
pv_(137.47, -11976.0, -16.698, 8.0906e-06, 2.0),
hl_(658.0, 454020.829174935, 0.40681, 0.0, 0.0, 0.0),
Cp_(2983.53861146661, -8.0352006011577, 0.018207916025784, 0.0, 0.0, 0.0),
rho_("rho", 60.53982858, 0.25511, 658.0, 0.29368),
pv_("pv", 137.47, -11976.0, -16.698, 8.0906e-06, 2.0),
hl_("hl", 658.0, 454020.829174935, 0.40681, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
2983.53861146661,
-8.0352006011577,
0.018207916025784,
0.0,
0.0,
0.0
),
h_
(
"h",
-2755166.83820769,
2983.53861146661,
-4.01760030057885,
@ -66,20 +76,29 @@ Foam::C12H26::C12H26()
0.0,
0.0
),
Cpg_(1250.16144371778, 3894.02247296552, 1715.5, 2650.67101879792, 777.5),
Cpg_
(
"Cpg",
1250.16144371778,
3894.02247296552,
1715.5,
2650.67101879792,
777.5
),
B_
(
"B",
0.00516619896910848,
-6.40491258556517,
-295295.236529723,
-3.22147729807794e+19,
8.78195117941974e+21
),
mu_(-20.607, 1943, 1.3205, 0.0, 0.0),
mug_(6.344e-08, 0.8287, 219.5, 0.0),
kappa_(0.2047, -0.0002326, 0.0, 0.0, 0.0, 0.0),
kappag_(5.719e-06, 1.4699, 579.4, 0.0),
sigma_(658.0, 0.055493, 1.3262, 0.0, 0.0, 0.0),
mu_("mu", -20.607, 1943, 1.3205, 0.0, 0.0),
mug_("mug", 6.344e-08, 0.8287, 219.5, 0.0),
kappa_("kappa", 0.2047, -0.0002326, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", 5.719e-06, 1.4699, 579.4, 0.0),
sigma_("sigma", 658.0, 0.055493, 1.3262, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 170.338, 28.0) // note: Same as nHeptane
{}
@ -87,18 +106,18 @@ Foam::C12H26::C12H26()
Foam::C12H26::C12H26
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C12H26_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C12H26
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C12H26
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,11 +53,12 @@ Foam::C13H28::C13H28()
0.6186,
1.5901e+4
),
rho_(59.513022, 0.2504, 675.8, 0.312),
pv_(118.27, -11432, -13.769, 5.9641e-06, 2.0),
hl_(675.80, 444227.48352453, 0.4162, 0.0, 0.0, 0.0),
rho_("rho", 59.513022, 0.2504, 675.8, 0.312),
pv_("pv", 118.27, -11432, -13.769, 5.9641e-06, 2.0),
hl_("hl", 675.80, 444227.48352453, 0.4162, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
4275.05220622135,
-16.6539202126217,
0.0325755973205326,
@ -67,6 +68,7 @@ Foam::C13H28::C13H28()
),
h_
(
"h",
-2860442.0545124,
4275.05220622135,
-8.32696010631085,
@ -74,20 +76,29 @@ Foam::C13H28::C13H28()
0.0,
0.0
),
Cpg_(1136.87522035093, 3641.14663846175, -1443, 2277.00485450058, -683.0),
Cpg_
(
"Cpg",
1136.87522035093,
3641.14663846175,
-1443,
2277.00485450058,
-683.0
),
B_
(
"B",
0.00246321156401703,
-2.66601578390692,
-1249532.17801643,
-1.0460770753668e+19,
1.90117430097904e+21
),
mu_(-23.341, 2121.9, 1.7208, 0.0, 0.0),
mug_(3.5585e-08, 0.8987, 165.3, 0.0),
kappa_(0.1981, -0.0002046, 0.0, 0.0, 0.0, 0.0),
kappag_(5.3701e-06, 1.4751, 599.09, 0.0),
sigma_(675.80, 0.05561, 1.3361, 0.0, 0.0, 0.0),
mu_("mu", -23.341, 2121.9, 1.7208, 0.0, 0.0),
mug_("mug", 3.5585e-08, 0.8987, 165.3, 0.0),
kappa_("kappa", 0.1981, -0.0002046, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", 5.3701e-06, 1.4751, 599.09, 0.0),
sigma_("sigma", 675.80, 0.05561, 1.3361, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 184.365, 28.0) // note: Same as nHeptane
{}
@ -95,18 +106,18 @@ Foam::C13H28::C13H28()
Foam::C13H28::C13H28
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C13H28_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C13H28
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C13H28
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,11 +53,12 @@ Foam::C14H30::C14H30()
0.6617,
1.6173e+4
),
rho_(60.92023144, 0.2582, 692.4, 0.26628),
pv_(249.21, -16915, -35.195, 0.028451, 1.0),
hl_(692.40, 455764.345336506, 0.428, 0.0, 0.0, 0.0),
rho_("rho", 60.92023144, 0.2582, 692.4, 0.26628),
pv_("pv", 249.21, -16915, -35.195, 0.028451, 1.0),
hl_("hl", 692.40, 455764.345336506, 0.428, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
2565.72845679261,
-4.78114036856325,
0.0120362716238558,
@ -67,6 +68,7 @@ Foam::C14H30::C14H30()
),
h_
(
"h",
-2690601.01887934,
2565.72845679261,
-2.39057018428162,
@ -74,20 +76,29 @@ Foam::C14H30::C14H30()
0.0,
0.0
),
Cpg_(1134.11831122223, 3629.17859591113, -1440.3, 2275.29335860317, -682),
Cpg_
(
"Cpg",
1134.11831122223,
3629.17859591113,
-1440.3,
2275.29335860317,
-682
),
B_
(
"B",
0.00247837614419936,
-2.62692044034034,
-1427174.48284205,
-1.68288035807895e+19,
3.48854792531957e+21
),
mu_(-18.964, 2010.9, 1.0648, 0.0, 0.0),
mug_(4.4565e-08, 0.8684, 228.16, -4347.2),
kappa_(0.1957, -0.0001993, 0.0, 0.0, 0.0, 0.0),
kappag_(-0.000628, 0.944, -5490, 0.0),
sigma_(692.40, 0.056436, 1.3658, 0.0, 0.0, 0.0),
mu_("mu", -18.964, 2010.9, 1.0648, 0.0, 0.0),
mug_("mug", 4.4565e-08, 0.8684, 228.16, -4347.2),
kappa_("kappa", 0.1957, -0.0001993, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", -0.000628, 0.944, -5490, 0.0),
sigma_("sigma", 692.40, 0.056436, 1.3658, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 198.392, 28.0) // note: Same as nHeptane
{}
@ -95,18 +106,18 @@ Foam::C14H30::C14H30()
Foam::C14H30::C14H30
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C14H30_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C14H30
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C14H30
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,11 +53,12 @@ Foam::C16H34::C16H34()
0.7471,
1.6052e+4
),
rho_(61.94656776, 0.25442, 720.6, 0.3238),
pv_(233.1, -17346, -32.251, 0.02407, 1.0),
hl_(720.60, 430654.548987397, 0.4122, 0.0, 0.0, 0.0),
rho_("rho", 61.94656776, 0.25442, 720.6, 0.3238),
pv_("pv", 233.1, -17346, -32.251, 0.02407, 1.0),
hl_("hl", 720.60, 430654.548987397, 0.4122, 0.0, 0.0, 0.0),
Cp_
(
"Cp",
3769.90540791182,
-12.5871068599136,
0.0247211255663602,
@ -67,6 +68,7 @@ Foam::C16H34::C16H34()
),
h_
(
"h",
-2777201.30410301,
3769.90540791182,
-6.29355342995681,
@ -74,20 +76,29 @@ Foam::C16H34::C16H34()
0.0,
0.0
),
Cpg_(1128.74592618108, 3600.8584828171, -1429.7, 2259.69988429913, 679.0),
Cpg_
(
"Cpg",
1128.74592618108,
3600.8584828171,
-1429.7,
2259.69988429913,
679.0
),
B_
(
"B",
0.0025091191718997,
-2.46668079807106,
-1704070.72767901,
-3.00623548219001e+19,
7.07320950690231e+21
),
mu_(-18.388, 2056.8, 0.98681, 0.0, 0.0),
mug_(1.2463e-07, 0.7322, 395.0, 6000.0),
kappa_(0.1963, -0.00019, 0.0, 0.0, 0.0, 0.0),
kappag_(3.075e-06, 1.552, 678.0, 0.0),
sigma_(720.60, 0.05699, 1.3929, 0.0, 0.0, 0.0),
mu_("mu", -18.388, 2056.8, 0.98681, 0.0, 0.0),
mug_("mug", 1.2463e-07, 0.7322, 395.0, 6000.0),
kappa_("kappa", 0.1963, -0.00019, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", 3.075e-06, 1.552, 678.0, 0.0),
sigma_("sigma", 720.60, 0.05699, 1.3929, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 226.446, 28.0) // note: Same as nHeptane
{}
@ -95,18 +106,18 @@ Foam::C16H34::C16H34()
Foam::C16H34::C16H34
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C16H34_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C16H34
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS6 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS6 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C16H34
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS6& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS6& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

View File

@ -53,11 +53,12 @@ Foam::C2H5OH::C2H5OH()
0.6371,
2.6421e+4
),
rho_(70.1308387, 0.26395, 516.25, 0.2367),
pv_(59.796, -6595, -5.0474, 6.3e-07, 2),
hl_(516.25, 958345.091059064, -0.4134, 0.75362, 0.0, 0.0),
rho_("rho", 70.1308387, 0.26395, 516.25, 0.2367),
pv_("pv", 59.796, -6595, -5.0474, 6.3e-07, 2),
hl_("hl", 516.25, 958345.091059064, -0.4134, 0.75362, 0.0, 0.0),
Cp_
(
"Cp",
2052.57331394213,
-0.121990926653498,
-0.00714146172046278,
@ -67,6 +68,7 @@ Foam::C2H5OH::C2H5OH()
),
h_
(
"h",
-6752827.25039109,
2052.57331394213,
-0.060995463326749,
@ -74,20 +76,29 @@ Foam::C2H5OH::C2H5OH()
1.30130890620591e-05,
0.0
),
Cpg_(909.505307256507, 3358.00646855803, 1530, 2029.56434912848, 640),
Cpg_
(
"Cpg",
909.505307256507,
3358.00646855803,
1530,
2029.56434912848,
640
),
B_
(
"B",
-0.00358158414552085,
3.90718270420456,
-1180837.43949293,
9.81136990166923e+18,
-3.58592545963663e+21
),
mu_(8.049, 776, -3.068, 0.0, 0.0),
mug_(1.0613e-07, 0.8066, 52.7, 0.0),
kappa_(0.253, -0.000281, 0.0, 0.0, 0.0, 0.0),
kappag_(-3.12, 0.7152, -3550000.0, 0.0),
sigma_(3.7640e-02, -2.1570e-05, -1.025e-07, 0.0, 0.0, 0.0),
mu_("mu", 8.049, 776, -3.068, 0.0, 0.0),
mug_("mug", 1.0613e-07, 0.8066, 52.7, 0.0),
kappa_("kappa", 0.253, -0.000281, 0.0, 0.0, 0.0, 0.0),
kappag_("kappag", -3.12, 0.7152, -3550000.0, 0.0),
sigma_("sigma", 3.7640e-02, -2.1570e-05, -1.025e-07, 0.0, 0.0, 0.0),
D_("D", 147.18, 20.1, 46.069, 28) // note: Same as nHeptane
{}
@ -95,18 +106,18 @@ Foam::C2H5OH::C2H5OH()
Foam::C2H5OH::C2H5OH
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS0& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS0& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
)
:

View File

@ -36,16 +36,16 @@ SourceFiles
#define C2H5OH_H
#include "liquidProperties.H"
#include "NSRDS0ThermophysicalFunction.H"
#include "NSRDS1ThermophysicalFunction.H"
#include "NSRDS2ThermophysicalFunction.H"
#include "NSRDS3ThermophysicalFunction.H"
#include "NSRDS4ThermophysicalFunction.H"
#include "NSRDS5ThermophysicalFunction.H"
#include "NSRDS6ThermophysicalFunction.H"
#include "NSRDS7ThermophysicalFunction.H"
#include "NSRDS14ThermophysicalFunction.H"
#include "APIdiffCoefThermophysicalFunction.H"
#include "NSRDS0.H"
#include "NSRDS1.H"
#include "NSRDS2.H"
#include "NSRDS3.H"
#include "NSRDS4.H"
#include "NSRDS5.H"
#include "NSRDS6.H"
#include "NSRDS7.H"
#include "NSRDS14.H"
#include "APIdiffCoef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -62,18 +62,18 @@ class C2H5OH
{
// Private Data
thermophysicalFunctions::NSRDS5 rho_;
thermophysicalFunctions::NSRDS1 pv_;
thermophysicalFunctions::NSRDS6 hl_;
thermophysicalFunctions::NSRDS0 Cp_;
thermophysicalFunctions::NSRDS0 h_;
thermophysicalFunctions::NSRDS7 Cpg_;
thermophysicalFunctions::NSRDS4 B_;
thermophysicalFunctions::NSRDS1 mu_;
thermophysicalFunctions::NSRDS2 mug_;
thermophysicalFunctions::NSRDS0 kappa_;
thermophysicalFunctions::NSRDS2 kappag_;
thermophysicalFunctions::NSRDS0 sigma_;
Function1s::NSRDS5 rho_;
Function1s::NSRDS1 pv_;
Function1s::NSRDS6 hl_;
Function1s::NSRDS0 Cp_;
Function1s::NSRDS0 h_;
Function1s::NSRDS7 Cpg_;
Function1s::NSRDS4 B_;
Function1s::NSRDS1 mu_;
Function1s::NSRDS2 mug_;
Function1s::NSRDS0 kappa_;
Function1s::NSRDS2 kappag_;
Function1s::NSRDS0 sigma_;
Function2s::APIdiffCoef D_;
@ -94,18 +94,18 @@ public:
C2H5OH
(
const liquidProperties& l,
const thermophysicalFunctions::NSRDS5& density,
const thermophysicalFunctions::NSRDS1& vapourPressure,
const thermophysicalFunctions::NSRDS6& heatOfVapourisation,
const thermophysicalFunctions::NSRDS0& heatCapacity,
const thermophysicalFunctions::NSRDS0& enthalpy,
const thermophysicalFunctions::NSRDS7& idealGasHeatCapacity,
const thermophysicalFunctions::NSRDS4& secondVirialCoeff,
const thermophysicalFunctions::NSRDS1& dynamicViscosity,
const thermophysicalFunctions::NSRDS2& vapourDynamicViscosity,
const thermophysicalFunctions::NSRDS0& thermalConductivity,
const thermophysicalFunctions::NSRDS2& vapourThermalConductivity,
const thermophysicalFunctions::NSRDS0& surfaceTension,
const Function1s::NSRDS5& density,
const Function1s::NSRDS1& vapourPressure,
const Function1s::NSRDS6& heatOfVapourisation,
const Function1s::NSRDS0& heatCapacity,
const Function1s::NSRDS0& enthalpy,
const Function1s::NSRDS7& idealGasHeatCapacity,
const Function1s::NSRDS4& secondVirialCoeff,
const Function1s::NSRDS1& dynamicViscosity,
const Function1s::NSRDS2& vapourDynamicViscosity,
const Function1s::NSRDS0& thermalConductivity,
const Function1s::NSRDS2& vapourThermalConductivity,
const Function1s::NSRDS0& surfaceTension,
const Function2s::APIdiffCoef& vapourDiffusivity
);

Some files were not shown because too many files have changed in this diff Show More