From 4221e43dfc78f293118e12295fcd97a879ae296b Mon Sep 17 00:00:00 2001 From: Will Bainbridge Date: Thu, 24 Jan 2019 11:44:09 +0000 Subject: [PATCH] combustion: Removed Qdot field from solvers The Qdot field has been removed from all reacting solvers, in favour of computing on the fly whenever it is needed. It can still be generated for post-processing purposes by means of the Qdot function object. This change reduces code duplication and storage for all modified solvers. The Qdot function object has been applied to a number of tutorials in order to retain the existing output. A fix to Qdot has also been applied for multi-phase cases. --- .../solvers/combustion/fireFoam/YEEqn.H | 3 +-- .../solvers/combustion/fireFoam/createFields.H | 14 -------------- .../solvers/combustion/reactingFoam/EEqn.H | 2 +- .../solvers/combustion/reactingFoam/YEqn.H | 1 - .../combustion/reactingFoam/createFields.H | 14 -------------- .../rhoReactingBuoyantFoam/createFields.H | 14 -------------- .../reactingFoam/rhoReactingFoam/createFields.H | 14 -------------- .../combustion/reactingFoam/setRDeltaT.H | 4 ++-- .../solvers/lagrangian/coalChemistryFoam/EEqn.H | 2 +- .../solvers/lagrangian/coalChemistryFoam/YEqn.H | 1 - .../lagrangian/coalChemistryFoam/createFields.H | 14 -------------- .../lagrangian/coalChemistryFoam/setRDeltaT.H | 4 ++-- .../lagrangian/reactingParcelFoam/EEqn.H | 2 +- .../lagrangian/reactingParcelFoam/YEqn.H | 1 - .../reactingParcelFoam/createFields.H | 14 -------------- .../lagrangian/reactingParcelFoam/setRDeltaT.H | 4 ++-- .../simpleReactingParcelFoam/EEqn.H | 2 +- .../simpleReactingParcelFoam/YEqn.H | 1 - .../simpleReactingParcelFoam/createFields.H | 14 -------------- .../solvers/lagrangian/sprayFoam/EEqn.H | 2 +- .../solvers/lagrangian/sprayFoam/YEqn.H | 1 - .../solvers/lagrangian/sprayFoam/createFields.H | 14 -------------- .../sprayFoam/engineFoam/engineFoam.C | 7 +------ .../solvers/lagrangian/sprayFoam/sprayFoam.C | 7 +------ .../functionObjects/Qdot/Qdot.C | 2 +- .../counterFlowFlame2D/system/controlDict | 5 +++++ .../counterFlowFlame2DLTS/system/controlDict | 6 ++++++ .../system/controlDict | 6 ++++++ .../counterFlowFlame2D_GRI/system/controlDict | 5 +++++ .../system/controlDict | 5 +++++ .../sprayFoam/aachenBomb/system/controlDict | 5 +++++ .../bubbleColumnEvaporatingReacting/system/Qdot | 17 +++++++++++++++++ .../system/controlDict | 5 +++++ 33 files changed, 69 insertions(+), 143 deletions(-) create mode 100644 tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/Qdot diff --git a/applications/solvers/combustion/fireFoam/YEEqn.H b/applications/solvers/combustion/fireFoam/YEEqn.H index 7699411c0a..e4a86200ee 100644 --- a/applications/solvers/combustion/fireFoam/YEEqn.H +++ b/applications/solvers/combustion/fireFoam/YEEqn.H @@ -11,7 +11,6 @@ tmp> mvConvection { radiation->correct(); combustion->correct(); - Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) @@ -66,7 +65,7 @@ tmp> mvConvection ) - fvm::laplacian(turbulence->alphaEff(), he) == - Qdot + combustion->Qdot() + radiation->Sh(thermo, he) + parcels.Sh(he) + surfaceFilm.Sh() diff --git a/applications/solvers/combustion/fireFoam/createFields.H b/applications/solvers/combustion/fireFoam/createFields.H index dff9693969..374785b899 100644 --- a/applications/solvers/combustion/fireFoam/createFields.H +++ b/applications/solvers/combustion/fireFoam/createFields.H @@ -124,20 +124,6 @@ Switch solvePyrolysisRegion additionalControlsDict.lookupOrDefault("solvePyrolysisRegion", true) ); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - Info<< "Creating field dpdt\n" << endl; volScalarField dpdt diff --git a/applications/solvers/combustion/reactingFoam/EEqn.H b/applications/solvers/combustion/reactingFoam/EEqn.H index f92598bbed..c5e01eb4e8 100644 --- a/applications/solvers/combustion/reactingFoam/EEqn.H +++ b/applications/solvers/combustion/reactingFoam/EEqn.H @@ -17,7 +17,7 @@ ) - fvm::laplacian(turbulence->alphaEff(), he) == - Qdot + reaction->Qdot() + fvOptions(rho, he) ); diff --git a/applications/solvers/combustion/reactingFoam/YEqn.H b/applications/solvers/combustion/reactingFoam/YEqn.H index 81b6b5c413..22a06b3cad 100644 --- a/applications/solvers/combustion/reactingFoam/YEqn.H +++ b/applications/solvers/combustion/reactingFoam/YEqn.H @@ -11,7 +11,6 @@ tmp> mvConvection { reaction->correct(); - Qdot = reaction->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) diff --git a/applications/solvers/combustion/reactingFoam/createFields.H b/applications/solvers/combustion/reactingFoam/createFields.H index d28460ff8a..82bed57147 100644 --- a/applications/solvers/combustion/reactingFoam/createFields.H +++ b/applications/solvers/combustion/reactingFoam/createFields.H @@ -92,19 +92,5 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createFvOptions.H" diff --git a/applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam/createFields.H b/applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam/createFields.H index 9db3cc2fd2..0a4284e82c 100644 --- a/applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam/createFields.H +++ b/applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam/createFields.H @@ -114,19 +114,5 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createFvOptions.H" diff --git a/applications/solvers/combustion/reactingFoam/rhoReactingFoam/createFields.H b/applications/solvers/combustion/reactingFoam/rhoReactingFoam/createFields.H index d0a9775837..f5e64b2d66 100644 --- a/applications/solvers/combustion/reactingFoam/rhoReactingFoam/createFields.H +++ b/applications/solvers/combustion/reactingFoam/rhoReactingFoam/createFields.H @@ -96,19 +96,5 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createFvOptions.H" diff --git a/applications/solvers/combustion/reactingFoam/setRDeltaT.H b/applications/solvers/combustion/reactingFoam/setRDeltaT.H index e546e919c5..090b885416 100644 --- a/applications/solvers/combustion/reactingFoam/setRDeltaT.H +++ b/applications/solvers/combustion/reactingFoam/setRDeltaT.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2019 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -80,7 +80,7 @@ License { volScalarField::Internal rDeltaTT ( - mag(Qdot)/(alphaTemp*rho*thermo.Cp()*T) + mag(reaction->Qdot())/(alphaTemp*rho*thermo.Cp()*T) ); Info<< " Temperature = " diff --git a/applications/solvers/lagrangian/coalChemistryFoam/EEqn.H b/applications/solvers/lagrangian/coalChemistryFoam/EEqn.H index 6f1ad9041b..31da75ccab 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/EEqn.H +++ b/applications/solvers/lagrangian/coalChemistryFoam/EEqn.H @@ -18,7 +18,7 @@ - fvm::laplacian(turbulence->alphaEff(), he) == rho*(U&g) - + Qdot + + combustion->Qdot() + coalParcels.Sh(he) + limestoneParcels.Sh(he) + radiation->Sh(thermo, he) diff --git a/applications/solvers/lagrangian/coalChemistryFoam/YEqn.H b/applications/solvers/lagrangian/coalChemistryFoam/YEqn.H index 354badc283..f1b2901c8f 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/YEqn.H +++ b/applications/solvers/lagrangian/coalChemistryFoam/YEqn.H @@ -12,7 +12,6 @@ tmp> mvConvection { combustion->correct(); - Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) diff --git a/applications/solvers/lagrangian/coalChemistryFoam/createFields.H b/applications/solvers/lagrangian/coalChemistryFoam/createFields.H index ded161c1ad..40c0dc8279 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/createFields.H +++ b/applications/solvers/lagrangian/coalChemistryFoam/createFields.H @@ -129,20 +129,6 @@ volScalarField dpdt Info<< "Creating field kinetic energy K\n" << endl; volScalarField K("K", 0.5*magSqr(U)); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createClouds.H" #include "createRadiationModel.H" diff --git a/applications/solvers/lagrangian/coalChemistryFoam/setRDeltaT.H b/applications/solvers/lagrangian/coalChemistryFoam/setRDeltaT.H index 41c55da1e1..7de2729338 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/setRDeltaT.H +++ b/applications/solvers/lagrangian/coalChemistryFoam/setRDeltaT.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -80,7 +80,7 @@ License ( (coalParcels.hsTrans() + limestoneParcels.hsTrans()) /(mesh.V()*runTime.deltaT()) - + Qdot + + combustion->Qdot()() ) /( alphaTemp diff --git a/applications/solvers/lagrangian/reactingParcelFoam/EEqn.H b/applications/solvers/lagrangian/reactingParcelFoam/EEqn.H index 4d112da030..537d75e2ff 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/EEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/EEqn.H @@ -21,7 +21,7 @@ + parcels.Sh(he) + surfaceFilm.Sh() + radiation->Sh(thermo, he) - + Qdot + + combustion->Qdot() + fvOptions(rho, he) ); diff --git a/applications/solvers/lagrangian/reactingParcelFoam/YEqn.H b/applications/solvers/lagrangian/reactingParcelFoam/YEqn.H index 9aa31d0878..67feb12519 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/YEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/YEqn.H @@ -12,7 +12,6 @@ tmp> mvConvection { combustion->correct(); - Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) diff --git a/applications/solvers/lagrangian/reactingParcelFoam/createFields.H b/applications/solvers/lagrangian/reactingParcelFoam/createFields.H index e94befd74a..2c099e1d02 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/createFields.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/createFields.H @@ -117,20 +117,6 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createRadiationModel.H" #include "createClouds.H" diff --git a/applications/solvers/lagrangian/reactingParcelFoam/setRDeltaT.H b/applications/solvers/lagrangian/reactingParcelFoam/setRDeltaT.H index 05bb4a309d..c192454c53 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/setRDeltaT.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/setRDeltaT.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -79,7 +79,7 @@ License mag ( parcels.hsTrans()/(mesh.V()*runTime.deltaT()) - + Qdot + + combustion->Qdot()() ) /( alphaTemp diff --git a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/EEqn.H b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/EEqn.H index c8baf6beab..f2f9ddc0b3 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/EEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/EEqn.H @@ -14,7 +14,7 @@ rho*(U&g) + parcels.Sh(he) + radiation->Sh(thermo, he) - + Qdot + + combustion->Qdot() + fvOptions(rho, he) ); diff --git a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/YEqn.H b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/YEqn.H index f001916f1c..497d3a21ff 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/YEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/YEqn.H @@ -11,7 +11,6 @@ tmp> mvConvection { combustion->correct(); - Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) diff --git a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/createFields.H b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/createFields.H index c16c63f2b4..284ff09250 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/createFields.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/simpleReactingParcelFoam/createFields.H @@ -99,20 +99,6 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createRadiationModel.H" #include "createClouds.H" diff --git a/applications/solvers/lagrangian/sprayFoam/EEqn.H b/applications/solvers/lagrangian/sprayFoam/EEqn.H index 42185b8afb..d67d2e09ae 100644 --- a/applications/solvers/lagrangian/sprayFoam/EEqn.H +++ b/applications/solvers/lagrangian/sprayFoam/EEqn.H @@ -20,7 +20,7 @@ rho*(U&g) + parcels.Sh(he) + radiation->Sh(thermo, he) - + Qdot + + combustion->Qdot() + fvOptions(rho, he) ); diff --git a/applications/solvers/lagrangian/sprayFoam/YEqn.H b/applications/solvers/lagrangian/sprayFoam/YEqn.H index e2b6358878..1b3cc6b391 100644 --- a/applications/solvers/lagrangian/sprayFoam/YEqn.H +++ b/applications/solvers/lagrangian/sprayFoam/YEqn.H @@ -11,7 +11,6 @@ tmp> mvConvection { combustion->correct(); - Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); forAll(Y, i) diff --git a/applications/solvers/lagrangian/sprayFoam/createFields.H b/applications/solvers/lagrangian/sprayFoam/createFields.H index ba25dea1f3..8a6daba768 100644 --- a/applications/solvers/lagrangian/sprayFoam/createFields.H +++ b/applications/solvers/lagrangian/sprayFoam/createFields.H @@ -115,20 +115,6 @@ forAll(Y, i) } fields.add(thermo.he()); -volScalarField Qdot -( - IOobject - ( - "Qdot", - runTime.timeName(), - mesh, - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - mesh, - dimensionedScalar(dimEnergy/dimVolume/dimTime, 0) -); - #include "createMRF.H" #include "createClouds.H" #include "createRadiationModel.H" diff --git a/applications/solvers/lagrangian/sprayFoam/engineFoam/engineFoam.C b/applications/solvers/lagrangian/sprayFoam/engineFoam/engineFoam.C index dc068968e3..20accc52e7 100644 --- a/applications/solvers/lagrangian/sprayFoam/engineFoam/engineFoam.C +++ b/applications/solvers/lagrangian/sprayFoam/engineFoam/engineFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -108,11 +108,6 @@ int main(int argc, char *argv[]) rho = thermo.rho(); - if (runTime.write()) - { - combustion->Qdot()().write(); - } - Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" << " ClockTime = " << runTime.elapsedClockTime() << " s" << nl << endl; diff --git a/applications/solvers/lagrangian/sprayFoam/sprayFoam.C b/applications/solvers/lagrangian/sprayFoam/sprayFoam.C index c4a00b078f..d2124ae8fa 100644 --- a/applications/solvers/lagrangian/sprayFoam/sprayFoam.C +++ b/applications/solvers/lagrangian/sprayFoam/sprayFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -148,11 +148,6 @@ int main(int argc, char *argv[]) rho = thermo.rho(); - if (runTime.write()) - { - combustion->Qdot()().write(); - } - Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" << " ClockTime = " << runTime.elapsedClockTime() << " s" << nl << endl; diff --git a/src/combustionModels/functionObjects/Qdot/Qdot.C b/src/combustionModels/functionObjects/Qdot/Qdot.C index 0b33ed0f5b..78c1cb8431 100644 --- a/src/combustionModels/functionObjects/Qdot/Qdot.C +++ b/src/combustionModels/functionObjects/Qdot/Qdot.C @@ -60,7 +60,7 @@ Foam::functionObjects::Qdot::Qdot phaseName_(word::null) { read(dict); - resetLocalObjectName(type()); + resetLocalObjectName(IOobject::groupName(type(), phaseName_)); } diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict index fe64f61500..c50188f3a3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/controlDict @@ -49,5 +49,10 @@ adjustTimeStep yes; maxCo 0.4; +functions +{ + #includeFunc Qdot +} + // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict index 0025f6ce2c..27578b76d0 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/controlDict @@ -45,4 +45,10 @@ timePrecision 6; runTimeModifiable true; +functions +{ + #includeFunc Qdot +} + + // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict index 4029656456..efd6646502 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/controlDict @@ -45,4 +45,10 @@ timePrecision 6; runTimeModifiable true; +functions +{ + #includeFunc Qdot +} + + // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict index fe64f61500..c50188f3a3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/controlDict @@ -49,5 +49,10 @@ adjustTimeStep yes; maxCo 0.4; +functions +{ + #includeFunc Qdot +} + // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict index fe64f61500..c50188f3a3 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/controlDict @@ -49,5 +49,10 @@ adjustTimeStep yes; maxCo 0.4; +functions +{ + #includeFunc Qdot +} + // ************************************************************************* // diff --git a/tutorials/lagrangian/sprayFoam/aachenBomb/system/controlDict b/tutorials/lagrangian/sprayFoam/aachenBomb/system/controlDict index f495c9a71c..9116fbdc13 100644 --- a/tutorials/lagrangian/sprayFoam/aachenBomb/system/controlDict +++ b/tutorials/lagrangian/sprayFoam/aachenBomb/system/controlDict @@ -49,5 +49,10 @@ maxCo 0.1; runTimeModifiable yes; +functions +{ + #includeFunc Qdot +} + // ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/Qdot b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/Qdot new file mode 100644 index 0000000000..437c6b5884 --- /dev/null +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/Qdot @@ -0,0 +1,17 @@ +/*--------------------------------*- C++ -*----------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Version: dev + \\/ M anipulation | +------------------------------------------------------------------------------- +Description + Calculates the heat release rate Qdot, outputting the data as a Qdot field. + +\*---------------------------------------------------------------------------*/ + +#includeEtc "caseDicts/postProcessing/combustion/Qdot.cfg" + +phase gas; + +// ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/controlDict b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/controlDict index 4cf06b624a..e3fc33cc80 100644 --- a/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/controlDict +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/controlDict @@ -51,5 +51,10 @@ maxCo 0.5; maxDeltaT 1; +functions +{ + #includeFunc Qdot +} + // ************************************************************************* //