diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/EEqn.H b/applications/solvers/heatTransfer/buoyantSimpleFoam/EEqn.H index 0d1f41d0c3..094b50cb3e 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/EEqn.H +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/EEqn.H @@ -12,9 +12,13 @@ - fvm::laplacian(turbulence->alphaEff(), he) == radiation->Sh(thermo) + + sources(rho, he) ); EEqn.relax(); + + sources.constrain(EEqn); + EEqn.solve(); thermo.correct(); diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/Make/options b/applications/solvers/heatTransfer/buoyantSimpleFoam/Make/options index f26046adb2..5103b2dd72 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/Make/options +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/Make/options @@ -1,18 +1,22 @@ EXE_INC = \ - -I.. \ + -I$(LIB_SRC)/finiteVolume/lnInclude \ + -I$(LIB_SRC)/fieldSources/lnInclude \ + -I$(LIB_SRC)/sampling/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels \ -I$(LIB_SRC)/turbulenceModels/compressible/RAS/lnInclude \ -I$(LIB_SRC)/turbulenceModels/RAS \ - -I$(LIB_SRC)/finiteVolume/cfdTools \ - -I$(LIB_SRC)/finiteVolume/lnInclude EXE_LIBS = \ + -lfiniteVolume \ + -lfieldSources \ + -lsampling \ + -lmeshTools \ -lfluidThermophysicalModels \ -lspecie \ -lradiationModels \ -lcompressibleTurbulenceModel \ -lcompressibleRASModels \ - -lfiniteVolume \ -lmeshTools diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/UEqn.H b/applications/solvers/heatTransfer/buoyantSimpleFoam/UEqn.H index e1593c3691..860cef4547 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/UEqn.H +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/UEqn.H @@ -4,11 +4,13 @@ ( fvm::div(phi, U) + turbulence->divDevRhoReff(U) + == + sources(rho, U) ); UEqn().relax(); - mrfZones.addCoriolis(rho, UEqn()); + sources.constrain(UEqn()); if (simple.momentumPredictor()) { diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/buoyantSimpleFoam.C b/applications/solvers/heatTransfer/buoyantSimpleFoam/buoyantSimpleFoam.C index 38f3a7c647..16c8e368a2 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/buoyantSimpleFoam.C +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/buoyantSimpleFoam.C @@ -36,7 +36,7 @@ Description #include "fixedGradientFvPatchFields.H" #include "radiationModel.H" #include "simpleControl.H" -#include "IOMRFZoneList.H" +#include "IObasicSourceList.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -47,7 +47,6 @@ int main(int argc, char *argv[]) #include "createMesh.H" #include "readGravitationalAcceleration.H" #include "createFields.H" - #include "createZones.H" #include "createRadiationModel.H" #include "initContinuityErrs.H" diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/createFields.H b/applications/solvers/heatTransfer/buoyantSimpleFoam/createFields.H index bb7a65cb1d..704bf32d50 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/createFields.H +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/createFields.H @@ -87,3 +87,5 @@ dimensionedScalar initialMass = fvc::domainIntegrate(rho); dimensionedScalar totalVolume = sum(mesh.V()); + + IObasicSourceList sources(mesh); diff --git a/applications/solvers/heatTransfer/buoyantSimpleFoam/pEqn.H b/applications/solvers/heatTransfer/buoyantSimpleFoam/pEqn.H index 66ae75b650..2e6cbf3d47 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleFoam/pEqn.H +++ b/applications/solvers/heatTransfer/buoyantSimpleFoam/pEqn.H @@ -17,7 +17,7 @@ fvc::interpolate(rho)*(fvc::interpolate(HbyA) & mesh.Sf()) ); - mrfZones.relativeFlux(fvc::interpolate(rho), phiHbyA); + sources.relativeFlux(fvc::interpolate(rho), phiHbyA); bool closedVolume = adjustPhi(phiHbyA, U, p_rgh); @@ -45,6 +45,7 @@ // calculated from the relaxed pressure U = HbyA + rAU*fvc::reconstruct((phig - p_rghEqn.flux())/rhorAUf); U.correctBoundaryConditions(); + sources.correct(U); } }