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 +} + // ************************************************************************* //