diff --git a/applications/solvers/multiphase/reactingEulerFoam/interfacialCompositionModels/interfaceCompositionModels/InterfaceCompositionModel/InterfaceCompositionModels.C b/applications/solvers/multiphase/reactingEulerFoam/interfacialCompositionModels/interfaceCompositionModels/InterfaceCompositionModel/InterfaceCompositionModels.C index c413e0c524a2b7bd8361e89371905c0d5ee3e47f..422276d65b6302cb346285da603d7645b31782a5 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/interfacialCompositionModels/interfaceCompositionModels/InterfaceCompositionModel/InterfaceCompositionModels.C +++ b/applications/solvers/multiphase/reactingEulerFoam/interfacialCompositionModels/interfaceCompositionModels/InterfaceCompositionModel/InterfaceCompositionModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2015-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -54,43 +54,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -namespace Foam -{ - typedef - constTransport - < - species::thermo - < - hConstThermo - < - perfectFluid<specie> - >, - sensibleInternalEnergy - > - > constFluidEThermoPhysics; -}; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - // multi-component liquid - makeReactionThermo - ( - rhoThermo, - rhoReactionThermo, - heRhoThermo, - multiComponentMixture, - constTransport, - sensibleInternalEnergy, - hConstThermo, - perfectFluid, - specie - ); -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - namespace Foam { using namespace interfaceCompositionModels; diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/reactionThermo/hRefConstThermos.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/reactionThermo/hRefConstThermos.C index 712a96e1dedd3fdbbaf4f502b04611ffb83acbf9..600e26b9ad46b8f6f1469c16ad155fe8e21e570c 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/reactionThermo/hRefConstThermos.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/reactionThermo/hRefConstThermos.C @@ -214,7 +214,7 @@ makeThermo // multiComponentMixture, sensibleInternalEnergy: -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -223,7 +223,7 @@ makeReactionMixtureThermo constRefGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -232,7 +232,7 @@ makeReactionMixtureThermo constRefFluidEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -244,7 +244,7 @@ makeReactionMixtureThermo // multiComponentMixture, sensibleEnthalpy: -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -253,7 +253,7 @@ makeReactionMixtureThermo constRefRhoConstHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -262,7 +262,7 @@ makeReactionMixtureThermo constRefFluidHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, diff --git a/src/thermophysicalModels/basic/fluidThermo/makeThermo.H b/src/thermophysicalModels/basic/fluidThermo/makeThermo.H index 8581ff50256b5af9cb63a5ba23c240af35ecaad8..21f6940a6516ff4131eef23a4dbb72d79a5984c9 100644 --- a/src/thermophysicalModels/basic/fluidThermo/makeThermo.H +++ b/src/thermophysicalModels/basic/fluidThermo/makeThermo.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2012-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2012-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -66,9 +66,9 @@ defineTemplateTypeNameAndDebugWithName \ ( \ Cthermo##Mixture##Transport##Type##Thermo##EqnOfState##Specie, \ ( \ - #Cthermo"<"#Mixture"<" \ - + Transport##Type##Thermo##EqnOfState##Specie::typeName() \ - + ">>" \ + #Cthermo"<" \ + + Mixture<Transport##Type##Thermo##EqnOfState##Specie>::typeName() \ + + ">" \ ).c_str(), \ 0 \ ); diff --git a/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H b/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H index f7f213f10a9781eccb0983f21c7f7fb4e53b3875..36765064826e9094fd7030b97e2ab95dfa5c9dbf 100644 --- a/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H +++ b/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H @@ -73,6 +73,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "pureMixture<" + ThermoType::typeName() + '>'; + } + const ThermoType& mixture() const { return mixture_; diff --git a/src/thermophysicalModels/reactionThermo/makeReactionThermo.H b/src/thermophysicalModels/reactionThermo/makeReactionThermo.H index 3a63f0ba5881fd85223f726afdc7e00a8dd827a6..fc6b3973d8b38d3454efe1835bad34cc1cf39d71 100644 --- a/src/thermophysicalModels/reactionThermo/makeReactionThermo.H +++ b/src/thermophysicalModels/reactionThermo/makeReactionThermo.H @@ -31,82 +31,100 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactionMixtureThermo(BaseThermo,BaseReactionThermo,CThermo,Mixture,ThermoPhys) \ +#define defineReactionMixtureThermo(BaseReactionThermo,CThermo,Mixture,ThermoPhys) \ \ -typedef CThermo \ -< \ - BaseReactionThermo, \ - SpecieMixture \ + typedef CThermo \ < \ - Mixture \ + BaseReactionThermo, \ + SpecieMixture \ < \ - ThermoPhys \ + Mixture \ + < \ + ThermoPhys \ + > \ > \ - > \ -> CThermo##Mixture##ThermoPhys; \ + > CThermo##Mixture##ThermoPhys; \ + \ + defineTemplateTypeNameAndDebugWithName \ + ( \ + CThermo##Mixture##ThermoPhys, \ + (#CThermo"<" + Mixture<ThermoPhys>::typeName() + ">").c_str(), \ + 0 \ + ) + + +#define addReactionMixtureThermo(BaseThermo,CThermoMixtureThermoPhys) \ \ -defineTemplateTypeNameAndDebugWithName \ -( \ - CThermo##Mixture##ThermoPhys, \ - (#CThermo"<"#Mixture"<" + ThermoPhys::typeName() + ">>").c_str(), \ - 0 \ -); \ + addToRunTimeSelectionTable \ + ( \ + BaseThermo, \ + CThermoMixtureThermoPhys, \ + fvMesh \ + ) + + +#define makeReactionMixtureThermos(BaseThermo,BaseReactionThermo,CThermo,Mixture,ThermoPhys) \ \ -addToRunTimeSelectionTable \ -( \ - basicThermo, \ - CThermo##Mixture##ThermoPhys, \ - fvMesh \ -); \ + defineReactionMixtureThermo(BaseReactionThermo,CThermo,Mixture,ThermoPhys);\ \ -addToRunTimeSelectionTable \ -( \ - fluidThermo, \ - CThermo##Mixture##ThermoPhys, \ - fvMesh \ -); \ + addReactionMixtureThermo(basicThermo, CThermo##Mixture##ThermoPhys); \ + addReactionMixtureThermo(fluidThermo, CThermo##Mixture##ThermoPhys); \ + addReactionMixtureThermo(BaseThermo, CThermo##Mixture##ThermoPhys); \ + addReactionMixtureThermo(BaseReactionThermo, CThermo##Mixture##ThermoPhys) + + +#define makeReactionMixtureThermo(BaseReactionThermo,CThermo,Mixture,ThermoPhys) \ \ -addToRunTimeSelectionTable \ -( \ - BaseThermo, \ - CThermo##Mixture##ThermoPhys, \ - fvMesh \ -); \ + defineReactionMixtureThermo(BaseReactionThermo,CThermo,Mixture,ThermoPhys);\ \ -addToRunTimeSelectionTable \ -( \ - BaseReactionThermo, \ - CThermo##Mixture##ThermoPhys, \ - fvMesh \ -); + addReactionMixtureThermo(BaseReactionThermo, CThermo##Mixture##ThermoPhys) -#define makeReactionThermo(BaseThermo,BaseReactionThermo,CThermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie) \ +#define defineThermoPhys(Transport,Type,Thermo,EqnOfState,Specie) \ \ -typedef \ - Transport \ - < \ - species::thermo \ + typedef \ + Transport \ < \ - Thermo \ + species::thermo \ < \ - EqnOfState \ + Thermo \ < \ - Specie \ - > \ - >, \ - Type \ + EqnOfState \ + < \ + Specie \ + > \ + >, \ + Type \ + > \ > \ - > Transport##Type##Thermo##EqnOfState##Specie; \ + Transport##Type##Thermo##EqnOfState##Specie \ + + +#define makeReactionThermos(BaseThermo,BaseReactionThermo,CThermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie) \ + \ + defineThermoPhys(Transport,Type,Thermo,EqnOfState,Specie); \ + \ + makeReactionMixtureThermos \ + ( \ + BaseThermo, \ + BaseReactionThermo, \ + CThermo, \ + Mixture, \ + Transport##Type##Thermo##EqnOfState##Specie \ + ) + + +#define makeReactionThermo(BaseReactionThermo,CThermo,Mixture,Transport,Type,Thermo,EqnOfState,Specie) \ + \ + defineThermoPhys(Transport,Type,Thermo,EqnOfState,Specie); \ \ -makeReactionMixtureThermo \ -( \ - BaseThermo, \ - BaseReactionThermo, \ - CThermo, \ - Mixture, \ - Transport##Type##Thermo##EqnOfState##Specie \ -); + makeReactionMixtureThermo \ + ( \ + BaseReactionThermo, \ + CThermo, \ + Mixture, \ + Transport##Type##Thermo##EqnOfState##Specie \ + ) // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/thermophysicalModels/reactionThermo/mixtures/egrMixture/egrMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/egrMixture/egrMixture.H index 5b9f031248505fbebc3dda7160544322a07e0e70..43425d5116edc4d3ccf4a34757d9cc606f9f2bca 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/egrMixture/egrMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/egrMixture/egrMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -99,6 +99,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "egrMixture<" + ThermoType::typeName() + '>'; + } + const dimensionedScalar& stoicRatio() const { return stoicRatio_; diff --git a/src/thermophysicalModels/reactionThermo/mixtures/homogeneousMixture/homogeneousMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/homogeneousMixture/homogeneousMixture.H index bb77c4601e7cb4c4c37b6ba9e1b74396272c6699..4e4e2e50e19b46c689d502df0bdbf2e172f485f3 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/homogeneousMixture/homogeneousMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/homogeneousMixture/homogeneousMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -90,6 +90,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "homogeneousMixture<" + ThermoType::typeName() + '>'; + } + const ThermoType& mixture(const scalar) const; const ThermoType& cellMixture(const label celli) const diff --git a/src/thermophysicalModels/reactionThermo/mixtures/inhomogeneousMixture/inhomogeneousMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/inhomogeneousMixture/inhomogeneousMixture.H index d6ec1b63e09280833c64928b7249d65494e2cd47..55be584e702c70529ed8790ac9a10cf5c649a72f 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/inhomogeneousMixture/inhomogeneousMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/inhomogeneousMixture/inhomogeneousMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -96,6 +96,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "inhomogeneousMixture<" + ThermoType::typeName() + '>'; + } + const dimensionedScalar& stoicRatio() const { return stoicRatio_; diff --git a/src/thermophysicalModels/reactionThermo/mixtures/multiComponentMixture/multiComponentMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/multiComponentMixture/multiComponentMixture.H index 5f11d35b76a2fe8da1d42527a88228d3da8a1a0d..071eb76ffcd17a21a0c44b595b8ebe4230f32741 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/multiComponentMixture/multiComponentMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/multiComponentMixture/multiComponentMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -111,6 +111,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "multiComponentMixture<" + ThermoType::typeName() + '>'; + } + const ThermoType& cellMixture(const label celli) const; const ThermoType& patchFaceMixture diff --git a/src/thermophysicalModels/reactionThermo/mixtures/reactingMixture/reactingMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/reactingMixture/reactingMixture.H index e455909893ae17cc4ccb2678a5749158b6c2551e..4eb2e51e84e949c24017a892db1a178b727e74aa 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/reactingMixture/reactingMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/reactingMixture/reactingMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -93,6 +93,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "reactingMixture<" + ThermoType::typeName() + '>'; + } + //- Read dictionary void read(const dictionary&); diff --git a/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.C b/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.C new file mode 100644 index 0000000000000000000000000000000000000000..b8374445dc9cf154c4a9d7810e0c8167d0977280 --- /dev/null +++ b/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.C @@ -0,0 +1,62 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2017 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 "singleComponentMixture.H" + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +template<class ThermoType> +Foam::singleComponentMixture<ThermoType>::singleComponentMixture +( + const dictionary& thermoDict, + const fvMesh& mesh, + const word& phaseName +) +: + basicSpecieMixture(thermoDict, wordList::null(), mesh, phaseName), + thermo_(thermoDict.subDict("mixture")) +{} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +template<class ThermoType> +Foam::singleComponentMixture<ThermoType>::~singleComponentMixture() +{} + + +// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // + +template<class ThermoType> +void Foam::singleComponentMixture<ThermoType>::read +( + const dictionary& thermoDict +) +{ + thermo_ = ThermoType(thermoDict.subDict("mixture")); +} + + +// ************************************************************************* // diff --git a/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.H new file mode 100644 index 0000000000000000000000000000000000000000..7067d07081bb61e6957d6ce6181b7f537c0e8840 --- /dev/null +++ b/src/thermophysicalModels/reactionThermo/mixtures/singleComponentMixture/singleComponentMixture.H @@ -0,0 +1,158 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2017 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::singleComponentMixture + +Description + Single component mixture + +SourceFiles + singleComponentMixture.C + +\*---------------------------------------------------------------------------*/ + +#ifndef singleComponentMixture_H +#define singleComponentMixture_H + +#include "basicSpecieMixture.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class singleComponentMixture Declaration +\*---------------------------------------------------------------------------*/ + +template<class ThermoType> +class singleComponentMixture +: + public basicSpecieMixture +{ + // Private data + + //- Thermo model + ThermoType thermo_; + + +public: + + //- The type of thermodynamics this mixture is instantiated for + typedef ThermoType thermoType; + + + // Constructors + + //- Construct from dictionary, mesh and phase name + singleComponentMixture(const dictionary&, const fvMesh&, const word&); + + + //- Destructor + virtual ~singleComponentMixture(); + + + // Member Functions + + //- Return the instantiated type name + // Note: This defines the same name as pureMixture so that + // non-reacting and reacting solvers are compatable + static word typeName() + { + return "pureMixture<" + ThermoType::typeName() + '>'; + } + + //- Get the mixture for the given cell + const ThermoType& cellMixture(const label celli) const + { + return thermo_; + } + + //- Get the mixture for the given patch face + const ThermoType& patchFaceMixture + ( + const label patchi, + const label facei + ) const + { + return thermo_; + } + + //- Get the volumetric mixture for the given cell + const ThermoType& cellVolMixture + ( + const scalar p, + const scalar T, + const label celli + ) + { + return thermo_; + } + + //- Get the volumetric mixture for the given patch face + const ThermoType& patchFaceVolMixture + ( + const scalar p, + const scalar T, + const label patchi, + const label facei + ) const + { + return thermo_; + } + + //- Read dictionary + void read(const dictionary&); + + //- Return thermo based on index + inline const ThermoType& getLocalThermo(const label speciei) const + { + #ifdef FULLDEBUG + if (speciei != 0) + { + FatalErrorInFunction + << "Specie index must be zero for a single component " + << "mixture" << exit(FatalError); + } + #endif + return thermo_; + } +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository + #include "singleComponentMixture.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/thermophysicalModels/reactionThermo/mixtures/singleStepReactingMixture/singleStepReactingMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/singleStepReactingMixture/singleStepReactingMixture.H index 10119b24f71439f2b51fb0f615c3a304a66738ed..4e407785e917a726fecc74d86c9e11d968ed0b6c 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/singleStepReactingMixture/singleStepReactingMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/singleStepReactingMixture/singleStepReactingMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -135,6 +135,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "singleStepReactingMixture<" + ThermoType::typeName() + '>'; + } + //- Calculates the residual for all components void fresCorrect(); diff --git a/src/thermophysicalModels/reactionThermo/mixtures/veryInhomogeneousMixture/veryInhomogeneousMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/veryInhomogeneousMixture/veryInhomogeneousMixture.H index 5b81432aa949ab8282167a1058cc5b6a19031b1f..390f6390add740292fbe79413bad53784e6216de 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/veryInhomogeneousMixture/veryInhomogeneousMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/veryInhomogeneousMixture/veryInhomogeneousMixture.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -104,6 +104,12 @@ public: // Member functions + //- Return the instantiated type name + static word typeName() + { + return "veryInhomogeneousMixture<" + ThermoType::typeName() + '>'; + } + const dimensionedScalar& stoicRatio() const { return stoicRatio_; diff --git a/src/thermophysicalModels/reactionThermo/psiReactionThermo/psiReactionThermos.C b/src/thermophysicalModels/reactionThermo/psiReactionThermo/psiReactionThermos.C index 015c0118ed4ba95de8754148b61c27c596a92a01..0da95cd824a64b0e96125bbe163d8f7b0bab8930 100644 --- a/src/thermophysicalModels/reactionThermo/psiReactionThermo/psiReactionThermos.C +++ b/src/thermophysicalModels/reactionThermo/psiReactionThermo/psiReactionThermos.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -43,6 +43,7 @@ License #include "multiComponentMixture.H" #include "reactingMixture.H" #include "singleStepReactingMixture.H" +#include "singleComponentMixture.H" #include "thermoPhysicsTypes.H" @@ -55,7 +56,7 @@ namespace Foam // constTransport, hConstThermo -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -68,7 +69,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -81,7 +82,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -97,7 +98,7 @@ makeReactionThermo // sutherlandTransport, hConstThermo -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -110,7 +111,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -123,7 +124,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -139,7 +140,7 @@ makeReactionThermo // sutherlandTransport, janafThermo -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -152,7 +153,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -165,7 +166,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiReactionThermo, @@ -178,10 +179,11 @@ makeReactionThermo specie ); +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Multi-component thermo for sensible enthalpy -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -190,7 +192,7 @@ makeReactionMixtureThermo constGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -202,7 +204,7 @@ makeReactionMixtureThermo // Multi-component thermo for internal energy -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -211,7 +213,7 @@ makeReactionMixtureThermo constGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -221,9 +223,9 @@ makeReactionMixtureThermo ); -// Multi-component reaction thermo for sensible enthalpy +// Reaction thermo for sensible enthalpy -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -232,7 +234,7 @@ makeReactionMixtureThermo constGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -241,7 +243,10 @@ makeReactionMixtureThermo gasHThermoPhysics ); -makeReactionMixtureThermo + +// Single-step reaction thermo for sensible enthalpy + +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -251,9 +256,9 @@ makeReactionMixtureThermo ); -// Multi-component reaction thermo for internal energy +// Reaction thermo for internal energy -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -262,7 +267,7 @@ makeReactionMixtureThermo constGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -271,7 +276,10 @@ makeReactionMixtureThermo gasEThermoPhysics ); -makeReactionMixtureThermo + +// Single-step reaction thermo for internal energy + +makeReactionMixtureThermos ( psiThermo, psiReactionThermo, @@ -280,6 +288,44 @@ makeReactionMixtureThermo gasEThermoPhysics ); + +// Single-component thermo for sensible enthalpy + +makeReactionMixtureThermo +( + psiReactionThermo, + hePsiThermo, + singleComponentMixture, + constGasHThermoPhysics +); + +makeReactionMixtureThermo +( + psiReactionThermo, + hePsiThermo, + singleComponentMixture, + gasHThermoPhysics +); + + +// Single-component thermo for internal energy + +makeReactionMixtureThermo +( + psiReactionThermo, + hePsiThermo, + singleComponentMixture, + constGasEThermoPhysics +); + +makeReactionMixtureThermo +( + psiReactionThermo, + hePsiThermo, + singleComponentMixture, + gasEThermoPhysics +); + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C index 4e9173530df3d13e139ad40283b2cf1a668c5967..cc62659bb9d5cbd9afcc31ceaa70ee8703d16a3f 100644 --- a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C +++ b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C @@ -54,7 +54,7 @@ namespace Foam // * * * * * * * * * * * * * * * * h-hu-Thermos * * * * * * * * * * * * * * * // -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -67,7 +67,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -80,7 +80,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -93,7 +93,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -107,7 +107,7 @@ makeReactionThermo ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -120,7 +120,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -133,7 +133,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -146,7 +146,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -159,7 +159,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -173,7 +173,7 @@ makeReactionThermo ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -186,7 +186,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -199,7 +199,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, @@ -212,7 +212,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( psiThermo, psiuReactionThermo, diff --git a/src/thermophysicalModels/reactionThermo/rhoReactionThermo/rhoReactionThermos.C b/src/thermophysicalModels/reactionThermo/rhoReactionThermo/rhoReactionThermos.C index 0cd88be7c133d8c3d4768d25567345de9dab8aab..b2a27d01dd284a1291df8cde6d2c52e1944e6b0a 100644 --- a/src/thermophysicalModels/reactionThermo/rhoReactionThermo/rhoReactionThermos.C +++ b/src/thermophysicalModels/reactionThermo/rhoReactionThermo/rhoReactionThermos.C @@ -35,6 +35,10 @@ License #include "janafThermo.H" #include "sensibleEnthalpy.H" #include "thermo.H" +#include "rhoConst.H" +#include "perfectFluid.H" +#include "adiabaticPerfectFluid.H" +#include "Boussinesq.H" #include "constTransport.H" #include "sutherlandTransport.H" @@ -45,6 +49,7 @@ License #include "multiComponentMixture.H" #include "reactingMixture.H" #include "singleStepReactingMixture.H" +#include "singleComponentMixture.H" #include "thermoPhysicsTypes.H" @@ -55,7 +60,7 @@ namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -68,7 +73,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -81,7 +86,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -94,7 +99,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -107,7 +112,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -120,7 +125,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -134,7 +139,7 @@ makeReactionThermo ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -147,7 +152,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -160,7 +165,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -173,7 +178,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -186,7 +191,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -199,7 +204,7 @@ makeReactionThermo specie ); -makeReactionThermo +makeReactionThermos ( rhoThermo, rhoReactionThermo, @@ -212,10 +217,11 @@ makeReactionThermo specie ); +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Multi-component thermo for internal energy -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -224,7 +230,7 @@ makeReactionMixtureThermo constGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -233,7 +239,7 @@ makeReactionMixtureThermo gasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -242,7 +248,7 @@ makeReactionMixtureThermo constIncompressibleGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -251,7 +257,7 @@ makeReactionMixtureThermo incompressibleGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -260,7 +266,7 @@ makeReactionMixtureThermo icoPoly8EThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -269,9 +275,37 @@ makeReactionMixtureThermo icoPoly8TranspJanafEThermoPhysics ); -// Multi-component reaction thermo +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constFluidEThermoPhysics +); -makeReactionMixtureThermo +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constAdiabaticFluidEThermoPhysics +); + +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constEThermoPhysics +); + + +// Reaction thermo for internal energy + +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -280,7 +314,7 @@ makeReactionMixtureThermo constGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -289,7 +323,7 @@ makeReactionMixtureThermo gasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -298,7 +332,7 @@ makeReactionMixtureThermo constIncompressibleGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -307,7 +341,7 @@ makeReactionMixtureThermo incompressibleGasEThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -316,7 +350,10 @@ makeReactionMixtureThermo icoPoly8EThermoPhysics ); -makeReactionMixtureThermo + +// Single-step reaction thermo for internal energy + +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -326,9 +363,101 @@ makeReactionMixtureThermo ); -// Multi-component thermo for sensible enthalpy +// Single-component thermo for internal energy + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constGasEThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + gasEThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constIncompressibleGasEThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + incompressibleGasEThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + icoPoly8EThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constFluidEThermoPhysics +); makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constAdiabaticFluidEThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constEThermoPhysics +); + +makeReactionThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constTransport, + sensibleInternalEnergy, + hConstThermo, + Boussinesq, + specie +); + +makeReactionThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + sutherlandTransport, + sensibleInternalEnergy, + janafThermo, + Boussinesq, + specie +); + + + +// Multi-component thermo for sensible enthalpy + +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -337,7 +466,7 @@ makeReactionMixtureThermo constGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -346,7 +475,7 @@ makeReactionMixtureThermo gasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -355,7 +484,7 @@ makeReactionMixtureThermo constIncompressibleGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -364,7 +493,7 @@ makeReactionMixtureThermo incompressibleGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -373,7 +502,7 @@ makeReactionMixtureThermo icoPoly8HThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -382,9 +511,36 @@ makeReactionMixtureThermo icoPoly8TranspJanafHThermoPhysics ); -// Multi-component reaction thermo +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constFluidHThermoPhysics +); -makeReactionMixtureThermo +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constAdiabaticFluidHThermoPhysics +); + +makeReactionMixtureThermos +( + rhoThermo, + rhoReactionThermo, + heRhoThermo, + multiComponentMixture, + constHThermoPhysics +); + +// Reaction thermo for sensible enthalpy + +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -393,7 +549,7 @@ makeReactionMixtureThermo constGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -402,7 +558,7 @@ makeReactionMixtureThermo gasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -411,7 +567,7 @@ makeReactionMixtureThermo constIncompressibleGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -420,7 +576,7 @@ makeReactionMixtureThermo incompressibleGasHThermoPhysics ); -makeReactionMixtureThermo +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -429,7 +585,10 @@ makeReactionMixtureThermo icoPoly8HThermoPhysics ); -makeReactionMixtureThermo + +// Single-step reaction thermo for sensible enthalpy + +makeReactionMixtureThermos ( rhoThermo, rhoReactionThermo, @@ -439,6 +598,96 @@ makeReactionMixtureThermo ); +// Single-component thermo for sensible enthalpy + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constGasHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + gasHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constIncompressibleGasHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + incompressibleGasHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + icoPoly8HThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constFluidHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constAdiabaticFluidHThermoPhysics +); + +makeReactionMixtureThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constHThermoPhysics +); + +makeReactionThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + constTransport, + sensibleEnthalpy, + hConstThermo, + Boussinesq, + specie +); + +makeReactionThermo +( + rhoReactionThermo, + heRhoThermo, + singleComponentMixture, + sutherlandTransport, + sensibleEnthalpy, + janafThermo, + Boussinesq, + specie +); + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/thermophysicalModels/specie/include/thermoPhysicsTypes.H b/src/thermophysicalModels/specie/include/thermoPhysicsTypes.H index 29b692858f731da74c22c3503c2385442614430c..20b2ecd0772b68d940960bc6742da4559c9a9100 100644 --- a/src/thermophysicalModels/specie/include/thermoPhysicsTypes.H +++ b/src/thermophysicalModels/specie/include/thermoPhysicsTypes.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\/ M anipulation | Copyright (C) 2018 OpenCFD Ltd. ------------------------------------------------------------------------------- License @@ -35,6 +35,9 @@ Description #include "specie.H" #include "perfectGas.H" #include "incompressiblePerfectGas.H" +#include "perfectFluid.H" +#include "adiabaticPerfectFluid.H" +#include "rhoConst.H" #include "hConstThermo.H" #include "janafThermo.H" @@ -134,6 +137,48 @@ namespace Foam 8 > icoPoly8TranspJanafHThermoPhysics; + typedef + constTransport + < + species::thermo + < + hConstThermo + < + perfectFluid<specie> + >, + sensibleEnthalpy + > + > + constFluidHThermoPhysics; + + typedef + constTransport + < + species::thermo + < + hConstThermo + < + adiabaticPerfectFluid<specie> + >, + sensibleEnthalpy + > + > + constAdiabaticFluidHThermoPhysics; + + typedef + constTransport + < + species::thermo + < + hConstThermo + < + rhoConst<specie> + >, + sensibleEnthalpy + > + > + constHThermoPhysics; + // thermo physics types based on sensibleInternalEnergy typedef @@ -216,6 +261,48 @@ namespace Foam >, 8 > icoPoly8TranspJanafEThermoPhysics; + + typedef + constTransport + < + species::thermo + < + hConstThermo + < + perfectFluid<specie> + >, + sensibleInternalEnergy + > + > + constFluidEThermoPhysics; + + typedef + constTransport + < + species::thermo + < + hConstThermo + < + adiabaticPerfectFluid<specie> + >, + sensibleInternalEnergy + > + > + constAdiabaticFluidEThermoPhysics; + + typedef + constTransport + < + species::thermo + < + hConstThermo + < + rhoConst<specie> + >, + sensibleInternalEnergy + > + > + constEThermoPhysics; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //