diff --git a/etc/codeTemplates/dynamicCode/psiuReactionThermo b/etc/codeTemplates/dynamicCode/psiuReactionThermo index 6c4ba1f358..cdd3c47225 100644 --- a/etc/codeTemplates/dynamicCode/psiuReactionThermo +++ b/etc/codeTemplates/dynamicCode/psiuReactionThermo @@ -44,7 +44,6 @@ transport logPolynomial polynomial sutherland - tabulated ); thermo @@ -70,18 +69,17 @@ codeOptions #{ EXE_INC = \ -I$(LIB_SRC)/transportModels/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude #}; codeLibs #{ LIB_LIBS = \ - -ltransportModels \ - -lspecie \ -lfluidThermophysicalModels \ + -lspecie \ -lfiniteVolume #}; diff --git a/etc/codeTemplates/dynamicCode/psiuReactionThermo.C b/etc/codeTemplates/dynamicCode/psiuReactionThermo.C deleted file mode 120000 index 3bbd8a9edc..0000000000 --- a/etc/codeTemplates/dynamicCode/psiuReactionThermo.C +++ /dev/null @@ -1 +0,0 @@ -fluidThermo.C \ No newline at end of file diff --git a/etc/codeTemplates/dynamicCode/psiuReactionThermo.C b/etc/codeTemplates/dynamicCode/psiuReactionThermo.C new file mode 100644 index 0000000000..af657745ed --- /dev/null +++ b/etc/codeTemplates/dynamicCode/psiuReactionThermo.C @@ -0,0 +1,90 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Copyright (C) YEAR 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 . + +\*---------------------------------------------------------------------------*/ + +#include "forThermo.H" +#include "makeReactionThermo.H" + +#include "specie.H" + +#include "thermo.H" + +// EoS +#include "${equationOfState}.H" + +// Thermo +#include "${thermo}Thermo.H" +#include "${energy}.H" + +// Transport +#include "${transport}Transport.H" + +// psi/rho +#include "${baseType}.H" +#include "${type}.H" + +// Mixture +#include "${mixture}.H" + + +// * * * * * * * * * * * * * * * Global Functions * * * * * * * * * * * * * // + +extern "C" +{ + // dynamicCode: + // SHA1 = ${SHA1sum} + // + // Unique function name that can be checked if the correct library version + // has been loaded + void ${typeName}_${SHA1sum}(bool load) + { + if (load) + { + // code that can be explicitly executed after loading + } + else + { + // code that can be explicitly executed before unloading + } + } +} + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + forThermo + ( + ${transport}Transport, + ${energy}, + ${thermo}Thermo, + ${equationOfState}, + specie, + makePsiuReactionThermos, + ${mixture} + ); +} + +// ************************************************************************* // diff --git a/src/thermophysicalModels/reactionThermo/makeReactionThermo.H b/src/thermophysicalModels/reactionThermo/makeReactionThermo.H index 46ae107b5c..d2d555b29b 100644 --- a/src/thermophysicalModels/reactionThermo/makeReactionThermo.H +++ b/src/thermophysicalModels/reactionThermo/makeReactionThermo.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -81,6 +81,22 @@ License addReactionThermo(BaseReactionThermo, CThermo, Mixture, ThermoPhys) +#define makePsiuReactionThermos(Mixture, ThermoPhys) \ + \ + defineReactionThermo \ + ( \ + psiuReactionThermo, \ + heheuPsiThermo, \ + Mixture, \ + ThermoPhys \ + ); \ + \ + addThermo(basicThermo, heheuPsiThermo, Mixture, ThermoPhys); \ + addThermo(fluidThermo, heheuPsiThermo, Mixture, ThermoPhys); \ + addThermo(psiThermo, heheuPsiThermo, Mixture, ThermoPhys); \ + addThermo(psiuReactionThermo, heheuPsiThermo, Mixture, ThermoPhys) + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #endif diff --git a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C index a3c8364aa8..128832ff75 100644 --- a/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C +++ b/src/thermophysicalModels/reactionThermo/psiuReactionThermo/psiuReactionThermos.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -37,23 +37,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makePsiuReactionThermos(Mixture, ThermoPhys) \ - \ - defineReactionThermo \ - ( \ - psiuReactionThermo, \ - heheuPsiThermo, \ - Mixture, \ - ThermoPhys \ - ); \ - \ - addThermo(basicThermo, heheuPsiThermo, Mixture, ThermoPhys); \ - addThermo(fluidThermo, heheuPsiThermo, Mixture, ThermoPhys); \ - addThermo(psiThermo, heheuPsiThermo, Mixture, ThermoPhys); \ - addThermo(psiuReactionThermo, heheuPsiThermo, Mixture, ThermoPhys) - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - namespace Foam { forAbsoluteGases(makePsiuReactionThermos, egrMixture);