diff --git a/applications/solvers/lagrangian/DPMFoam/DPMTurbulenceModels/DPMTurbulenceModels.C b/applications/solvers/lagrangian/DPMFoam/DPMTurbulenceModels/DPMTurbulenceModels.C index 3ade3bbfdd..66b480df0e 100644 --- a/applications/solvers/lagrangian/DPMFoam/DPMTurbulenceModels/DPMTurbulenceModels.C +++ b/applications/solvers/lagrangian/DPMFoam/DPMTurbulenceModels/DPMTurbulenceModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013-2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -32,6 +32,17 @@ License #include "turbulentTransportModel.H" #include "LESModel.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + volScalarField, + geometricOneField, + incompressibleTurbulenceModel, + PhaseIncompressibleTurbulenceModel, + singlePhaseTransportModel +); + makeBaseTurbulenceModel ( volScalarField, diff --git a/applications/solvers/multiphase/driftFluxFoam/compressibleTurbulenceModels.C b/applications/solvers/multiphase/driftFluxFoam/compressibleTurbulenceModels.C index b636de0f95..4cb722f5f4 100644 --- a/applications/solvers/multiphase/driftFluxFoam/compressibleTurbulenceModels.C +++ b/applications/solvers/multiphase/driftFluxFoam/compressibleTurbulenceModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2014 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -32,6 +32,17 @@ License #include "RASModel.H" #include "LESModel.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + geometricOneField, + volScalarField, + compressibleTurbulenceModel, + CompressibleTurbulenceModel, + incompressibleTwoPhaseInteractingMixture +); + makeBaseTurbulenceModel ( geometricOneField, diff --git a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C index 081e5c893a..ba7af6a523 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C +++ b/applications/solvers/multiphase/reactingEulerFoam/phaseSystems/phaseModel/MultiComponentPhaseModel/MultiComponentPhaseModel.C @@ -135,17 +135,19 @@ Foam::MultiComponentPhaseModel::YiEqn ( (inertIndex_ != -1) && ( - Yi.name() - == IOobject::groupName ( - this->thermo_->composition().species()[inertIndex_], - this->name() + Yi.name() + == IOobject::groupName + ( + this->thermo_->composition().species()[inertIndex_], + this->name() + ) ) - ) - || ( - !this->thermo_->composition().active - ( - this->thermo_->composition().species()[Yi.member()] + || ( + !this->thermo_->composition().active + ( + this->thermo_->composition().species()[Yi.member()] + ) ) ) ) diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseCompressibleTurbulenceModels/multiphaseCompressibleTurbulenceModels.C b/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseCompressibleTurbulenceModels/multiphaseCompressibleTurbulenceModels.C index d927601ba6..083c2567f3 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseCompressibleTurbulenceModels/multiphaseCompressibleTurbulenceModels.C +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam/multiphaseCompressibleTurbulenceModels/multiphaseCompressibleTurbulenceModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -31,6 +31,18 @@ License #include "RASModel.H" #include "LESModel.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + volScalarField, + volScalarField, + compressibleTurbulenceModel, + PhaseCompressibleTurbulenceModel, + ThermalDiffusivity, + phaseModel +); + makeBaseTurbulenceModel ( volScalarField, diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C index 7b534db6d2..bd04977f2b 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -31,6 +31,18 @@ License #include "RASModel.H" #include "LESModel.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + volScalarField, + volScalarField, + compressibleTurbulenceModel, + PhaseCompressibleTurbulenceModel, + ThermalDiffusivity, + phaseModel +); + makeBaseTurbulenceModel ( volScalarField, diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C index eb0a070044..c60dea0f77 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phaseCompressibleTurbulenceModels.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -36,6 +36,18 @@ License #include "RASModel.H" #include "LESModel.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + volScalarField, + volScalarField, + compressibleTurbulenceModel, + PhaseCompressibleTurbulenceModel, + ThermalDiffusivity, + phaseModel +); + makeBaseTurbulenceModel ( volScalarField, diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H index 7213aa5be5..da2dd7188a 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H @@ -25,6 +25,23 @@ License #include "EddyDiffusivity.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#define makeTurbulenceModelTypes( \ + Alpha, Rho, baseModel, BaseModel, TDModel, Transport) \ + \ + namespace Foam \ + { \ + typedef TDModel> \ + Transport##BaseModel; \ + typedef laminar Laminar##Transport##BaseModel; \ + typedef RASModel> \ + RAS##Transport##BaseModel; \ + typedef LESModel> \ + LES##Transport##BaseModel; \ + } + + #define makeBaseTurbulenceModel( \ Alpha, Rho, baseModel, BaseModel, TDModel, Transport) \ \ diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C index 01fbcbd42b..0bf0cf00e9 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C @@ -23,18 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "CompressibleTurbulenceModel.H" -#include "compressibleTransportModel.H" -#include "fluidThermo.H" -#include "addToRunTimeSelectionTable.H" -#include "makeTurbulenceModel.H" - -#include "ThermalDiffusivity.H" -#include "EddyDiffusivity.H" - -#include "laminar.H" -#include "RASModel.H" -#include "LESModel.H" +#include "turbulentFluidThermoModels.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -48,15 +37,6 @@ makeBaseTurbulenceModel fluidThermo ); -#define makeRASModel(Type) \ - makeTemplatedTurbulenceModel \ - (fluidThermoCompressibleTurbulenceModel, RAS, Type) - -#define makeLESModel(Type) \ - makeTemplatedTurbulenceModel \ - (fluidThermoCompressibleTurbulenceModel, LES, Type) - - // -------------------------------------------------------------------------- // // RAS models // -------------------------------------------------------------------------- // diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.H new file mode 100644 index 0000000000..67ba5cf4ea --- /dev/null +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.H @@ -0,0 +1,60 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2016 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 "CompressibleTurbulenceModel.H" +#include "compressibleTransportModel.H" +#include "fluidThermo.H" +#include "addToRunTimeSelectionTable.H" +#include "makeTurbulenceModel.H" + +#include "ThermalDiffusivity.H" +#include "EddyDiffusivity.H" + +#include "laminar.H" +#include "RASModel.H" +#include "LESModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + geometricOneField, + volScalarField, + compressibleTurbulenceModel, + CompressibleTurbulenceModel, + ThermalDiffusivity, + fluidThermo +); + +#define makeRASModel(Type) \ + makeTemplatedTurbulenceModel \ + (fluidThermoCompressibleTurbulenceModel, RAS, Type) + +#define makeLESModel(Type) \ + makeTemplatedTurbulenceModel \ + (fluidThermoCompressibleTurbulenceModel, LES, Type) + + +// ************************************************************************* // diff --git a/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.C b/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.C index 459a08fb12..31d3cfc901 100644 --- a/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.C +++ b/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.C @@ -23,14 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "IncompressibleTurbulenceModel.H" -#include "incompressible/transportModel/transportModel.H" -#include "addToRunTimeSelectionTable.H" -#include "makeTurbulenceModel.H" - -#include "laminar.H" -#include "RASModel.H" -#include "LESModel.H" +#include "turbulentTransportModels.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -43,15 +36,6 @@ makeBaseTurbulenceModel transportModel ); -#define makeRASModel(Type) \ - makeTemplatedTurbulenceModel \ - (transportModelIncompressibleTurbulenceModel, RAS, Type) - -#define makeLESModel(Type) \ - makeTemplatedTurbulenceModel \ - (transportModelIncompressibleTurbulenceModel, LES, Type) - - // -------------------------------------------------------------------------- // // RAS models // -------------------------------------------------------------------------- // diff --git a/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.H b/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.H new file mode 100644 index 0000000000..c86c93ab7e --- /dev/null +++ b/src/TurbulenceModels/incompressible/turbulentTransportModels/turbulentTransportModels.H @@ -0,0 +1,55 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2016 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 "IncompressibleTurbulenceModel.H" +#include "incompressible/transportModel/transportModel.H" +#include "addToRunTimeSelectionTable.H" +#include "makeTurbulenceModel.H" + +#include "laminar.H" +#include "RASModel.H" +#include "LESModel.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +makeTurbulenceModelTypes +( + geometricOneField, + geometricOneField, + incompressibleTurbulenceModel, + IncompressibleTurbulenceModel, + transportModel +); + +#define makeRASModel(Type) \ + makeTemplatedTurbulenceModel \ + (transportModelIncompressibleTurbulenceModel, RAS, Type) + +#define makeLESModel(Type) \ + makeTemplatedTurbulenceModel \ + (transportModelIncompressibleTurbulenceModel, LES, Type) + + +// ************************************************************************* // diff --git a/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H b/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H index 6088a71aff..1b226749e8 100644 --- a/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H +++ b/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013-2015 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2016 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,6 +23,17 @@ License \*---------------------------------------------------------------------------*/ +#define makeTurbulenceModelTypes(Alpha, Rho, baseModel, BaseModel, Transport) \ + \ + namespace Foam \ + { \ + typedef BaseModel Transport##BaseModel; \ + typedef laminar Laminar##Transport##BaseModel; \ + typedef RASModel RAS##Transport##BaseModel; \ + typedef LESModel LES##Transport##BaseModel; \ + } + + #define makeBaseTurbulenceModel(Alpha, Rho, baseModel, BaseModel, Transport) \ \ namespace Foam \ @@ -41,10 +52,6 @@ License dictionary \ ); \ \ - typedef BaseModel Transport##BaseModel; \ - \ - \ - typedef laminar Laminar##Transport##BaseModel; \ \ defineNamedTemplateTypeNameAndDebug(Laminar##Transport##BaseModel, 0); \ \ @@ -56,8 +63,6 @@ License ); \ \ \ - typedef RASModel RAS##Transport##BaseModel; \ - \ defineNamedTemplateTypeNameAndDebug(RAS##Transport##BaseModel, 0); \ \ defineTemplateRunTimeSelectionTable \ @@ -71,8 +76,6 @@ License ); \ \ \ - typedef LESModel LES##Transport##BaseModel; \ - \ defineNamedTemplateTypeNameAndDebug(LES##Transport##BaseModel, 0); \ \ defineTemplateRunTimeSelectionTable \