From 92d2bc1b76c808dfba08387a3e72d63f07b0516c Mon Sep 17 00:00:00 2001 From: sergio Date: Wed, 31 Oct 2012 17:13:03 +0000 Subject: [PATCH] ENH: Aligning solid thermo mixing with gas mixing and solid reaction --- src/regionModels/pyrolysisModels/Make/options | 4 +- .../thermoBaffleModels/Make/options | 1 - src/thermophysicalModels/Allwmake | 3 +- .../basic/mixtures/pureMixture/pureMixture.H | 21 + .../greyMeanSolidAbsorptionEmission.C | 8 +- .../greyMeanSolidAbsorptionEmission.H | 2 +- .../reactionThermo/Make/options | 3 +- .../chemistryReader/makeChemistryReaders.C | 5 + .../chemkinReader/chemkinReader.C | 17 +- .../multiComponentMixture.C | 78 +- .../multiComponentMixture.H | 19 + .../solidChemistryModel/Make/options | 3 +- .../ODESolidChemistryModel.C | 70 +- .../ODESolidChemistryModel.H | 12 +- .../ODESolidChemistryModelI.H | 2 +- .../makeSolidChemistrySolvers.C | 1 + .../solidSpecie/Make/files | 2 +- .../solidSpecie/Make/options | 3 + .../include/solidThermoPhysicsTypes.H | 6 +- .../IrreversibleSolidReaction.C | 92 - .../Reactions/solidReaction/solidReaction.C | 323 +- .../Reactions/solidReaction/solidReaction.H | 166 +- .../Reactions/solidReaction/solidReactionI.H | 29 +- .../solidArrheniusReactionRate.H | 18 +- .../solidArrheniusReactionRateI.H | 21 + .../reaction/reactions/makeSolidReaction.H | 40 +- .../reaction/reactions/makeSolidReactions.C | 9 +- .../solidSpecie/solidSpecie.C} | 56 +- .../solidSpecie.H} | 121 +- .../solidSpecie/solidSpecie/solidSpecieI.H | 148 + .../const/constAnIsoSolidTransport.H | 50 +- .../const/constAnIsoSolidTransportI.H | 92 +- .../transport/const/constIsoSolidTransport.C | 18 +- .../transport/const/constIsoSolidTransport.H | 17 +- .../transport/const/constIsoSolidTransportI.H | 39 +- .../exponential/exponentialSolidTransport.H | 17 +- .../exponential/exponentialSolidTransportI.H | 39 +- .../solidThermo/Make/files | 1 - .../solidThermo/Make/options | 6 +- .../basicSolidMixture/basicSolidMixture.C | 105 - .../basicSolidMixture/basicSolidMixture.H | 214 - .../basicSolidMixture/basicSolidMixtureI.H | 76 - .../basicSolidMixture/basicSolidMixtures.C | 108 - .../multiComponentSolidMixture.C | 363 - .../multiComponentSolidMixture.H | 233 - .../pureSolidMixture/pureSolidMixture.C | 68 - .../pureSolidMixture/pureSolidMixture.H | 134 - .../reactingSolidMixture.H | 103 - .../makeReactingSolidThermo.H | 127 + .../solidReactionThermo/solidReactionThermo.H | 7 +- .../solidReactionThermos.C | 28 +- .../solidThermo/solidThermo/heSolidThermo.C | 15 +- .../solidThermo/solidThermo/makeSolidThermo.H | 56 +- .../solidThermo/solidThermo/solidThermo.H | 1 - .../solidThermo/solidThermo/solidThermos.C | 31 +- .../IrreversibleReaction.C | 78 +- .../IrreversibleReaction.H | 39 +- .../NonEquilibriumReversibleReaction.C | 131 +- .../NonEquilibriumReversibleReaction.H | 27 +- .../reaction/Reactions/Reaction/Reaction.C | 199 +- .../reaction/Reactions/Reaction/Reaction.H | 25 +- .../reaction/Reactions/Reaction/ReactionI.H | 3 + .../ReversibleReaction/ReversibleReaction.C | 108 +- .../ReversibleReaction/ReversibleReaction.H | 50 +- .../specie/reaction/reactions/makeReaction.H | 2 +- .../specie/specie/specie.H | 10 +- .../les/oppositeBurningPanels/0/panelRegion/T | 2 +- .../0/panelRegion/{Ychar => char} | 4 +- .../0/panelRegion/{Yv => v} | 2 +- .../constant/panelRegion/chemistryProperties | 37 +- .../constant/panelRegion/polyMesh/boundary | 6887 - .../polyMesh/cellToPatchFaceAddressing | 34105 --- .../polyMesh/faceToPatchEdgeAddressing | 177241 --------------- .../polyMesh/faceToPatchFaceAddressing | 177241 --------------- .../constant/panelRegion/polyMesh/faceZones | 21 - .../constant/panelRegion/polyMesh/faces | 177240 -------------- .../constant/panelRegion/polyMesh/neighbour | 27289 --- .../constant/panelRegion/polyMesh/owner | 177241 --------------- .../polyMesh/pointToPatchPointAddressing | 42925 ---- .../constant/panelRegion/polyMesh/pointZones | 21 - .../constant/panelRegion/polyMesh/points | 42924 ---- .../constant/panelRegion/reactions | 23 + .../{polyMesh/cellZones => thermo.solid} | 51 +- .../panelRegion/thermophysicalProperties | 59 +- .../multiRegionHeater/0/{Ychar => char} | 0 .../multiRegionHeater/0/{Ypmma => pmma} | 0 .../constant/heater/thermophysicalProperties | 20 +- .../leftSolid/thermophysicalProperties | 18 +- .../rightSolid/thermophysicalProperties | 18 +- .../system/heater/changeDictionaryDict | 4 +- .../system/leftSolid/changeDictionaryDict | 4 +- .../system/rightSolid/changeDictionaryDict | 4 +- 92 files changed, 1725 insertions(+), 865559 deletions(-) delete mode 100644 src/thermophysicalModels/solidSpecie/reaction/Reactions/IrreversibleSolidReaction/IrreversibleSolidReaction.C rename src/thermophysicalModels/{solidThermo/mixtures/reactingSolidMixture/reactingSolidMixture.C => solidSpecie/solidSpecie/solidSpecie.C} (62%) rename src/thermophysicalModels/solidSpecie/{reaction/Reactions/IrreversibleSolidReaction/IrreversibleSolidReaction.H => solidSpecie/solidSpecie.H} (50%) create mode 100644 src/thermophysicalModels/solidSpecie/solidSpecie/solidSpecieI.H delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/basicSolidMixture/basicSolidMixture.C delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/basicSolidMixture/basicSolidMixture.H delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/basicSolidMixture/basicSolidMixtureI.H delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/basicSolidMixture/basicSolidMixtures.C delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/multiComponentSolidMixture/multiComponentSolidMixture.C delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/multiComponentSolidMixture/multiComponentSolidMixture.H delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/pureSolidMixture/pureSolidMixture.C delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/pureSolidMixture/pureSolidMixture.H delete mode 100644 src/thermophysicalModels/solidThermo/mixtures/reactingSolidMixture/reactingSolidMixture.H create mode 100644 src/thermophysicalModels/solidThermo/solidReactionThermo/makeReactingSolidThermo.H rename tutorials/combustion/fireFoam/les/oppositeBurningPanels/0/panelRegion/{Ychar => char} (95%) rename tutorials/combustion/fireFoam/les/oppositeBurningPanels/0/panelRegion/{Yv => v} (98%) delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/boundary delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/cellToPatchFaceAddressing delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/faceToPatchEdgeAddressing delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/faceToPatchFaceAddressing delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/faceZones delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/faces delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/neighbour delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/owner delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/pointToPatchPointAddressing delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/pointZones delete mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/polyMesh/points create mode 100644 tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/reactions rename tutorials/combustion/fireFoam/les/oppositeBurningPanels/constant/panelRegion/{polyMesh/cellZones => thermo.solid} (55%) rename tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/{Ychar => char} (100%) rename tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/{Ypmma => pmma} (100%) diff --git a/src/regionModels/pyrolysisModels/Make/options b/src/regionModels/pyrolysisModels/Make/options index b922d0f573..e80fe3d1a2 100644 --- a/src/regionModels/pyrolysisModels/Make/options +++ b/src/regionModels/pyrolysisModels/Make/options @@ -7,6 +7,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/solidThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/solidChemistryModel/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel/lnInclude \ @@ -28,4 +29,5 @@ LIB_LIBS = \ -lcompressibleLESModels \ -lLESdeltas \ -lregionModels \ - -lradiationModels + -lradiationModels \ + -lreactionThermophysicalModels diff --git a/src/regionModels/thermoBaffleModels/Make/options b/src/regionModels/thermoBaffleModels/Make/options index 7e40068412..a36d8a5bb7 100644 --- a/src/regionModels/thermoBaffleModels/Make/options +++ b/src/regionModels/thermoBaffleModels/Make/options @@ -1,7 +1,6 @@ EXE_INC = \ -I$(LIB_SRC)/regionModels/regionModel/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/solidThermo/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solid/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \ diff --git a/src/thermophysicalModels/Allwmake b/src/thermophysicalModels/Allwmake index 72255b9439..025bc2156f 100755 --- a/src/thermophysicalModels/Allwmake +++ b/src/thermophysicalModels/Allwmake @@ -4,6 +4,7 @@ makeType=${1:-libso} set -x wmake $makeType specie +wmake $makeType solidSpecie wmake $makeType thermophysicalFunctions ./properties/Allwmake $* @@ -15,7 +16,7 @@ wmake $makeType barotropicCompressibilityModel wmake $makeType thermalPorousZone wmake $makeType SLGThermo -wmake $makeType solidSpecie + wmake $makeType solidThermo wmake $makeType solidChemistryModel diff --git a/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H b/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H index b2401e1123..52978db2e5 100644 --- a/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H +++ b/src/thermophysicalModels/basic/mixtures/pureMixture/pureMixture.H @@ -87,6 +87,27 @@ public: return mixture_; } + const ThermoType& cellVolMixture + ( + const scalar, + const scalar, + const label + ) const + { + return mixture_; + } + + const ThermoType& patchFaceVolMixture + ( + const scalar, + const scalar, + const label, + const label + ) const + { + return mixture_; + } + //- Read dictionary void read(const dictionary&); }; diff --git a/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C b/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C index 1d2c76d036..5121436412 100644 --- a/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C +++ b/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.C @@ -27,7 +27,7 @@ License #include "addToRunTimeSelectionTable.H" #include "unitConversion.H" #include "zeroGradientFvPatchFields.H" -#include "basicSolidMixture.H" + // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -71,7 +71,7 @@ greyMeanSolidAbsorptionEmission::X(const word specie) const } } const scalarField& Yj = mixture_.Y(specie); - const label mySpecieI = mixture_.components()[specie]; + const label mySpecieI = mixture_.species()[specie]; forAll(Xj, iCell) { Xj[iCell] = Yj[iCell]/mixture_.rho(mySpecieI, p[iCell], T[iCell]); @@ -93,10 +93,10 @@ greyMeanSolidAbsorptionEmission coeffsDict_((dict.subDict(typeName + "Coeffs"))), thermo_(mesh.lookupObject("thermophysicalProperties")), speciesNames_(0), - mixture_(dynamic_cast(thermo_)), + mixture_(dynamic_cast(thermo_)), solidData_(mixture_.Y().size()) { - if (!isA(thermo_)) + if (!isA(thermo_)) { FatalErrorIn ( diff --git a/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.H b/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.H index 3eed717f21..6e965c98e8 100644 --- a/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.H +++ b/src/thermophysicalModels/radiationModels/submodels/absorptionEmissionModel/greyMeanSolidAbsorptionEmission/greyMeanSolidAbsorptionEmission.H @@ -90,7 +90,7 @@ private: HashTable