mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Thermodynamics: Completed dictionary based selection mechanisms for all thermodynamic packages
Rationalised "make" macros to reduce code duplication Removed solid phase radiation properties Updated tutorials appropriately
This commit is contained in:
@ -46,7 +46,7 @@ temperatureThermoBaffleFvPatchScalarField
|
||||
turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(p, iF),
|
||||
owner_(false),
|
||||
baffle_(),
|
||||
solidThermoType_("undefined"),
|
||||
solidThermoType_(new primitiveEntry("thermoType", "undefined")),
|
||||
dict_(dictionary::null)
|
||||
{}
|
||||
|
||||
@ -69,7 +69,7 @@ temperatureThermoBaffleFvPatchScalarField
|
||||
),
|
||||
owner_(ptf.owner_),
|
||||
baffle_(ptf.baffle_),
|
||||
solidThermoType_(ptf.solidThermoType_),
|
||||
solidThermoType_(ptf.solidThermoType_().clone()),
|
||||
dict_(ptf.dict_)
|
||||
{}
|
||||
|
||||
@ -85,7 +85,7 @@ temperatureThermoBaffleFvPatchScalarField
|
||||
turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(p, iF, dict),
|
||||
owner_(false),
|
||||
baffle_(),
|
||||
solidThermoType_(),
|
||||
solidThermoType_(new primitiveEntry("thermoType", "undefined")),
|
||||
dict_(dict)
|
||||
{
|
||||
if (!isA<mappedPatchBase>(patch().patch()))
|
||||
@ -126,7 +126,7 @@ temperatureThermoBaffleFvPatchScalarField
|
||||
Info << "Creating thermal baffle" << nbrMesh << endl;
|
||||
baffle_.reset(baffle::New(thisMesh, dict).ptr());
|
||||
owner_ = true;
|
||||
dict.lookup("thermoType") >> solidThermoType_;
|
||||
solidThermoType_ = dict.lookupEntry("thermoType", false, false).clone();
|
||||
baffle_->rename(nbrMesh);
|
||||
}
|
||||
}
|
||||
@ -142,7 +142,7 @@ temperatureThermoBaffleFvPatchScalarField
|
||||
turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(ptf, iF),
|
||||
owner_(ptf.owner_),
|
||||
baffle_(ptf.baffle_),
|
||||
solidThermoType_(ptf.solidThermoType_),
|
||||
solidThermoType_(ptf.solidThermoType_().clone()),
|
||||
dict_(ptf.dict_)
|
||||
{}
|
||||
|
||||
@ -219,8 +219,7 @@ void temperatureThermoBaffleFvPatchScalarField::write(Ostream& os) const
|
||||
os.writeKeyword(word(thermoModel + "Coeffs"));
|
||||
os << dict_.subDict(thermoModel + "Coeffs") << nl;
|
||||
|
||||
os.writeKeyword("thermoType") << solidThermoType_
|
||||
<< token::END_STATEMENT << nl;
|
||||
os << solidThermoType_() << nl;
|
||||
|
||||
os.writeKeyword("mixture");
|
||||
os << dict_.subDict("mixture") << nl;
|
||||
|
||||
@ -140,7 +140,7 @@ class temperatureThermoBaffleFvPatchScalarField
|
||||
autoPtr<regionModels::thermoBaffleModels::thermoBaffleModel> baffle_;
|
||||
|
||||
//- Solid thermo type
|
||||
word solidThermoType_;
|
||||
autoPtr<entry> solidThermoType_;
|
||||
|
||||
//- Dictionary
|
||||
dictionary dict_;
|
||||
|
||||
@ -318,7 +318,13 @@ const tmp<volScalarField> thermoBaffle2D::Cp() const
|
||||
|
||||
const volScalarField& thermoBaffle2D::kappaRad() const
|
||||
{
|
||||
return thermo_->kappaRad();
|
||||
// ***HGW return thermo_->kappaRad();
|
||||
FatalErrorIn
|
||||
(
|
||||
"thermoBaffle2D::kappaRad()"
|
||||
) << "not currently supported"
|
||||
<< exit(FatalError);
|
||||
return volScalarField::null();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
basicThermo/basicThermo.C
|
||||
fluidThermo/fluidThermo.C
|
||||
|
||||
psiThermo/psiThermo/psiThermo.C
|
||||
psiThermo/hePsiThermo/hePsiThermos.C
|
||||
psiThermo/psiThermo.C
|
||||
psiThermo/psiThermos.C
|
||||
|
||||
rhoThermo/rhoThermo/rhoThermo.C
|
||||
rhoThermo/heRhoThermo/heRhoThermos.C
|
||||
rhoThermo/rhoThermo.C
|
||||
rhoThermo/rhoThermos.C
|
||||
|
||||
derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.C
|
||||
derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.C
|
||||
|
||||
@ -105,10 +105,22 @@ public:
|
||||
|
||||
// Selectors
|
||||
|
||||
//- Generic lookup for each of the related thermodynamics packages
|
||||
template<class Thermo, class Table>
|
||||
static typename Table::iterator lookupThermo
|
||||
(
|
||||
const dictionary& thermoDict,
|
||||
Table* tablePtr
|
||||
);
|
||||
|
||||
//- Generic New for each of the related thermodynamics packages
|
||||
template<class Thermo>
|
||||
static autoPtr<Thermo> New(const fvMesh&);
|
||||
|
||||
//- Generic New for each of the related thermodynamics packages
|
||||
template<class Thermo>
|
||||
static autoPtr<Thermo> New(const fvMesh&, const dictionary&);
|
||||
|
||||
//- Specialisation of the Generic New for basicThermo
|
||||
static autoPtr<basicThermo> New(const fvMesh&);
|
||||
|
||||
|
||||
@ -27,25 +27,13 @@ License
|
||||
|
||||
// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class Thermo>
|
||||
Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
template<class Thermo, class Table>
|
||||
typename Table::iterator Foam::basicThermo::lookupThermo
|
||||
(
|
||||
const fvMesh& mesh
|
||||
const dictionary& thermoDict,
|
||||
Table* tablePtr
|
||||
)
|
||||
{
|
||||
IOdictionary thermoDict
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"thermophysicalProperties",
|
||||
mesh.time().constant(),
|
||||
mesh,
|
||||
IOobject::MUST_READ_IF_MODIFIED,
|
||||
IOobject::NO_WRITE,
|
||||
false
|
||||
)
|
||||
);
|
||||
|
||||
word thermoTypeName;
|
||||
|
||||
if (thermoDict.isDict("thermoType"))
|
||||
@ -76,16 +64,13 @@ Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
+ word(thermoTypeDict.lookup("specie")) + ">>,"
|
||||
+ word(thermoTypeDict.lookup("energy")) + ">>>";
|
||||
|
||||
Info<< thermoTypeName << endl;
|
||||
|
||||
// Lookup the thermo package
|
||||
typename Thermo::fvMeshConstructorTable::iterator cstrIter =
|
||||
Thermo::fvMeshConstructorTablePtr_->find(thermoTypeName);
|
||||
typename Table::iterator cstrIter = tablePtr->find(thermoTypeName);
|
||||
|
||||
// Print error message if package not found in the table
|
||||
if (cstrIter == Thermo::fvMeshConstructorTablePtr_->end())
|
||||
if (cstrIter == tablePtr->end())
|
||||
{
|
||||
FatalErrorIn(Thermo::typeName + "::New(const fvMesh&)")
|
||||
FatalErrorIn(Thermo::typeName + "::New")
|
||||
<< "Unknown " << Thermo::typeName << " type " << nl
|
||||
<< "thermoType" << thermoTypeDict << nl << nl
|
||||
<< "Valid " << Thermo::typeName << " types are:" << nl << nl;
|
||||
@ -93,7 +78,7 @@ Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
// Get the list of all the suitable thermo packages available
|
||||
wordList validThermoTypeNames
|
||||
(
|
||||
Thermo::fvMeshConstructorTablePtr_->sortedToc()
|
||||
tablePtr->sortedToc()
|
||||
);
|
||||
|
||||
// Build a table of the thermo packages constituent parts
|
||||
@ -123,7 +108,7 @@ Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
FatalError<< exit(FatalError);
|
||||
}
|
||||
|
||||
return autoPtr<Thermo>(cstrIter()(mesh));
|
||||
return cstrIter;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -131,21 +116,68 @@ Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
|
||||
Info<< "Selecting thermodynamics package " << thermoTypeName << endl;
|
||||
|
||||
typename Thermo::fvMeshConstructorTable::iterator cstrIter =
|
||||
Thermo::fvMeshConstructorTablePtr_->find(thermoTypeName);
|
||||
typename Table::iterator cstrIter = tablePtr->find(thermoTypeName);
|
||||
|
||||
if (cstrIter == Thermo::fvMeshConstructorTablePtr_->end())
|
||||
if (cstrIter == tablePtr->end())
|
||||
{
|
||||
FatalErrorIn(Thermo::typeName + "::New(const fvMesh&)")
|
||||
FatalErrorIn(Thermo::typeName + "::New")
|
||||
<< "Unknown " << Thermo::typeName << " type "
|
||||
<< thermoTypeName << nl << nl
|
||||
<< "Valid " << Thermo::typeName << " types are:" << nl
|
||||
<< Thermo::fvMeshConstructorTablePtr_->sortedToc() << nl
|
||||
<< tablePtr->sortedToc() << nl
|
||||
<< exit(FatalError);
|
||||
}
|
||||
|
||||
return cstrIter;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template<class Thermo>
|
||||
Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
(
|
||||
const fvMesh& mesh
|
||||
)
|
||||
{
|
||||
IOdictionary thermoDict
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"thermophysicalProperties",
|
||||
mesh.time().constant(),
|
||||
mesh,
|
||||
IOobject::MUST_READ_IF_MODIFIED,
|
||||
IOobject::NO_WRITE,
|
||||
false
|
||||
)
|
||||
);
|
||||
|
||||
typename Thermo::fvMeshConstructorTable::iterator cstrIter =
|
||||
lookupThermo<Thermo, typename Thermo::fvMeshConstructorTable>
|
||||
(
|
||||
thermoDict,
|
||||
Thermo::fvMeshConstructorTablePtr_
|
||||
);
|
||||
|
||||
return autoPtr<Thermo>(cstrIter()(mesh));
|
||||
}
|
||||
|
||||
|
||||
template<class Thermo>
|
||||
Foam::autoPtr<Thermo> Foam::basicThermo::New
|
||||
(
|
||||
const fvMesh& mesh,
|
||||
const dictionary& dict
|
||||
)
|
||||
{
|
||||
typename Thermo::dictionaryConstructorTable::iterator cstrIter =
|
||||
lookupThermo<Thermo, typename Thermo::dictionaryConstructorTable>
|
||||
(
|
||||
dict,
|
||||
Thermo::dictionaryConstructorTablePtr_
|
||||
);
|
||||
|
||||
return autoPtr<Thermo>(cstrIter()(mesh, dict));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -37,7 +37,7 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#define makeThermo(BaseThermo,Cthermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie)\
|
||||
#define makeThermoTypedefs(BaseThermo,Cthermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie)\
|
||||
\
|
||||
typedef \
|
||||
Transport \
|
||||
@ -58,10 +58,8 @@ typedef \
|
||||
typedef \
|
||||
Cthermo \
|
||||
< \
|
||||
Mixture \
|
||||
< \
|
||||
Transport##Type##Thermo##EqnOfState##Specie \
|
||||
> \
|
||||
BaseThermo, \
|
||||
Mixture<Transport##Type##Thermo##EqnOfState##Specie> \
|
||||
> Cthermo##Mixture##Transport##Type##Thermo##EqnOfState##Specie; \
|
||||
\
|
||||
defineTemplateTypeNameAndDebugWithName \
|
||||
@ -73,7 +71,22 @@ defineTemplateTypeNameAndDebugWithName \
|
||||
+ ">>" \
|
||||
).c_str(), \
|
||||
0 \
|
||||
); \
|
||||
);
|
||||
|
||||
|
||||
#define makeThermo(BaseThermo,Cthermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie)\
|
||||
\
|
||||
makeThermoTypedefs \
|
||||
( \
|
||||
BaseThermo, \
|
||||
Cthermo, \
|
||||
Mixture, \
|
||||
Transport, \
|
||||
Type, \
|
||||
Thermo, \
|
||||
EqnOfState, \
|
||||
Specie \
|
||||
) \
|
||||
\
|
||||
addToRunTimeSelectionTable \
|
||||
( \
|
||||
|
||||
@ -27,8 +27,8 @@ License
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::hePsiThermo<MixtureType>::calculate()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::hePsiThermo<BasicPsiThermo, MixtureType>::calculate()
|
||||
{
|
||||
const scalarField& hCells = this->he_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
@ -101,10 +101,10 @@ void Foam::hePsiThermo<MixtureType>::calculate()
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::hePsiThermo<MixtureType>::hePsiThermo(const fvMesh& mesh)
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::hePsiThermo<BasicPsiThermo, MixtureType>::hePsiThermo(const fvMesh& mesh)
|
||||
:
|
||||
heThermo<psiThermo, MixtureType>(mesh)
|
||||
heThermo<BasicPsiThermo, MixtureType>(mesh)
|
||||
{
|
||||
calculate();
|
||||
|
||||
@ -115,19 +115,19 @@ Foam::hePsiThermo<MixtureType>::hePsiThermo(const fvMesh& mesh)
|
||||
|
||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::hePsiThermo<MixtureType>::~hePsiThermo()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::hePsiThermo<BasicPsiThermo, MixtureType>::~hePsiThermo()
|
||||
{}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::hePsiThermo<MixtureType>::correct()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::hePsiThermo<BasicPsiThermo, MixtureType>::correct()
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
Info<< "entering hePsiThermo<MixtureType>::correct()" << endl;
|
||||
Info<< "entering hePsiThermo<BasicPsiThermo, MixtureType>::correct()" << endl;
|
||||
}
|
||||
|
||||
// force the saving of the old-time values
|
||||
@ -137,7 +137,7 @@ void Foam::hePsiThermo<MixtureType>::correct()
|
||||
|
||||
if (debug)
|
||||
{
|
||||
Info<< "exiting hePsiThermo<MixtureType>::correct()" << endl;
|
||||
Info<< "exiting hePsiThermo<BasicPsiThermo, MixtureType>::correct()" << endl;
|
||||
}
|
||||
}
|
||||
|
||||
@ -25,7 +25,7 @@ Class
|
||||
Foam::hePsiThermo
|
||||
|
||||
Description
|
||||
Enthalpy for a mixture based on compressibility
|
||||
Energy for a mixture based on compressibility
|
||||
|
||||
SourceFiles
|
||||
hePsiThermo.C
|
||||
@ -47,10 +47,10 @@ namespace Foam
|
||||
Class hePsiThermo Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
class hePsiThermo
|
||||
:
|
||||
public heThermo<psiThermo, MixtureType>
|
||||
public heThermo<BasicPsiThermo, MixtureType>
|
||||
{
|
||||
// Private Member Functions
|
||||
|
||||
@ -58,7 +58,7 @@ class hePsiThermo
|
||||
void calculate();
|
||||
|
||||
//- Construct as copy (not implemented)
|
||||
hePsiThermo(const hePsiThermo<MixtureType>&);
|
||||
hePsiThermo(const hePsiThermo<BasicPsiThermo, MixtureType>&);
|
||||
|
||||
public:
|
||||
|
||||
@ -27,8 +27,8 @@ License
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heRhoThermo<MixtureType>::calculate()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::heRhoThermo<BasicPsiThermo, MixtureType>::calculate()
|
||||
{
|
||||
const scalarField& hCells = this->he().internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
@ -106,10 +106,10 @@ void Foam::heRhoThermo<MixtureType>::calculate()
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heRhoThermo<MixtureType>::heRhoThermo(const fvMesh& mesh)
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::heRhoThermo<BasicPsiThermo, MixtureType>::heRhoThermo(const fvMesh& mesh)
|
||||
:
|
||||
heThermo<rhoThermo, MixtureType>(mesh)
|
||||
heThermo<BasicPsiThermo, MixtureType>(mesh)
|
||||
{
|
||||
calculate();
|
||||
}
|
||||
@ -117,15 +117,15 @@ Foam::heRhoThermo<MixtureType>::heRhoThermo(const fvMesh& mesh)
|
||||
|
||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heRhoThermo<MixtureType>::~heRhoThermo()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::heRhoThermo<BasicPsiThermo, MixtureType>::~heRhoThermo()
|
||||
{}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heRhoThermo<MixtureType>::correct()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::heRhoThermo<BasicPsiThermo, MixtureType>::correct()
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
@ -25,7 +25,7 @@ Class
|
||||
Foam::heRhoThermo
|
||||
|
||||
Description
|
||||
Enthalpy for a mixture based on density
|
||||
Energy for a mixture based on density
|
||||
|
||||
SourceFiles
|
||||
heRhoThermo.C
|
||||
@ -47,10 +47,10 @@ namespace Foam
|
||||
Class heRhoThermo Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
class heRhoThermo
|
||||
:
|
||||
public heThermo<rhoThermo, MixtureType>
|
||||
public heThermo<BasicPsiThermo, MixtureType>
|
||||
{
|
||||
// Private Member Functions
|
||||
|
||||
@ -58,7 +58,7 @@ class heRhoThermo
|
||||
void calculate();
|
||||
|
||||
//- Construct as copy (not implemented)
|
||||
heRhoThermo(const heRhoThermo<MixtureType>&);
|
||||
heRhoThermo(const heRhoThermo<BasicPsiThermo, MixtureType>&);
|
||||
|
||||
|
||||
public:
|
||||
@ -24,7 +24,6 @@ License
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "chemistryModel.H"
|
||||
#include "chemistrySolver.H"
|
||||
#include "reactingMixture.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
@ -568,6 +567,8 @@ Foam::chemistryModel<CompType, ThermoType>::tc() const
|
||||
);
|
||||
|
||||
scalarField& tc = ttc();
|
||||
const scalarField& T = this->thermo().T();
|
||||
const scalarField& p = this->thermo().p();
|
||||
|
||||
const label nReaction = reactions_.size();
|
||||
|
||||
@ -576,8 +577,8 @@ Foam::chemistryModel<CompType, ThermoType>::tc() const
|
||||
forAll(rho, celli)
|
||||
{
|
||||
scalar rhoi = rho[celli];
|
||||
scalar Ti = this->thermo().T()[celli];
|
||||
scalar pi = this->thermo().p()[celli];
|
||||
scalar Ti = T[celli];
|
||||
scalar pi = p[celli];
|
||||
scalarField c(nSpecie_);
|
||||
scalar cSum = 0.0;
|
||||
|
||||
@ -716,11 +717,14 @@ void Foam::chemistryModel<CompType, ThermoType>::calculate()
|
||||
this->thermo().rho()
|
||||
);
|
||||
|
||||
const scalarField& T = this->thermo().T();
|
||||
const scalarField& p = this->thermo().p();
|
||||
|
||||
forAll(rho, celli)
|
||||
{
|
||||
const scalar rhoi = rho[celli];
|
||||
const scalar Ti = this->thermo().T()[celli];
|
||||
const scalar pi = this->thermo().p()[celli];
|
||||
const scalar Ti = T[celli];
|
||||
const scalar pi = p[celli];
|
||||
|
||||
scalarField c(nSpecie_, 0.0);
|
||||
for (label i=0; i<nSpecie_; i++)
|
||||
@ -771,13 +775,16 @@ Foam::scalar Foam::chemistryModel<CompType, ThermoType>::solve
|
||||
|
||||
tmp<volScalarField> thc = this->thermo().hc();
|
||||
const scalarField& hc = thc();
|
||||
const scalarField& he = this->thermo().he();
|
||||
const scalarField& T = this->thermo().T();
|
||||
const scalarField& p = this->thermo().p();
|
||||
|
||||
forAll(rho, celli)
|
||||
{
|
||||
const scalar rhoi = rho[celli];
|
||||
const scalar hi = this->thermo().he()[celli] + hc[celli];
|
||||
const scalar pi = this->thermo().p()[celli];
|
||||
scalar Ti = this->thermo().T()[celli];
|
||||
const scalar hi = he[celli] + hc[celli];
|
||||
const scalar pi = p[celli];
|
||||
scalar Ti = T[celli];
|
||||
|
||||
scalarField c(nSpecie_, 0.0);
|
||||
scalarField c0(nSpecie_, 0.0);
|
||||
|
||||
@ -25,7 +25,6 @@ License
|
||||
|
||||
#include "psiChemistryModel.H"
|
||||
#include "fvMesh.H"
|
||||
#include "Time.H"
|
||||
|
||||
/* * * * * * * * * * * * * * * private static data * * * * * * * * * * * * * */
|
||||
|
||||
@ -35,6 +34,7 @@ namespace Foam
|
||||
defineRunTimeSelectionTable(psiChemistryModel, fvMesh);
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::psiChemistryModel::psiChemistryModel
|
||||
|
||||
@ -25,7 +25,6 @@ License
|
||||
|
||||
#include "rhoChemistryModel.H"
|
||||
#include "fvMesh.H"
|
||||
#include "Time.H"
|
||||
|
||||
/* * * * * * * * * * * * * * * private static data * * * * * * * * * * * * * */
|
||||
|
||||
@ -35,6 +34,7 @@ namespace Foam
|
||||
defineRunTimeSelectionTable(rhoChemistryModel, fvMesh);
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::rhoChemistryModel::rhoChemistryModel
|
||||
|
||||
@ -135,33 +135,39 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const
|
||||
case SOLIDTHERMO:
|
||||
{
|
||||
// Get the coupling information from the mappedPatchBase
|
||||
const mappedPatchBase& mpp =
|
||||
refCast<const mappedPatchBase>
|
||||
(
|
||||
patch_.patch()
|
||||
);
|
||||
// const mappedPatchBase& mpp =
|
||||
// refCast<const mappedPatchBase>
|
||||
// (
|
||||
// patch_.patch()
|
||||
// );
|
||||
|
||||
const polyMesh& nbrMesh = mpp.sampleMesh();
|
||||
// const polyMesh& nbrMesh = mpp.sampleMesh();
|
||||
|
||||
const solidThermo& thermo =
|
||||
nbrMesh.lookupObject<solidThermo>
|
||||
(
|
||||
"thermophysicalProperties"
|
||||
);
|
||||
// const solidThermo& thermo =
|
||||
// nbrMesh.lookupObject<solidThermo>
|
||||
// (
|
||||
// "thermophysicalProperties"
|
||||
// );
|
||||
|
||||
// Force recalculation of mapping and schedule
|
||||
const mapDistribute& distMap = mpp.map();
|
||||
// const mapDistribute& distMap = mpp.map();
|
||||
|
||||
const fvPatch& nbrPatch = refCast<const fvMesh>
|
||||
// const fvPatch& nbrPatch = refCast<const fvMesh>
|
||||
// (
|
||||
// nbrMesh
|
||||
// ).boundary()[mpp.samplePolyPatch().index()];
|
||||
|
||||
// scalarField emissivity(thermo.emissivity(nbrPatch.index()));
|
||||
// distMap.distribute(emissivity);
|
||||
|
||||
// return emissivity;
|
||||
FatalErrorIn
|
||||
(
|
||||
nbrMesh
|
||||
).boundary()[mpp.samplePolyPatch().index()];
|
||||
|
||||
scalarField emissivity(thermo.emissivity(nbrPatch.index()));
|
||||
distMap.distribute(emissivity);
|
||||
|
||||
return emissivity;
|
||||
"radiationCoupledBase::emissivity(const scalarField&)"
|
||||
) << "Solid radiation properties temporarily removed"
|
||||
<< exit(FatalError);
|
||||
|
||||
return scalarField(0);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -176,8 +182,7 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const
|
||||
FatalErrorIn
|
||||
(
|
||||
"radiationCoupledBase::emissivity(const scalarField&)"
|
||||
)
|
||||
<< "Unimplemented method " << method_ << endl
|
||||
) << "Unimplemented method " << method_ << endl
|
||||
<< "Please set 'emissivity' to one of "
|
||||
<< emissivityMethodTypeNames_.toc()
|
||||
<< " and 'emissivityName' to the name of the volScalar"
|
||||
@ -185,6 +190,7 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return scalarField(0);
|
||||
}
|
||||
|
||||
|
||||
@ -4,14 +4,14 @@ chemistryReaders/chemistryReader/makeChemistryReaders.C
|
||||
|
||||
mixtures/basicMultiComponentMixture/basicMultiComponentMixture.C
|
||||
|
||||
psiReactionThermo/psiReactionThermo/psiReactionThermo.C
|
||||
psiReactionThermo/hePsiReactionThermo/hePsiReactionThermos.C
|
||||
psiReactionThermo/psiReactionThermo.C
|
||||
psiReactionThermo/psiReactionThermos.C
|
||||
|
||||
psiReactionThermo/psiuReactionThermo/psiuReactionThermo.C
|
||||
psiReactionThermo/heheuReactionThermo/heheuReactionThermos.C
|
||||
psiuReactionThermo/psiuReactionThermo.C
|
||||
psiuReactionThermo/psiuReactionThermos.C
|
||||
|
||||
rhoReactionThermo/rhoReactionThermo/rhoReactionThermo.C
|
||||
rhoReactionThermo/heRhoReactionThermo/heRhoReactionThermos.C
|
||||
rhoReactionThermo/rhoReactionThermo.C
|
||||
rhoReactionThermo/rhoReactionThermos.C
|
||||
|
||||
derivedFvPatchFields/fixedUnburntEnthalpy/fixedUnburntEnthalpyFvPatchScalarField.C
|
||||
derivedFvPatchFields/gradientUnburntEnthalpy/gradientUnburntEnthalpyFvPatchScalarField.C
|
||||
|
||||
@ -34,7 +34,7 @@ License
|
||||
#define makeReactionMixtureThermo(BaseThermo,CThermo,MixtureThermo,Mixture,ThermoPhys) \
|
||||
\
|
||||
typedef MixtureThermo \
|
||||
< \
|
||||
< CThermo, \
|
||||
SpecieMixture \
|
||||
< \
|
||||
Mixture \
|
||||
|
||||
@ -1,147 +0,0 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2012 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 "hePsiReactionThermo.H"
|
||||
#include "fvMesh.H"
|
||||
#include "fixedValueFvPatchFields.H"
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::hePsiReactionThermo<MixtureType>::calculate()
|
||||
{
|
||||
const scalarField& hCells = this->he_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
|
||||
scalarField& TCells = this->T_.internalField();
|
||||
scalarField& psiCells = this->psi_.internalField();
|
||||
scalarField& muCells = this->mu_.internalField();
|
||||
scalarField& alphaCells = this->alpha_.internalField();
|
||||
|
||||
forAll(TCells, celli)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->cellMixture(celli);
|
||||
|
||||
TCells[celli] = mixture.THE
|
||||
(
|
||||
hCells[celli],
|
||||
pCells[celli],
|
||||
TCells[celli]
|
||||
);
|
||||
|
||||
psiCells[celli] = mixture.psi(pCells[celli], TCells[celli]);
|
||||
|
||||
muCells[celli] = mixture.mu(pCells[celli], TCells[celli]);
|
||||
alphaCells[celli] = mixture.alphah(pCells[celli], TCells[celli]);
|
||||
}
|
||||
|
||||
forAll(this->T_.boundaryField(), patchi)
|
||||
{
|
||||
fvPatchScalarField& pp = this->p_.boundaryField()[patchi];
|
||||
fvPatchScalarField& pT = this->T_.boundaryField()[patchi];
|
||||
fvPatchScalarField& ppsi = this->psi_.boundaryField()[patchi];
|
||||
|
||||
fvPatchScalarField& ph = this->he_.boundaryField()[patchi];
|
||||
|
||||
fvPatchScalarField& pmu_ = this->mu_.boundaryField()[patchi];
|
||||
fvPatchScalarField& palpha_ = this->alpha_.boundaryField()[patchi];
|
||||
|
||||
if (pT.fixesValue())
|
||||
{
|
||||
forAll(pT, facei)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->patchFaceMixture(patchi, facei);
|
||||
|
||||
ph[facei] = mixture.HE(pp[facei], pT[facei]);
|
||||
|
||||
ppsi[facei] = mixture.psi(pp[facei], pT[facei]);
|
||||
pmu_[facei] = mixture.mu(pp[facei], pT[facei]);
|
||||
palpha_[facei] = mixture.alphah(pp[facei], pT[facei]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
forAll(pT, facei)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->patchFaceMixture(patchi, facei);
|
||||
|
||||
pT[facei] = mixture.THE(ph[facei], pp[facei], pT[facei]);
|
||||
|
||||
ppsi[facei] = mixture.psi(pp[facei], pT[facei]);
|
||||
pmu_[facei] = mixture.mu(pp[facei], pT[facei]);
|
||||
palpha_[facei] = mixture.alphah(pp[facei], pT[facei]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::hePsiReactionThermo<MixtureType>::hePsiReactionThermo(const fvMesh& mesh)
|
||||
:
|
||||
heThermo<psiReactionThermo, MixtureType>(mesh)
|
||||
{
|
||||
calculate();
|
||||
|
||||
// Switch on saving old time
|
||||
this->psi_.oldTime();
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::hePsiReactionThermo<MixtureType>::~hePsiReactionThermo()
|
||||
{}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::hePsiReactionThermo<MixtureType>::correct()
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
Info<< "entering hePsiReactionThermo<MixtureType>::correct()" << endl;
|
||||
}
|
||||
|
||||
// force the saving of the old-time values
|
||||
this->psi_.oldTime();
|
||||
|
||||
calculate();
|
||||
|
||||
if (debug)
|
||||
{
|
||||
Info<< "exiting hePsiReactionThermo<MixtureType>::correct()" << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -26,7 +26,7 @@ License
|
||||
#include "makeReactionThermo.H"
|
||||
|
||||
#include "psiReactionThermo.H"
|
||||
#include "hePsiReactionThermo.H"
|
||||
#include "hePsiThermo.H"
|
||||
|
||||
#include "specie.H"
|
||||
#include "perfectGas.H"
|
||||
@ -59,7 +59,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
homogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -72,7 +72,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
inhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -85,7 +85,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
veryInhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -101,7 +101,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
homogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -114,7 +114,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
inhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -127,7 +127,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
veryInhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -143,7 +143,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
homogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -156,7 +156,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
inhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -169,7 +169,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
veryInhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -185,7 +185,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
multiComponentMixture,
|
||||
constGasThermoPhysics
|
||||
);
|
||||
@ -194,7 +194,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
multiComponentMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -206,7 +206,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
reactingMixture,
|
||||
constGasThermoPhysics
|
||||
);
|
||||
@ -215,7 +215,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
reactingMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -224,7 +224,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiReactionThermo,
|
||||
hePsiReactionThermo,
|
||||
hePsiThermo,
|
||||
singleStepReactingMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -23,14 +23,14 @@ License
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "heheuReactionThermo.H"
|
||||
#include "heheuPsiThermo.H"
|
||||
#include "fvMesh.H"
|
||||
#include "fixedValueFvPatchFields.H"
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heheuReactionThermo<MixtureType>::calculate()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::calculate()
|
||||
{
|
||||
const scalarField& hCells = this->he_.internalField();
|
||||
const scalarField& heuCells = this->heu_.internalField();
|
||||
@ -118,8 +118,8 @@ void Foam::heheuReactionThermo<MixtureType>::calculate()
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heheuReactionThermo<MixtureType>::heheuReactionThermo(const fvMesh& mesh)
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heheuPsiThermo(const fvMesh& mesh)
|
||||
:
|
||||
heThermo<psiuReactionThermo, MixtureType>(mesh),
|
||||
Tu_
|
||||
@ -188,19 +188,19 @@ Foam::heheuReactionThermo<MixtureType>::heheuReactionThermo(const fvMesh& mesh)
|
||||
|
||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heheuReactionThermo<MixtureType>::~heheuReactionThermo()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::~heheuPsiThermo()
|
||||
{}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heheuReactionThermo<MixtureType>::correct()
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
void Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::correct()
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
Info<< "entering heheuReactionThermo<MixtureType>::correct()" << endl;
|
||||
Info<< "entering heheuPsiThermo<BasicPsiThermo, MixtureType>::correct()" << endl;
|
||||
}
|
||||
|
||||
// force the saving of the old-time values
|
||||
@ -210,14 +210,14 @@ void Foam::heheuReactionThermo<MixtureType>::correct()
|
||||
|
||||
if (debug)
|
||||
{
|
||||
Info<< "exiting heheuReactionThermo<MixtureType>::correct()" << endl;
|
||||
Info<< "exiting heheuPsiThermo<BasicPsiThermo, MixtureType>::correct()" << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::scalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::heu
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heu
|
||||
(
|
||||
const scalarField& p,
|
||||
const scalarField& Tu,
|
||||
@ -236,9 +236,9 @@ Foam::heheuReactionThermo<MixtureType>::heu
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::scalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::heu
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::heu
|
||||
(
|
||||
const scalarField& p,
|
||||
const scalarField& Tu,
|
||||
@ -258,9 +258,9 @@ Foam::heheuReactionThermo<MixtureType>::heu
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::Tb() const
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::Tb() const
|
||||
{
|
||||
tmp<volScalarField> tTb
|
||||
(
|
||||
@ -314,9 +314,9 @@ Foam::heheuReactionThermo<MixtureType>::Tb() const
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::psiu() const
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::psiu() const
|
||||
{
|
||||
tmp<volScalarField> tpsiu
|
||||
(
|
||||
@ -365,9 +365,9 @@ Foam::heheuReactionThermo<MixtureType>::psiu() const
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::psib() const
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::psib() const
|
||||
{
|
||||
tmp<volScalarField> tpsib
|
||||
(
|
||||
@ -417,9 +417,9 @@ Foam::heheuReactionThermo<MixtureType>::psib() const
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::muu() const
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::muu() const
|
||||
{
|
||||
tmp<volScalarField> tmuu
|
||||
(
|
||||
@ -472,9 +472,9 @@ Foam::heheuReactionThermo<MixtureType>::muu() const
|
||||
}
|
||||
|
||||
|
||||
template<class MixtureType>
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heheuReactionThermo<MixtureType>::mub() const
|
||||
Foam::heheuPsiThermo<BasicPsiThermo, MixtureType>::mub() const
|
||||
{
|
||||
tmp<volScalarField> tmub
|
||||
(
|
||||
@ -36,7 +36,6 @@ SourceFiles
|
||||
#define heheuReactionThermo_H
|
||||
|
||||
#include "heThermo.H"
|
||||
#include "psiuReactionThermo.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -44,13 +43,13 @@ namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class heheuReactionThermo Declaration
|
||||
Class heheuPsiThermo Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class MixtureType>
|
||||
class heheuReactionThermo
|
||||
template<class BasicPsiThermo, class MixtureType>
|
||||
class heheuPsiThermo
|
||||
:
|
||||
public heThermo<psiuReactionThermo, MixtureType>
|
||||
public heThermo<BasicPsiThermo, MixtureType>
|
||||
{
|
||||
// Private Member Functions
|
||||
|
||||
@ -63,23 +62,26 @@ class heheuReactionThermo
|
||||
void calculate();
|
||||
|
||||
//- Construct as copy (not implemented)
|
||||
heheuReactionThermo(const heheuReactionThermo<MixtureType>&);
|
||||
heheuPsiThermo
|
||||
(
|
||||
const heheuPsiThermo<BasicPsiThermo, MixtureType>&
|
||||
);
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
TypeName("heheuReactionThermo");
|
||||
TypeName("heheuPsiThermo");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from mesh
|
||||
heheuReactionThermo(const fvMesh&);
|
||||
heheuPsiThermo(const fvMesh&);
|
||||
|
||||
|
||||
//- Destructor
|
||||
virtual ~heheuReactionThermo();
|
||||
virtual ~heheuPsiThermo();
|
||||
|
||||
|
||||
// Member functions
|
||||
@ -155,7 +157,7 @@ public:
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
|
||||
#ifdef NoRepository
|
||||
# include "heheuReactionThermo.C"
|
||||
# include "heheuPsiThermo.C"
|
||||
#endif
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
@ -24,7 +24,7 @@ License
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "psiuReactionThermo.H"
|
||||
#include "heheuReactionThermo.H"
|
||||
#include "heheuPsiThermo.H"
|
||||
|
||||
#include "makeReactionThermo.H"
|
||||
#include "addToRunTimeSelectionTable.H"
|
||||
@ -56,7 +56,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
homogeneousMixture,
|
||||
constTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -69,7 +69,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
inhomogeneousMixture,
|
||||
constTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -82,7 +82,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
veryInhomogeneousMixture,
|
||||
constTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -95,7 +95,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
homogeneousMixture,
|
||||
sutherlandTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -108,7 +108,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
inhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -121,7 +121,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
veryInhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -134,7 +134,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
egrMixture,
|
||||
constTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -147,7 +147,7 @@ makeReactionThermo
|
||||
(
|
||||
psiThermo,
|
||||
psiuReactionThermo,
|
||||
heheuReactionThermo,
|
||||
heheuPsiThermo,
|
||||
egrMixture,
|
||||
sutherlandTransport,
|
||||
absoluteEnthalpy,
|
||||
@ -1,145 +0,0 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2012 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 "heRhoReactionThermo.H"
|
||||
#include "fvMesh.H"
|
||||
#include "fixedValueFvPatchFields.H"
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heRhoReactionThermo<MixtureType>::calculate()
|
||||
{
|
||||
const scalarField& hCells = this->he_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
|
||||
scalarField& TCells = this->T_.internalField();
|
||||
scalarField& psiCells = this->psi_.internalField();
|
||||
scalarField& rhoCells = this->rho_.internalField();
|
||||
scalarField& muCells = this->mu_.internalField();
|
||||
scalarField& alphaCells = this->alpha_.internalField();
|
||||
|
||||
forAll(TCells, celli)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->cellMixture(celli);
|
||||
|
||||
TCells[celli] = mixture.THE
|
||||
(
|
||||
hCells[celli],
|
||||
pCells[celli],
|
||||
TCells[celli]
|
||||
);
|
||||
psiCells[celli] = mixture.psi(pCells[celli], TCells[celli]);
|
||||
rhoCells[celli] = mixture.rho(pCells[celli], TCells[celli]);
|
||||
|
||||
muCells[celli] = mixture.mu(pCells[celli], TCells[celli]);
|
||||
alphaCells[celli] = mixture.alphah(pCells[celli], TCells[celli]);
|
||||
}
|
||||
|
||||
forAll(this->T_.boundaryField(), patchi)
|
||||
{
|
||||
fvPatchScalarField& pp = this->p_.boundaryField()[patchi];
|
||||
fvPatchScalarField& pT = this->T_.boundaryField()[patchi];
|
||||
fvPatchScalarField& ppsi = this->psi_.boundaryField()[patchi];
|
||||
fvPatchScalarField& prho = this->rho_.boundaryField()[patchi];
|
||||
|
||||
fvPatchScalarField& ph = this->he_.boundaryField()[patchi];
|
||||
|
||||
fvPatchScalarField& pmu_ = this->mu_.boundaryField()[patchi];
|
||||
fvPatchScalarField& palpha_ = this->alpha_.boundaryField()[patchi];
|
||||
|
||||
if (pT.fixesValue())
|
||||
{
|
||||
forAll(pT, facei)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->patchFaceMixture(patchi, facei);
|
||||
|
||||
ph[facei] = mixture.HE(pp[facei], pT[facei]);
|
||||
|
||||
ppsi[facei] = mixture.psi(pp[facei], pT[facei]);
|
||||
prho[facei] = mixture.rho(pp[facei], pT[facei]);
|
||||
pmu_[facei] = mixture.mu(pp[facei], pT[facei]);
|
||||
palpha_[facei] = mixture.alphah(pp[facei], pT[facei]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
forAll(pT, facei)
|
||||
{
|
||||
const typename MixtureType::thermoType& mixture =
|
||||
this->patchFaceMixture(patchi, facei);
|
||||
|
||||
pT[facei] = mixture.THE(ph[facei], pp[facei], pT[facei]);
|
||||
|
||||
ppsi[facei] = mixture.psi(pp[facei], pT[facei]);
|
||||
prho[facei] = mixture.rho(pp[facei], pT[facei]);
|
||||
pmu_[facei] = mixture.mu(pp[facei], pT[facei]);
|
||||
palpha_[facei] = mixture.alphah(pp[facei], pT[facei]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heRhoReactionThermo<MixtureType>::heRhoReactionThermo(const fvMesh& mesh)
|
||||
:
|
||||
heThermo<rhoReactionThermo, MixtureType>(mesh)
|
||||
{
|
||||
calculate();
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
Foam::heRhoReactionThermo<MixtureType>::~heRhoReactionThermo()
|
||||
{}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class MixtureType>
|
||||
void Foam::heRhoReactionThermo<MixtureType>::correct()
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
Info<< "entering heRhoReactionThermo<MixtureType>::correct()" << endl;
|
||||
}
|
||||
|
||||
calculate();
|
||||
|
||||
if (debug)
|
||||
{
|
||||
Info<< "exiting heRhoReactionThermo<MixtureType>::correct()" << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -1,100 +0,0 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2012 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::heRhoReactionThermo
|
||||
|
||||
Description
|
||||
Foam::heRhoReactionThermo
|
||||
|
||||
SourceFiles
|
||||
heRhoReactionThermo.C
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifndef heRhoReactionThermo_H
|
||||
#define heRhoReactionThermo_H
|
||||
|
||||
#include "heThermo.H"
|
||||
#include "rhoReactionThermo.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class heRhoReactionThermo Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class MixtureType>
|
||||
class heRhoReactionThermo
|
||||
:
|
||||
public heThermo<rhoReactionThermo, MixtureType>
|
||||
{
|
||||
// Private Member Functions
|
||||
|
||||
void calculate();
|
||||
|
||||
//- Construct as copy (not implemented)
|
||||
heRhoReactionThermo(const heRhoReactionThermo<MixtureType>&);
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
TypeName("heRhoReactionThermo");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from mesh
|
||||
heRhoReactionThermo(const fvMesh&);
|
||||
|
||||
|
||||
//- Destructor
|
||||
virtual ~heRhoReactionThermo();
|
||||
|
||||
|
||||
// Member functions
|
||||
|
||||
//- Update properties
|
||||
virtual void correct();
|
||||
};
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#ifdef NoRepository
|
||||
# include "heRhoReactionThermo.C"
|
||||
#endif
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -26,7 +26,7 @@ License
|
||||
#include "makeReactionThermo.H"
|
||||
|
||||
#include "rhoReactionThermo.H"
|
||||
#include "heRhoReactionThermo.H"
|
||||
#include "heRhoThermo.H"
|
||||
|
||||
#include "specie.H"
|
||||
#include "perfectGas.H"
|
||||
@ -59,7 +59,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
homogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -72,7 +72,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
inhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -85,7 +85,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
veryInhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -98,7 +98,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
homogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -111,7 +111,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
inhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -124,7 +124,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
veryInhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -138,7 +138,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
homogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -151,7 +151,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
inhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -164,7 +164,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
veryInhomogeneousMixture,
|
||||
constTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -177,7 +177,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
homogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -190,7 +190,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
inhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -203,7 +203,7 @@ makeReactionThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
veryInhomogeneousMixture,
|
||||
sutherlandTransport,
|
||||
sensibleEnthalpy,
|
||||
@ -219,7 +219,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
multiComponentMixture,
|
||||
constGasThermoPhysics
|
||||
);
|
||||
@ -228,7 +228,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
multiComponentMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -237,7 +237,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
multiComponentMixture,
|
||||
constIncompressibleGasThermoPhysics
|
||||
);
|
||||
@ -246,7 +246,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
multiComponentMixture,
|
||||
incompressibleGasThermoPhysics
|
||||
);
|
||||
@ -255,7 +255,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
multiComponentMixture,
|
||||
icoPoly8ThermoPhysics
|
||||
);
|
||||
@ -267,7 +267,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
reactingMixture,
|
||||
constGasThermoPhysics
|
||||
);
|
||||
@ -276,7 +276,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
reactingMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -285,7 +285,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
reactingMixture,
|
||||
constIncompressibleGasThermoPhysics
|
||||
);
|
||||
@ -294,7 +294,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
reactingMixture,
|
||||
incompressibleGasThermoPhysics
|
||||
);
|
||||
@ -303,7 +303,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
reactingMixture,
|
||||
icoPoly8ThermoPhysics
|
||||
);
|
||||
@ -312,7 +312,7 @@ makeReactionMixtureThermo
|
||||
(
|
||||
rhoThermo,
|
||||
rhoReactionThermo,
|
||||
heRhoReactionThermo,
|
||||
heRhoThermo,
|
||||
singleStepReactingMixture,
|
||||
gasThermoPhysics
|
||||
);
|
||||
@ -1,4 +1,4 @@
|
||||
reaction/Reactions/solidReaction/solidReaction.C
|
||||
reaction/reactions/makeSolidReactionThermoReactions.C
|
||||
reaction/reactions/makeSolidReactions.C
|
||||
|
||||
LIB = $(FOAM_LIBBIN)/libsolidSpecie
|
||||
|
||||
@ -22,10 +22,10 @@ License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
InClass
|
||||
Foam::makeSolidReactionThermo
|
||||
Foam::makeSolidReaction
|
||||
|
||||
Description
|
||||
Macros for instantiating reactions on given solid thermo packages
|
||||
Macros for instantiating reactions for solid
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -79,5 +79,4 @@ namespace Foam
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -23,7 +23,7 @@ License
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "makeSolidReactionThermo.H"
|
||||
#include "makeSolidReaction.H"
|
||||
#include "solidArrheniusReactionRate.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
@ -1,10 +1,11 @@
|
||||
solidThermo/solidThermo.C
|
||||
solidThermo/solidThermoNew.C
|
||||
solidThermo/solidThermos.C
|
||||
|
||||
mixtures/basicSolidMixture/basicSolidMixture.C
|
||||
|
||||
solidReactionThermo/solidReactionThermo.C
|
||||
solidReactionThermo/solidReactionThermoNew.C
|
||||
heSolidThermo/heSolidThermos.C
|
||||
solidReactionThermo/solidReactionThermos.C
|
||||
|
||||
LIB = $(FOAM_LIBBIN)/libsolidThermo
|
||||
|
||||
@ -191,21 +191,9 @@ public:
|
||||
//- Density
|
||||
virtual scalar rho(scalar p, scalar T, label celli) const = 0;
|
||||
|
||||
//- Absorption coefficient
|
||||
virtual scalar kappaRad(scalar p, scalar T, label celli) const = 0;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual scalar sigmaS(scalar p, scalar T, label celli) const = 0;
|
||||
|
||||
//- Thermal conductivity
|
||||
virtual scalar kappa(scalar p, scalar T, label celli) const = 0;
|
||||
|
||||
//- Emissivity coefficient
|
||||
virtual scalar emissivity
|
||||
(
|
||||
scalar p, scalar T, label celli
|
||||
) const = 0;
|
||||
|
||||
//- Specific heat capacity
|
||||
virtual scalar Cp(scalar p, scalar T, label celli) const = 0;
|
||||
};
|
||||
|
||||
@ -29,7 +29,6 @@ Description
|
||||
#include "basicMixture.H"
|
||||
#include "makeBasicMixture.H"
|
||||
|
||||
|
||||
#include "rhoConst.H"
|
||||
|
||||
#include "hConstThermo.H"
|
||||
@ -39,8 +38,6 @@ Description
|
||||
#include "constAnIsoSolidTransport.H"
|
||||
#include "exponentialSolidTransport.H"
|
||||
|
||||
#include "constSolidRad.H"
|
||||
|
||||
#include "sensibleInternalEnergy.H"
|
||||
#include "sensibleEnthalpy.H"
|
||||
#include "thermo.H"
|
||||
|
||||
@ -316,36 +316,6 @@ Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::rho
|
||||
}
|
||||
|
||||
|
||||
template<class ThermoType>
|
||||
Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::kappaRad
|
||||
(
|
||||
scalar p, scalar T, label celli
|
||||
) const
|
||||
{
|
||||
scalar tmp = 0.0;
|
||||
forAll(solidData_, i)
|
||||
{
|
||||
tmp += solidData_[i].kappaRad(T)*X(i, celli, p, T);
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
|
||||
template<class ThermoType>
|
||||
Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::sigmaS
|
||||
(
|
||||
scalar p, scalar T, label celli
|
||||
) const
|
||||
{
|
||||
scalar tmp = 0.0;
|
||||
forAll(solidData_, i)
|
||||
{
|
||||
tmp += solidData_[i].sigmaS(T)*X(i, celli, p, T);
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
|
||||
template<class ThermoType>
|
||||
Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::kappa
|
||||
(
|
||||
@ -361,21 +331,6 @@ Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::kappa
|
||||
}
|
||||
|
||||
|
||||
template<class ThermoType>
|
||||
Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::emissivity
|
||||
(
|
||||
scalar p, scalar T, label celli
|
||||
) const
|
||||
{
|
||||
scalar tmp = 0.0;
|
||||
forAll(solidData_, i)
|
||||
{
|
||||
tmp += solidData_[i].emissivity(T)*X(i, celli, p, T);
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
|
||||
|
||||
template<class ThermoType>
|
||||
Foam::scalar Foam::multiComponentSolidMixture<ThermoType>::Cp
|
||||
(
|
||||
|
||||
@ -208,21 +208,11 @@ public:
|
||||
//- Density
|
||||
virtual scalar rho(scalar p, scalar T, label celli) const;
|
||||
|
||||
//- Absorption coefficient
|
||||
virtual scalar kappaRad(scalar p, scalar T, label celli) const;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual scalar sigmaS(scalar p, scalar T, label celli) const;
|
||||
|
||||
//- Thermal conductivity
|
||||
virtual scalar kappa(scalar p, scalar T, label celli) const;
|
||||
|
||||
//- Emissivity coefficient
|
||||
virtual scalar emissivity(scalar p, scalar T, label celli) const;
|
||||
|
||||
//- Specific heat capacity
|
||||
virtual scalar Cp(scalar p, scalar T, label celli) const;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
@ -21,80 +21,46 @@ License
|
||||
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::hePsiReactionThermo
|
||||
|
||||
Description
|
||||
Foam::hePsiReactionThermo
|
||||
|
||||
SourceFiles
|
||||
hePsiReactionThermo.C
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifndef hePsiReactionThermo_H
|
||||
#define hePsiReactionThermo_H
|
||||
#include "makeSolidThermo.H"
|
||||
#include "solidReactionThermo.H"
|
||||
#include "heSolidThermo.H"
|
||||
|
||||
#include "specie.H"
|
||||
#include "rhoConst.H"
|
||||
#include "hConstThermo.H"
|
||||
#include "hExponentialThermo.H"
|
||||
#include "constIsoSolidTransport.H"
|
||||
#include "constAnIsoSolidTransport.H"
|
||||
#include "exponentialSolidTransport.H"
|
||||
#include "reactingSolidMixture.H"
|
||||
#include "sensibleEnthalpy.H"
|
||||
#include "thermo.H"
|
||||
|
||||
#include "heThermo.H"
|
||||
#include "psiReactionThermo.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class hePsiReactionThermo Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
/* * * * * * * * * * * * * * * * * Enthalpy-based * * * * * * * * * * * * * */
|
||||
|
||||
template<class MixtureType>
|
||||
class hePsiReactionThermo
|
||||
:
|
||||
public heThermo<psiReactionThermo, MixtureType>
|
||||
{
|
||||
// Private Member Functions
|
||||
|
||||
void calculate();
|
||||
|
||||
//- Construct as copy (not implemented)
|
||||
hePsiReactionThermo(const hePsiReactionThermo<MixtureType>&);
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
TypeName("hePsiReactionThermo");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from mesh
|
||||
hePsiReactionThermo(const fvMesh&);
|
||||
|
||||
|
||||
//- Destructor
|
||||
virtual ~hePsiReactionThermo();
|
||||
|
||||
|
||||
// Member functions
|
||||
|
||||
//- Update properties
|
||||
virtual void correct();
|
||||
};
|
||||
makeSolidThermo
|
||||
(
|
||||
solidReactionThermo,
|
||||
heSolidThermo,
|
||||
reactingSolidMixture,
|
||||
constIsoSolidTransport,
|
||||
sensibleEnthalpy,
|
||||
hConstThermo,
|
||||
rhoConst,
|
||||
specie
|
||||
);
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#ifdef NoRepository
|
||||
# include "hePsiReactionThermo.C"
|
||||
#endif
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -230,192 +230,6 @@ Foam::heSolidThermo<BasicSolidThermo, MixtureType>::Kappa() const
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::kappaRad() const
|
||||
{
|
||||
const fvMesh& mesh = this->T_.mesh();
|
||||
|
||||
tmp<volScalarField> tkappaRad
|
||||
(
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"kappaRad",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
inv(dimLength)
|
||||
)
|
||||
);
|
||||
|
||||
volScalarField& kappaRad = tkappaRad();
|
||||
scalarField& kappaRadCells = kappaRad.internalField();
|
||||
const scalarField& TCells = this->T_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
|
||||
forAll(kappaRadCells, celli)
|
||||
{
|
||||
kappaRadCells[celli] =
|
||||
this->cellVolMixture
|
||||
(
|
||||
pCells[celli],
|
||||
TCells[celli],
|
||||
celli
|
||||
).kappaRad(TCells[celli]);
|
||||
}
|
||||
|
||||
forAll(kappaRad.boundaryField(), patchi)
|
||||
{
|
||||
scalarField& kappaRadp = kappaRad.boundaryField()[patchi];
|
||||
const scalarField& pT = this->T_.boundaryField()[patchi];
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
forAll(kappaRadp, facei)
|
||||
{
|
||||
kappaRadp[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
pT[facei],
|
||||
patchi,
|
||||
facei
|
||||
).kappaRad(pT[facei]);
|
||||
}
|
||||
}
|
||||
|
||||
return tkappaRad;
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::sigmaS() const
|
||||
{
|
||||
const fvMesh& mesh = this->T_.mesh();
|
||||
|
||||
tmp<volScalarField> tsigmaS
|
||||
(
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"sigmaS",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
inv(dimLength)
|
||||
)
|
||||
);
|
||||
|
||||
volScalarField& sigmaS = tsigmaS();
|
||||
scalarField& sigmaSCells = sigmaS.internalField();
|
||||
const scalarField& TCells = this->T_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
|
||||
forAll(sigmaSCells, celli)
|
||||
{
|
||||
sigmaSCells[celli] =
|
||||
this->cellVolMixture
|
||||
(
|
||||
pCells[celli],
|
||||
TCells[celli],
|
||||
celli
|
||||
).sigmaS(TCells[celli]);
|
||||
}
|
||||
|
||||
forAll(sigmaS.boundaryField(), patchi)
|
||||
{
|
||||
scalarField& sigmaSp = sigmaS.boundaryField()[patchi];
|
||||
const scalarField& pT = this->T_.boundaryField()[patchi];
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
forAll(sigmaSp, facei)
|
||||
{
|
||||
sigmaSp[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
pT[facei],
|
||||
patchi,
|
||||
facei
|
||||
).sigmaS(pT[facei]);
|
||||
}
|
||||
}
|
||||
|
||||
return tsigmaS;
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::volScalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::emissivity() const
|
||||
{
|
||||
const fvMesh& mesh = this->T_.mesh();
|
||||
|
||||
tmp<volScalarField> temissivity
|
||||
(
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"emissivity",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
inv(dimLength)
|
||||
)
|
||||
);
|
||||
|
||||
volScalarField& emissivity = temissivity();
|
||||
scalarField& emissivityCells = emissivity.internalField();
|
||||
const scalarField& TCells = this->T_.internalField();
|
||||
const scalarField& pCells = this->p_.internalField();
|
||||
|
||||
forAll(emissivityCells, celli)
|
||||
{
|
||||
emissivityCells[celli] =
|
||||
this->cellVolMixture
|
||||
(
|
||||
pCells[celli],
|
||||
TCells[celli],
|
||||
celli
|
||||
).emissivity(TCells[celli]);
|
||||
}
|
||||
|
||||
forAll(emissivity.boundaryField(), patchi)
|
||||
{
|
||||
scalarField& emissivityp = emissivity.boundaryField()[patchi];
|
||||
const scalarField& pT = this->T_.boundaryField()[patchi];
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
forAll(emissivityp, facei)
|
||||
{
|
||||
emissivityp[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
pT[facei],
|
||||
patchi,
|
||||
facei
|
||||
).emissivity(pT[facei]);
|
||||
}
|
||||
}
|
||||
|
||||
return temissivity;
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::vectorField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::Kappa
|
||||
@ -445,89 +259,4 @@ Foam::heSolidThermo<BasicSolidThermo, MixtureType>::Kappa
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::scalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::kappaRad
|
||||
(
|
||||
const label patchi
|
||||
) const
|
||||
{
|
||||
const scalarField& Tp = this->T_.boundaryField()[patchi];
|
||||
tmp<scalarField> tKappaRad(new scalarField(Tp.size()));
|
||||
scalarField& KappapRadp = tKappaRad();
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
forAll(Tp, facei)
|
||||
{
|
||||
KappapRadp[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
Tp[facei],
|
||||
patchi,
|
||||
facei
|
||||
).kappaRad(Tp[facei]);
|
||||
}
|
||||
|
||||
return tKappaRad;
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::scalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::sigmaS
|
||||
(
|
||||
const label patchi
|
||||
) const
|
||||
{
|
||||
const scalarField& Tp = this->T_.boundaryField()[patchi];
|
||||
tmp<scalarField> tsigmaS(new scalarField(Tp.size()));
|
||||
scalarField& sigmaSp = tsigmaS();
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
|
||||
forAll(Tp, facei)
|
||||
{
|
||||
sigmaSp[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
Tp[facei],
|
||||
patchi,
|
||||
facei
|
||||
).sigmaS(Tp[facei]);
|
||||
}
|
||||
|
||||
return tsigmaS;
|
||||
}
|
||||
|
||||
|
||||
template<class BasicSolidThermo, class MixtureType>
|
||||
Foam::tmp<Foam::scalarField>
|
||||
Foam::heSolidThermo<BasicSolidThermo, MixtureType>::emissivity
|
||||
(
|
||||
const label patchi
|
||||
) const
|
||||
{
|
||||
const scalarField& Tp = this->T_.boundaryField()[patchi];
|
||||
tmp<scalarField> temissivity(new scalarField(Tp.size()));
|
||||
scalarField& emissivity = temissivity();
|
||||
const scalarField& pp = this->p_.boundaryField()[patchi];
|
||||
|
||||
forAll(Tp, facei)
|
||||
{
|
||||
emissivity[facei] =
|
||||
this->patchFaceVolMixture
|
||||
(
|
||||
pp[facei],
|
||||
Tp[facei],
|
||||
patchi,
|
||||
facei
|
||||
).emissivity(Tp[facei]);
|
||||
}
|
||||
|
||||
return temissivity;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -25,7 +25,7 @@ Class
|
||||
Foam::heSolidThermo
|
||||
|
||||
Description
|
||||
Enthalpy, internal energy based for a solid mixture.
|
||||
Energy for a solid mixture
|
||||
|
||||
SourceFiles
|
||||
heSolidThermo.C
|
||||
@ -51,7 +51,6 @@ class heSolidThermo
|
||||
:
|
||||
public heThermo<BasicSolidThermo, MixtureType>
|
||||
{
|
||||
|
||||
// Private Member Functions
|
||||
|
||||
//- Calculate the thermo variables
|
||||
@ -91,29 +90,11 @@ public:
|
||||
//- Anisotropic thermal conductivity [W/m/K]
|
||||
virtual tmp<volVectorField> Kappa() const;
|
||||
|
||||
//- Absorption coefficient [1/m]
|
||||
virtual tmp<volScalarField> kappaRad() const;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual tmp<volScalarField> sigmaS() const;
|
||||
|
||||
//- Emissivity coefficient [1/m]
|
||||
virtual tmp<volScalarField> emissivity() const;
|
||||
|
||||
|
||||
// Per patch calculation
|
||||
|
||||
//- Anisotropic thermal conductivity [W/m/K]
|
||||
virtual tmp<vectorField> Kappa(const label patchI) const;
|
||||
|
||||
//- Absorption coefficient [1/m]
|
||||
virtual tmp<scalarField> kappaRad(const label patchI) const;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual tmp<scalarField> sigmaS(const label patchI) const;
|
||||
|
||||
//- Emissivity coefficient [1/m]
|
||||
virtual tmp<scalarField> emissivity(const label patchI) const;
|
||||
};
|
||||
|
||||
|
||||
@ -32,79 +32,42 @@ Description
|
||||
#ifndef makeSolidThermo_H
|
||||
#define makesolidThermo_H
|
||||
|
||||
#include "addToRunTimeSelectionTable.H"
|
||||
#include "basicThermo.H"
|
||||
#include "makeThermo.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#define makeSolidThermo(BaseThermo,Cthermo,Mixture,Transport,Radiation,Type,Thermo,EqnOfState,Specie)\
|
||||
#define makeSolidThermo(BaseThermo,Cthermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie)\
|
||||
\
|
||||
typedef \
|
||||
Transport \
|
||||
< \
|
||||
Radiation \
|
||||
< \
|
||||
species::thermo \
|
||||
< \
|
||||
Thermo \
|
||||
< \
|
||||
EqnOfState \
|
||||
< \
|
||||
Specie \
|
||||
> \
|
||||
>, \
|
||||
Type \
|
||||
> \
|
||||
> \
|
||||
> Transport##Radiation##Type##Thermo##EqnOfState##Specie; \
|
||||
\
|
||||
typedef \
|
||||
Mixture \
|
||||
< \
|
||||
Transport##Radiation##Type##Thermo##EqnOfState##Specie \
|
||||
> Mixture##Transport##Radiation##Type##Thermo##EqnOfState##Specie; \
|
||||
\
|
||||
typedef \
|
||||
Cthermo \
|
||||
< \
|
||||
makeThermoTypedefs \
|
||||
( \
|
||||
BaseThermo, \
|
||||
Mixture##Transport##Radiation##Type##Thermo##EqnOfState##Specie \
|
||||
> Cthermo##Mixture##Transport##Radiation##Type##Thermo \
|
||||
##EqnOfState##Specie; \
|
||||
\
|
||||
defineTemplateTypeNameAndDebugWithName \
|
||||
( \
|
||||
Cthermo##Mixture##Transport##Radiation##Type##Thermo \
|
||||
##EqnOfState##Specie, \
|
||||
( \
|
||||
#Cthermo"<"#Mixture"<" \
|
||||
+ Transport##Radiation##Type##Thermo##EqnOfState##Specie::typeName() \
|
||||
+ ">>" \
|
||||
).c_str(), \
|
||||
0 \
|
||||
); \
|
||||
Cthermo, \
|
||||
Mixture, \
|
||||
Transport, \
|
||||
Type, \
|
||||
Thermo, \
|
||||
EqnOfState, \
|
||||
Specie \
|
||||
) \
|
||||
\
|
||||
addToRunTimeSelectionTable \
|
||||
( \
|
||||
basicThermo, \
|
||||
Cthermo##Mixture##Transport##Radiation##Type##Thermo \
|
||||
##EqnOfState##Specie, \
|
||||
Cthermo##Mixture##Transport##Type##Thermo##EqnOfState##Specie, \
|
||||
fvMesh \
|
||||
); \
|
||||
\
|
||||
addToRunTimeSelectionTable \
|
||||
( \
|
||||
BaseThermo, \
|
||||
Cthermo##Mixture##Transport##Radiation##Type##Thermo \
|
||||
##EqnOfState##Specie, \
|
||||
Cthermo##Mixture##Transport##Type##Thermo##EqnOfState##Specie, \
|
||||
fvMesh \
|
||||
); \
|
||||
\
|
||||
addToRunTimeSelectionTable \
|
||||
( \
|
||||
BaseThermo, \
|
||||
Cthermo##Mixture##Transport##Radiation##Type##Thermo \
|
||||
##EqnOfState##Specie, \
|
||||
Cthermo##Mixture##Transport##Type##Thermo##EqnOfState##Specie, \
|
||||
dictionary \
|
||||
);
|
||||
|
||||
|
||||
@ -127,49 +127,20 @@ public:
|
||||
//- Thermal conductivity [W/m/K]
|
||||
virtual tmp<volVectorField> Kappa() const = 0;
|
||||
|
||||
//- Absorption coefficient [1/m]
|
||||
virtual tmp<volScalarField> kappaRad() const = 0;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual tmp<volScalarField> sigmaS() const = 0;
|
||||
|
||||
//- Emissivity coefficient [1/m]
|
||||
virtual tmp<volScalarField> emissivity() const = 0;
|
||||
|
||||
|
||||
// Per patch calculation
|
||||
|
||||
|
||||
//- Anisotropic thermal conductivity [W/m/K]
|
||||
virtual tmp<vectorField> Kappa
|
||||
(
|
||||
const label patchI
|
||||
) const = 0;
|
||||
|
||||
//- Absorption coefficient [1/m]
|
||||
virtual tmp<scalarField> kappaRad
|
||||
(
|
||||
const label patchI
|
||||
) const = 0;
|
||||
|
||||
//- Scatter coefficient
|
||||
virtual tmp<scalarField> sigmaS
|
||||
(
|
||||
const label patchI
|
||||
) const = 0;
|
||||
|
||||
//- Emissivity coefficient [1/m]
|
||||
virtual tmp<scalarField> emissivity
|
||||
(
|
||||
const label patchI
|
||||
) const = 0;
|
||||
|
||||
|
||||
// I-O
|
||||
|
||||
//- Read thermophysicalProperties dictionary
|
||||
virtual bool read();
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
@ -32,48 +32,20 @@ Foam::autoPtr<Foam::solidThermo> Foam::solidThermo::New
|
||||
const fvMesh& mesh
|
||||
)
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
Info<< "solidThermo::New(const fvMesh&): "
|
||||
<< "constructing solidThermo"
|
||||
<< endl;
|
||||
return basicThermo::New<solidThermo>(mesh);
|
||||
}
|
||||
|
||||
const word thermoType
|
||||
|
||||
Foam::autoPtr<Foam::solidThermo> Foam::solidThermo::New
|
||||
(
|
||||
IOdictionary
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"thermophysicalProperties",
|
||||
mesh.time().constant(),
|
||||
mesh,
|
||||
IOobject::MUST_READ_IF_MODIFIED,
|
||||
IOobject::NO_WRITE,
|
||||
false
|
||||
const fvMesh& mesh,
|
||||
const dictionary& dict
|
||||
)
|
||||
).lookup("thermoType")
|
||||
);
|
||||
|
||||
fvMeshConstructorTable::iterator cstrIter =
|
||||
fvMeshConstructorTablePtr_->find(thermoType);
|
||||
|
||||
if (cstrIter == fvMeshConstructorTablePtr_->end())
|
||||
{
|
||||
FatalErrorIn
|
||||
(
|
||||
"solidThermo::New(const fvMesh&)"
|
||||
) << "Unknown solidThermo type " << thermoType
|
||||
<< endl << endl
|
||||
<< "Valid solidThermo types are :" << endl
|
||||
<< fvMeshConstructorTablePtr_->toc()
|
||||
<< exit(FatalError);
|
||||
return basicThermo::New<solidThermo>(mesh, dict);
|
||||
}
|
||||
|
||||
return autoPtr<solidThermo>(cstrIter()(mesh));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Foam::autoPtr<Foam::solidThermo> Foam::solidThermo::New
|
||||
(
|
||||
const fvMesh& mesh,
|
||||
@ -106,6 +78,7 @@ Foam::autoPtr<Foam::solidThermo> Foam::solidThermo::New
|
||||
|
||||
return autoPtr<solidThermo>(cstrIter()(mesh, dict));
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -23,8 +23,9 @@ License
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
#include "makeSolidThermo.H"
|
||||
#include "solidThermo.H"
|
||||
#include "heSolidThermo.H"
|
||||
|
||||
#include "specie.H"
|
||||
#include "rhoConst.H"
|
||||
@ -33,7 +34,6 @@ License
|
||||
#include "constIsoSolidTransport.H"
|
||||
#include "constAnIsoSolidTransport.H"
|
||||
#include "exponentialSolidTransport.H"
|
||||
#include "constSolidRad.H"
|
||||
#include "pureSolidMixture.H"
|
||||
#include "multiComponentSolidMixture.H"
|
||||
#include "reactingSolidMixture.H"
|
||||
@ -41,11 +41,6 @@ License
|
||||
#include "sensibleInternalEnergy.H"
|
||||
#include "thermo.H"
|
||||
|
||||
#include "heThermo.H"
|
||||
|
||||
#include "solidThermo.H"
|
||||
#include "solidReactionThermo.H"
|
||||
#include "heSolidThermo.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -60,7 +55,6 @@ makeSolidThermo
|
||||
heSolidThermo,
|
||||
pureSolidMixture,
|
||||
constIsoSolidTransport,
|
||||
constSolidRad,
|
||||
sensibleEnthalpy,
|
||||
hConstThermo,
|
||||
rhoConst,
|
||||
@ -73,7 +67,6 @@ makeSolidThermo
|
||||
heSolidThermo,
|
||||
pureSolidMixture,
|
||||
constAnIsoSolidTransport,
|
||||
constSolidRad,
|
||||
sensibleEnthalpy,
|
||||
hConstThermo,
|
||||
rhoConst,
|
||||
@ -86,7 +79,6 @@ makeSolidThermo
|
||||
heSolidThermo,
|
||||
pureSolidMixture,
|
||||
exponentialSolidTransport,
|
||||
constSolidRad,
|
||||
sensibleEnthalpy,
|
||||
hExponentialThermo,
|
||||
rhoConst,
|
||||
@ -99,20 +91,6 @@ makeSolidThermo
|
||||
heSolidThermo,
|
||||
multiComponentSolidMixture,
|
||||
constIsoSolidTransport,
|
||||
constSolidRad,
|
||||
sensibleEnthalpy,
|
||||
hConstThermo,
|
||||
rhoConst,
|
||||
specie
|
||||
);
|
||||
|
||||
makeSolidThermo
|
||||
(
|
||||
solidReactionThermo,
|
||||
heSolidThermo,
|
||||
reactingSolidMixture,
|
||||
constIsoSolidTransport,
|
||||
constSolidRad,
|
||||
sensibleEnthalpy,
|
||||
hConstThermo,
|
||||
rhoConst,
|
||||
@ -1,11 +1,6 @@
|
||||
atomicWeights = atomicWeights
|
||||
specie = specie
|
||||
equationOfState = equationOfState
|
||||
reactions = reaction/reactions
|
||||
|
||||
$(atomicWeights)/atomicWeights.C
|
||||
$(specie)/specie.C
|
||||
$(reactions)/makeReactionThermoReactions.C
|
||||
$(reactions)/makeLangmuirHinshelwoodReactions.C
|
||||
atomicWeights/atomicWeights.C
|
||||
specie/specie.C
|
||||
reaction/reactions/makeReactions.C
|
||||
reaction/reactions/makeLangmuirHinshelwoodReactions.C
|
||||
|
||||
LIB = $(FOAM_LIBBIN)/libspecie
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heheuReactionThermo;
|
||||
type heheuPsiThermo;
|
||||
mixture inhomogeneousMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heheuReactionThermo;
|
||||
type heheuPsiThermo;
|
||||
mixture homogeneousMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heheuReactionThermo;
|
||||
type heheuPsiThermo;
|
||||
mixture inhomogeneousMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<reactingSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture reactingSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
solidComponents
|
||||
(
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture singleStepReactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture singleStepReactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture singleStepReactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -110,7 +110,16 @@ dictionaryReplacement
|
||||
|
||||
|
||||
// Solid thermo
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
|
||||
mixture
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -14,7 +14,16 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType heSolidThermo<pureSolidMixture<constIso<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>>;
|
||||
thermoType
|
||||
{
|
||||
type heSolidThermo;
|
||||
mixture pureSolidMixture;
|
||||
transport constIso;
|
||||
thermo hConst;
|
||||
equationOfState rhoConst;
|
||||
specie specie;
|
||||
energy sensibleEnthalpy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoReactionThermo;
|
||||
type heRhoThermo;
|
||||
mixture reactingMixture;
|
||||
transport polynomial;
|
||||
thermo hPolynomial;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoReactionThermo;
|
||||
type heRhoThermo;
|
||||
mixture reactingMixture;
|
||||
transport polynomial;
|
||||
thermo hPolynomial;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoReactionThermo;
|
||||
type heRhoThermo;
|
||||
mixture reactingMixture;
|
||||
transport polynomial;
|
||||
thermo hPolynomial;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoReactionThermo;
|
||||
type heRhoThermo;
|
||||
mixture reactingMixture;
|
||||
transport polynomial;
|
||||
thermo hPolynomial;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type heRhoReactionThermo;
|
||||
type heRhoThermo;
|
||||
mixture reactingMixture;
|
||||
transport polynomial;
|
||||
thermo hPolynomial;
|
||||
|
||||
@ -17,7 +17,7 @@ FoamFile
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiReactionThermo;
|
||||
type hePsiThermo;
|
||||
mixture reactingMixture;
|
||||
transport sutherland;
|
||||
thermo janaf;
|
||||
|
||||
Reference in New Issue
Block a user