ENH: Adding thermoPhysicsTypes for sensibleInternalEnergy

and instanciating reactionThermos, Reactions, chemistrySolver
solidChemistrySolvers and readers.
chemkinReader uses the sensibleEnthalpy base of thermoType
This commit is contained in:
sergio
2013-01-25 14:45:27 +00:00
parent 8bcb8132bf
commit 4511f96d6d
18 changed files with 643 additions and 140 deletions

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -38,11 +38,12 @@ namespace Foam
{
namespace combustionModels
{
// Combustion models based on sensibleEnthalpy
makeCombustionTypesThermo
(
FSD,
psiThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
psiCombustionModel
);
@ -50,7 +51,7 @@ namespace combustionModels
(
FSD,
psiThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
psiCombustionModel
);
@ -58,7 +59,7 @@ namespace combustionModels
(
FSD,
rhoThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
rhoCombustionModel
);
@ -66,7 +67,40 @@ namespace combustionModels
(
FSD,
rhoThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
rhoCombustionModel
);
// Combustion models based on sensibleInternalEnergy
makeCombustionTypesThermo
(
FSD,
psiThermoCombustion,
gasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
FSD,
psiThermoCombustion,
constGasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
FSD,
rhoThermoCombustion,
gasEThermoPhysics,
rhoCombustionModel
);
makeCombustionTypesThermo
(
FSD,
rhoThermoCombustion,
constGasEThermoPhysics,
rhoCombustionModel
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -36,11 +36,12 @@ namespace Foam
{
namespace combustionModels
{
// Combustion models based on sensibleEnthalpy
makeCombustionTypesThermo
(
diffusion,
psiThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
psiCombustionModel
);
@ -48,7 +49,7 @@ namespace combustionModels
(
diffusion,
psiThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
psiCombustionModel
);
@ -56,7 +57,7 @@ namespace combustionModels
(
diffusion,
rhoThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
rhoCombustionModel
);
@ -64,7 +65,41 @@ namespace combustionModels
(
diffusion,
rhoThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
rhoCombustionModel
);
// Combustion models based on sensibleInternalEnergy
makeCombustionTypesThermo
(
diffusion,
psiThermoCombustion,
gasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
diffusion,
psiThermoCombustion,
constGasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
diffusion,
rhoThermoCombustion,
gasEThermoPhysics,
rhoCombustionModel
);
makeCombustionTypesThermo
(
diffusion,
rhoThermoCombustion,
constGasEThermoPhysics,
rhoCombustionModel
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -36,11 +36,13 @@ namespace Foam
{
namespace combustionModels
{
// Combustion models based on sensibleEnthalpy
makeCombustionTypesThermo
(
infinitelyFastChemistry,
psiThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
psiCombustionModel
);
@ -48,7 +50,7 @@ namespace combustionModels
(
infinitelyFastChemistry,
psiThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
psiCombustionModel
);
@ -56,7 +58,7 @@ namespace combustionModels
(
infinitelyFastChemistry,
rhoThermoCombustion,
gasThermoPhysics,
gasHThermoPhysics,
rhoCombustionModel
);
@ -64,7 +66,41 @@ namespace combustionModels
(
infinitelyFastChemistry,
rhoThermoCombustion,
constGasThermoPhysics,
constGasHThermoPhysics,
rhoCombustionModel
);
// Combustion models based on sensibleInternalEnergy
makeCombustionTypesThermo
(
infinitelyFastChemistry,
psiThermoCombustion,
gasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
infinitelyFastChemistry,
psiThermoCombustion,
constGasEThermoPhysics,
psiCombustionModel
);
makeCombustionTypesThermo
(
infinitelyFastChemistry,
rhoThermoCombustion,
gasEThermoPhysics,
rhoCombustionModel
);
makeCombustionTypesThermo
(
infinitelyFastChemistry,
rhoThermoCombustion,
constGasEThermoPhysics,
rhoCombustionModel
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -39,39 +39,76 @@ Description
namespace Foam
{
// Chemistry moldels based on sensibleEnthalpy
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
constGasThermoPhysics
constGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
gasThermoPhysics
gasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
incompressibleGasThermoPhysics
incompressibleGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
icoPoly8ThermoPhysics
icoPoly8HThermoPhysics
);
// Chemistry moldels based on sensibleInternalEnergy
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
constGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
gasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
constIncompressibleGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
incompressibleGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
psiChemistryModel,
icoPoly8EThermoPhysics
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -39,39 +39,77 @@ Description
namespace Foam
{
// Chemistry moldels based on sensibleEnthalpy
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
constGasThermoPhysics
constGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
gasThermoPhysics
gasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
incompressibleGasThermoPhysics
incompressibleGasHThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
icoPoly8ThermoPhysics
icoPoly8HThermoPhysics
);
// Chemistry moldels based on sensibleInternalEnergy
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
constGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
gasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
constIncompressibleGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
incompressibleGasEThermoPhysics
);
makeChemistryModel
(
chemistryModel,
rhoChemistryModel,
icoPoly8EThermoPhysics
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -33,24 +33,61 @@ License
namespace Foam
{
makeChemistrySolverTypes(psiChemistryModel, constGasThermoPhysics);
makeChemistrySolverTypes(psiChemistryModel, gasThermoPhysics);
// Chemistry solvers based on sensibleEnthalpy
makeChemistrySolverTypes(psiChemistryModel, constGasHThermoPhysics);
makeChemistrySolverTypes(psiChemistryModel, gasHThermoPhysics);
makeChemistrySolverTypes
(
psiChemistryModel,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeChemistrySolverTypes(psiChemistryModel, incompressibleGasThermoPhysics);
makeChemistrySolverTypes(psiChemistryModel, icoPoly8ThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, constGasThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, gasThermoPhysics);
makeChemistrySolverTypes
(
psiChemistryModel,
incompressibleGasHThermoPhysics)
;
makeChemistrySolverTypes(psiChemistryModel, icoPoly8HThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, constGasHThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, gasHThermoPhysics);
makeChemistrySolverTypes
(
rhoChemistryModel,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeChemistrySolverTypes(rhoChemistryModel, incompressibleGasThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, icoPoly8ThermoPhysics);
makeChemistrySolverTypes
(
rhoChemistryModel,
incompressibleGasHThermoPhysics
);
makeChemistrySolverTypes(rhoChemistryModel, icoPoly8HThermoPhysics);
// Chemistry solvers based on sensibleInternalEnergy
makeChemistrySolverTypes(psiChemistryModel, constGasEThermoPhysics);
makeChemistrySolverTypes(psiChemistryModel, gasEThermoPhysics);
makeChemistrySolverTypes
(
psiChemistryModel,
constIncompressibleGasEThermoPhysics
);
makeChemistrySolverTypes
(
psiChemistryModel,
incompressibleGasEThermoPhysics
);
makeChemistrySolverTypes(psiChemistryModel, icoPoly8EThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, constGasEThermoPhysics);
makeChemistrySolverTypes(rhoChemistryModel, gasEThermoPhysics);
makeChemistrySolverTypes
(
rhoChemistryModel,
constIncompressibleGasEThermoPhysics
);
makeChemistrySolverTypes
(
rhoChemistryModel,
incompressibleGasEThermoPhysics
);
makeChemistrySolverTypes(rhoChemistryModel, icoPoly8EThermoPhysics);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -37,23 +37,50 @@ namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
makeChemistryReader(constGasThermoPhysics);
makeChemistryReader(gasThermoPhysics);
makeChemistryReader(constIncompressibleGasThermoPhysics);
makeChemistryReader(incompressibleGasThermoPhysics);
makeChemistryReader(icoPoly8ThermoPhysics);
makeChemistryReader(hConstSolidThermoPhysics);
makeChemistryReader(hExponentialSolidThermoPhysics);
// Solid chemistry readers based on sensibleEnthalpy
makeChemistryReaderType(foamChemistryReader, constGasThermoPhysics);
makeChemistryReaderType(foamChemistryReader, gasThermoPhysics);
makeChemistryReader(constGasHThermoPhysics);
makeChemistryReader(gasHThermoPhysics);
makeChemistryReader(constIncompressibleGasHThermoPhysics);
makeChemistryReader(incompressibleGasHThermoPhysics);
makeChemistryReader(icoPoly8HThermoPhysics);
makeChemistryReaderType(foamChemistryReader, constGasHThermoPhysics);
makeChemistryReaderType(foamChemistryReader, gasHThermoPhysics);
makeChemistryReaderType
(
foamChemistryReader,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeChemistryReaderType(foamChemistryReader, incompressibleGasThermoPhysics);
makeChemistryReaderType(foamChemistryReader, icoPoly8ThermoPhysics);
makeChemistryReaderType(foamChemistryReader, incompressibleGasHThermoPhysics);
makeChemistryReaderType(foamChemistryReader, icoPoly8HThermoPhysics);
// Solid chemistry readers based on sensibleInternalEnergy
makeChemistryReader(constGasEThermoPhysics);
makeChemistryReader(gasEThermoPhysics);
makeChemistryReader(constIncompressibleGasEThermoPhysics);
makeChemistryReader(incompressibleGasEThermoPhysics);
makeChemistryReader(icoPoly8EThermoPhysics);
makeChemistryReaderType(foamChemistryReader, constGasEThermoPhysics);
makeChemistryReaderType(foamChemistryReader, gasEThermoPhysics);
makeChemistryReaderType
(
foamChemistryReader,
constIncompressibleGasEThermoPhysics
);
makeChemistryReaderType(foamChemistryReader, incompressibleGasEThermoPhysics);
makeChemistryReaderType(foamChemistryReader, icoPoly8EThermoPhysics);
// Solid chemistry readers for solids based on sensibleInternalEnergy
makeChemistryReader(hConstSolidThermoPhysics);
makeChemistryReader(hExponentialSolidThermoPhysics);
makeChemistryReaderType(foamChemistryReader, hConstSolidThermoPhysics);
makeChemistryReaderType(foamChemistryReader, hExponentialSolidThermoPhysics);

View File

@ -296,13 +296,13 @@ List<specieElement> currentSpecieComposition(5);
scalar currentLowT = 0;
scalar currentHighT = 0;
scalar currentCommonT = 0;
gasThermoPhysics::coeffArray highCpCoeffs(scalarList(7));
gasThermoPhysics::coeffArray lowCpCoeffs(scalarList(7));
gasHThermoPhysics::coeffArray highCpCoeffs(scalarList(7));
gasHThermoPhysics::coeffArray lowCpCoeffs(scalarList(7));
gasReaction::specieCoeffs currentSpecieCoeff;
gasHReaction::specieCoeffs currentSpecieCoeff;
DynamicList<gasReaction::specieCoeffs> lhs;
DynamicList<gasReaction::specieCoeffs> rhs;
DynamicList<gasHReaction::specieCoeffs> lhs;
DynamicList<gasHReaction::specieCoeffs> rhs;
scalarList ArrheniusCoeffs(3);
DynamicList<scalar> reactionCoeffs;
@ -312,7 +312,7 @@ label currentThirdBodyIndex = -1;
word reactionCoeffsName = word::null;
HashTable<scalarList> reactionCoeffsTable;
DynamicList<gasReaction::specieCoeffs> *lrhsPtr = &lhs;
DynamicList<gasHReaction::specieCoeffs> *lrhsPtr = &lhs;
reactionType rType = unknownReactionType;
reactionRateType rrType = Arrhenius;
@ -609,7 +609,7 @@ bool finishReaction = false;
<readThermoLineLabel4>{thermoLineLabel4} {
HashPtrTable<gasThermoPhysics>::iterator specieThermoIter
HashPtrTable<gasHThermoPhysics>::iterator specieThermoIter
(
speciesThermo_.find(currentSpecieName)
);
@ -622,7 +622,7 @@ bool finishReaction = false;
speciesThermo_.insert
(
currentSpecieName,
new gasThermoPhysics
new gasHThermoPhysics
(
janafThermo<perfectGas<specie> >
(
@ -1429,7 +1429,7 @@ bool finishReaction = false;
<readReactionOrder>{reactionCoeff}{endReactionCoeffs} {
DynamicList<gasReaction::specieCoeffs>& lrhs = *lrhsPtr;
DynamicList<gasHReaction::specieCoeffs>& lrhs = *lrhsPtr;
bool found = false;

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -46,7 +46,7 @@ License
namespace Foam
{
addChemistryReaderType(chemkinReader, gasThermoPhysics);
addChemistryReaderType(chemkinReader, gasHThermoPhysics);
}
@ -168,8 +168,8 @@ template<class ReactionRateType>
void Foam::chemkinReader::addReactionType
(
const reactionType rType,
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const ReactionRateType& rr
)
{
@ -180,9 +180,9 @@ void Foam::chemkinReader::addReactionType
reactions_.append
(
new IrreversibleReaction
<Reaction, gasThermoPhysics, ReactionRateType>
<Reaction, gasHThermoPhysics, ReactionRateType>
(
Reaction<gasThermoPhysics>
Reaction<gasHThermoPhysics>
(
speciesTable_,
lhs.shrink(),
@ -200,9 +200,9 @@ void Foam::chemkinReader::addReactionType
reactions_.append
(
new ReversibleReaction
<Reaction, gasThermoPhysics, ReactionRateType>
<Reaction, gasHThermoPhysics, ReactionRateType>
(
Reaction<gasThermoPhysics>
Reaction<gasHThermoPhysics>
(
speciesTable_,
lhs.shrink(),
@ -240,8 +240,8 @@ void Foam::chemkinReader::addPressureDependentReaction
(
const reactionType rType,
const fallOffFunctionType fofType,
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const scalarList& efficiencies,
const scalarList& k0Coeffs,
const scalarList& kInfCoeffs,
@ -423,8 +423,8 @@ void Foam::chemkinReader::addPressureDependentReaction
void Foam::chemkinReader::addReaction
(
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const scalarList& efficiencies,
const reactionType rType,
const reactionRateType rrType,
@ -499,9 +499,9 @@ void Foam::chemkinReader::addReaction
reactions_.append
(
new NonEquilibriumReversibleReaction
<Reaction, gasThermoPhysics, ArrheniusReactionRate>
<Reaction, gasHThermoPhysics, ArrheniusReactionRate>
(
Reaction<gasThermoPhysics>
Reaction<gasHThermoPhysics>
(
speciesTable_,
lhs.shrink(),
@ -554,11 +554,11 @@ void Foam::chemkinReader::addReaction
new NonEquilibriumReversibleReaction
<
Reaction,
gasThermoPhysics,
gasHThermoPhysics,
thirdBodyArrheniusReactionRate
>
(
Reaction<gasThermoPhysics>
Reaction<gasHThermoPhysics>
(
speciesTable_,
lhs.shrink(),
@ -661,9 +661,9 @@ void Foam::chemkinReader::addReaction
reactions_.append
(
new NonEquilibriumReversibleReaction
<Reaction, gasThermoPhysics, LandauTellerReactionRate>
<Reaction, gasHThermoPhysics, LandauTellerReactionRate>
(
Reaction<gasThermoPhysics>
Reaction<gasHThermoPhysics>
(
speciesTable_,
lhs.shrink(),

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -61,7 +61,7 @@ namespace Foam
class chemkinReader
:
public chemistryReader<gasThermoPhysics>,
public chemistryReader<gasHThermoPhysics>,
public yyFlexLexer
{
@ -199,13 +199,13 @@ private:
HashTable<phase> speciePhase_;
//- Table of the thermodynamic data given in the CHEMKIN file
HashPtrTable<gasThermoPhysics> speciesThermo_;
HashPtrTable<gasHThermoPhysics> speciesThermo_;
//- Table of species composition
HashTable<List<specieElement> > specieComposition_;
//- List of the reactions
ReactionList<gasThermoPhysics> reactions_;
ReactionList<gasHThermoPhysics> reactions_;
// Private Member Functions
@ -257,8 +257,8 @@ private:
void addReactionType
(
const reactionType rType,
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const ReactionRateType& rr
);
@ -267,8 +267,8 @@ private:
(
const reactionType rType,
const fallOffFunctionType fofType,
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const scalarList& thirdBodyEfficiencies,
const scalarList& k0Coeffs,
const scalarList& kInfCoeffs,
@ -280,8 +280,8 @@ private:
void addReaction
(
DynamicList<gasReaction::specieCoeffs>& lhs,
DynamicList<gasReaction::specieCoeffs>& rhs,
DynamicList<gasHReaction::specieCoeffs>& lhs,
DynamicList<gasHReaction::specieCoeffs>& rhs,
const scalarList& thirdBodyEfficiencies,
const reactionType rType,
const reactionRateType rrType,
@ -364,7 +364,7 @@ public:
}
//- Table of the thermodynamic data given in the CHEMKIN file
const HashPtrTable<gasThermoPhysics>& speciesThermo() const
const HashPtrTable<gasHThermoPhysics>& speciesThermo() const
{
return speciesThermo_;
}
@ -376,7 +376,7 @@ public:
}
//- List of the reactions
const ReactionList<gasThermoPhysics>& reactions() const
const ReactionList<gasHThermoPhysics>& reactions() const
{
return reactions_;
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -179,7 +179,7 @@ makeReactionThermo
);
// Multi-component thermo
// Multi-component thermo for sensible enthalpy
makeReactionMixtureThermo
(
@ -187,7 +187,7 @@ makeReactionMixtureThermo
psiReactionThermo,
hePsiThermo,
multiComponentMixture,
constGasThermoPhysics
constGasHThermoPhysics
);
makeReactionMixtureThermo
@ -196,11 +196,32 @@ makeReactionMixtureThermo
psiReactionThermo,
hePsiThermo,
multiComponentMixture,
gasThermoPhysics
gasHThermoPhysics
);
// Multi-component reaction thermo
// Multi-component thermo for internal energy
makeReactionMixtureThermo
(
psiThermo,
psiReactionThermo,
hePsiThermo,
multiComponentMixture,
constGasEThermoPhysics
);
makeReactionMixtureThermo
(
psiThermo,
psiReactionThermo,
hePsiThermo,
multiComponentMixture,
gasEThermoPhysics
);
// Multi-component reaction thermo for sensible enthalpy
makeReactionMixtureThermo
(
@ -208,7 +229,7 @@ makeReactionMixtureThermo
psiReactionThermo,
hePsiThermo,
reactingMixture,
constGasThermoPhysics
constGasHThermoPhysics
);
makeReactionMixtureThermo
@ -217,7 +238,7 @@ makeReactionMixtureThermo
psiReactionThermo,
hePsiThermo,
reactingMixture,
gasThermoPhysics
gasHThermoPhysics
);
makeReactionMixtureThermo
@ -226,7 +247,37 @@ makeReactionMixtureThermo
psiReactionThermo,
hePsiThermo,
singleStepReactingMixture,
gasThermoPhysics
gasHThermoPhysics
);
// Multi-component reaction thermo for internal energy
makeReactionMixtureThermo
(
psiThermo,
psiReactionThermo,
hePsiThermo,
reactingMixture,
constGasEThermoPhysics
);
makeReactionMixtureThermo
(
psiThermo,
psiReactionThermo,
hePsiThermo,
reactingMixture,
gasEThermoPhysics
);
makeReactionMixtureThermo
(
psiThermo,
psiReactionThermo,
hePsiThermo,
singleStepReactingMixture,
gasEThermoPhysics
);
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -213,7 +213,7 @@ makeReactionThermo
);
// Multi-component thermo
// Multi-component thermo for internal energy
makeReactionMixtureThermo
(
@ -221,7 +221,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
constGasThermoPhysics
constGasEThermoPhysics
);
makeReactionMixtureThermo
@ -230,7 +230,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
gasThermoPhysics
gasEThermoPhysics
);
makeReactionMixtureThermo
@ -239,7 +239,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
constIncompressibleGasThermoPhysics
constIncompressibleGasEThermoPhysics
);
makeReactionMixtureThermo
@ -248,7 +248,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
incompressibleGasThermoPhysics
incompressibleGasEThermoPhysics
);
makeReactionMixtureThermo
@ -257,7 +257,114 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
icoPoly8ThermoPhysics
icoPoly8EThermoPhysics
);
// Multi-component reaction thermo
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
reactingMixture,
constGasEThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
reactingMixture,
gasEThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
reactingMixture,
constIncompressibleGasEThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
reactingMixture,
incompressibleGasEThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
reactingMixture,
icoPoly8EThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
singleStepReactingMixture,
gasEThermoPhysics
);
// Multi-component thermo for sensible enthalpy
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
constGasHThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
gasHThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
constIncompressibleGasHThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
incompressibleGasHThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
icoPoly8HThermoPhysics
);
@ -269,7 +376,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
reactingMixture,
constGasThermoPhysics
constGasHThermoPhysics
);
makeReactionMixtureThermo
@ -278,7 +385,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
reactingMixture,
gasThermoPhysics
gasHThermoPhysics
);
makeReactionMixtureThermo
@ -287,7 +394,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
reactingMixture,
constIncompressibleGasThermoPhysics
constIncompressibleGasHThermoPhysics
);
makeReactionMixtureThermo
@ -296,7 +403,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
reactingMixture,
incompressibleGasThermoPhysics
incompressibleGasHThermoPhysics
);
makeReactionMixtureThermo
@ -305,7 +412,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
reactingMixture,
icoPoly8ThermoPhysics
icoPoly8HThermoPhysics
);
makeReactionMixtureThermo
@ -314,7 +421,7 @@ makeReactionMixtureThermo
rhoReactionThermo,
heRhoThermo,
singleStepReactingMixture,
gasThermoPhysics
gasHThermoPhysics
);

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -46,7 +46,7 @@ namespace Foam
ODESolidChemistryModel,
solidChemistryModel,
hConstSolidThermoPhysics,
gasThermoPhysics
gasHThermoPhysics
);
makeSolidChemistryModel
@ -54,7 +54,7 @@ namespace Foam
ODESolidChemistryModel,
solidChemistryModel,
hExponentialSolidThermoPhysics,
gasThermoPhysics
gasHThermoPhysics
);
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -41,7 +41,7 @@ namespace Foam
ode,
solidChemistryModel,
hConstSolidThermoPhysics,
gasThermoPhysics
gasHThermoPhysics
)
makeSolidChemistrySolverType
@ -49,7 +49,7 @@ namespace Foam
ode,
solidChemistryModel,
hExponentialSolidThermoPhysics,
gasThermoPhysics
gasHThermoPhysics
)
}

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -43,16 +43,31 @@ Description
namespace Foam
{
typedef Reaction<constGasThermoPhysics> constGasReaction;
// sensible enthalpy based reactions
typedef Reaction<constGasHThermoPhysics> constGasHReaction;
typedef Reaction<gasThermoPhysics> gasReaction;
typedef Reaction<gasHThermoPhysics> gasHReaction;
typedef Reaction<constIncompressibleGasThermoPhysics>
constIncompressibleGasReaction;
typedef Reaction<constIncompressibleGasHThermoPhysics>
constIncompressibleGasHReaction;
typedef Reaction<incompressibleGasThermoPhysics> incompressibleGasReaction;
typedef Reaction<incompressibleGasHThermoPhysics>
incompressibleGasHReaction;
typedef Reaction<icoPoly8ThermoPhysics> icoPoly8Reaction;
typedef Reaction<icoPoly8HThermoPhysics> icoPoly8HReaction;
// internal ennergy based reactions
typedef Reaction<constGasEThermoPhysics> constGasEReaction;
typedef Reaction<gasEThermoPhysics> gasEReaction;
typedef Reaction<constIncompressibleGasEThermoPhysics>
constIncompressibleGasEReaction;
typedef Reaction<incompressibleGasEThermoPhysics>
incompressibleGasEReaction;
typedef Reaction<icoPoly8EThermoPhysics> icoPoly8EReaction;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -37,7 +37,9 @@ Description
#include "incompressiblePerfectGas.H"
#include "hConstThermo.H"
#include "janafThermo.H"
#include "sensibleEnthalpy.H"
#include "sensibleInternalEnergy.H"
#include "thermo.H"
#include "sutherlandTransport.H"
#include "constTransport.H"
@ -50,6 +52,7 @@ Description
namespace Foam
{
// thermo physics types based on sensibleEnthalpy
typedef
constTransport
<
@ -61,7 +64,7 @@ namespace Foam
>,
sensibleEnthalpy
>
> constGasThermoPhysics;
> constGasHThermoPhysics;
typedef
sutherlandTransport
@ -74,7 +77,7 @@ namespace Foam
>,
sensibleEnthalpy
>
> gasThermoPhysics;
> gasHThermoPhysics;
typedef
constTransport
@ -87,7 +90,7 @@ namespace Foam
>,
sensibleEnthalpy
>
> constIncompressibleGasThermoPhysics;
> constIncompressibleGasHThermoPhysics;
typedef
sutherlandTransport
@ -100,7 +103,7 @@ namespace Foam
>,
sensibleEnthalpy
>
> incompressibleGasThermoPhysics;
> incompressibleGasHThermoPhysics;
typedef
polynomialTransport
@ -115,7 +118,76 @@ namespace Foam
sensibleEnthalpy
>,
8
> icoPoly8ThermoPhysics;
> icoPoly8HThermoPhysics;
// thermo physics types based on sensibleInternalEnergy
typedef
constTransport
<
species::thermo
<
hConstThermo
<
perfectGas<specie>
>,
sensibleInternalEnergy
>
> constGasEThermoPhysics;
typedef
sutherlandTransport
<
species::thermo
<
janafThermo
<
perfectGas<specie>
>,
sensibleInternalEnergy
>
> gasEThermoPhysics;
typedef
constTransport
<
species::thermo
<
hConstThermo
<
incompressiblePerfectGas<specie>
>,
sensibleInternalEnergy
>
> constIncompressibleGasEThermoPhysics;
typedef
sutherlandTransport
<
species::thermo
<
janafThermo
<
incompressiblePerfectGas<specie>
>,
sensibleInternalEnergy
>
> incompressibleGasEThermoPhysics;
typedef
polynomialTransport
<
species::thermo
<
hPolynomialThermo
<
icoPolynomial<specie, 8>,
8
>,
sensibleInternalEnergy
>,
8
> icoPoly8EThermoPhysics;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -31,8 +31,11 @@ License
namespace Foam
{
makeIRReactions(gasThermoPhysics, LangmuirHinshelwoodReactionRate)
makeIRReactions(icoPoly8ThermoPhysics, LangmuirHinshelwoodReactionRate)
makeIRReactions(gasHThermoPhysics, LangmuirHinshelwoodReactionRate)
makeIRReactions(icoPoly8HThermoPhysics, LangmuirHinshelwoodReactionRate)
makeIRReactions(gasEThermoPhysics, LangmuirHinshelwoodReactionRate)
makeIRReactions(icoPoly8EThermoPhysics, LangmuirHinshelwoodReactionRate)
}
// ************************************************************************* //

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2013-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -83,15 +83,26 @@ License
namespace Foam
{
makeReactions(constGasThermoPhysics, constGasReaction)
makeReactions(gasThermoPhysics, gasReaction)
// sensible enthalpy based reactions
makeReactions(constGasHThermoPhysics, constGasHReaction)
makeReactions(gasHThermoPhysics, gasHReaction)
makeReactions
(
constIncompressibleGasThermoPhysics,
constIncompressibleGasReaction
constIncompressibleGasHThermoPhysics,
constIncompressibleGasHReaction
)
makeReactions(incompressibleGasThermoPhysics, incompressibleGasReaction)
makeReactions(icoPoly8ThermoPhysics, icoPoly8Reaction)
makeReactions(incompressibleGasHThermoPhysics, incompressibleGasHReaction)
makeReactions(icoPoly8HThermoPhysics, icoPoly8HReaction)
makeReactions(constGasEThermoPhysics, constGasEReaction)
makeReactions(gasEThermoPhysics, gasEReaction)
makeReactions
(
constIncompressibleGasEThermoPhysics,
constIncompressibleGasEReaction
)
makeReactions(incompressibleGasEThermoPhysics, incompressibleGasEReaction)
makeReactions(icoPoly8EThermoPhysics, icoPoly8EReaction)
}
// ************************************************************************* //