From d05c5a41a1bc009ddc3d60c0cd815976ec58c2eb Mon Sep 17 00:00:00 2001 From: andy <andy> Date: Wed, 26 Oct 2011 12:04:25 +0100 Subject: [PATCH] ENH: Updated PIMPLE solvers to new pimpleControl framework --- .../solvers/combustion/PDRFoam/PDRFoam.C | 6 ++--- .../combustion/PDRFoam/PDRFoamAutoRefine.C | 6 ++--- .../solvers/combustion/PDRFoam/pEqn.H | 18 +++++---------- .../solvers/combustion/XiFoam/XiFoam.C | 6 ++--- applications/solvers/combustion/XiFoam/pEqn.H | 18 +++++---------- .../coldEngineFoam/coldEngineFoam.C | 6 ++--- .../dieselEngineFoam/dieselEngineFoam.C | 6 ++--- .../combustion/dieselEngineFoam/pEqn.H | 18 +++++---------- .../combustion/dieselFoam/dieselFoam.C | 6 ++--- .../solvers/combustion/dieselFoam/pEqn.H | 20 ++++++----------- .../combustion/engineFoam/engineFoam.C | 6 ++--- .../solvers/combustion/engineFoam/pEqn.H | 18 +++++---------- .../solvers/combustion/fireFoam/fireFoam.C | 6 ++--- .../solvers/combustion/fireFoam/pEqn.H | 9 +++----- .../solvers/combustion/reactingFoam/pEqn.H | 18 +++++---------- .../combustion/reactingFoam/reactingFoam.C | 6 ++--- .../solvers/combustion/rhoReactingFoam/pEqn.H | 18 +++++---------- .../rhoReactingFoam/rhoReactingFoam.C | 6 ++--- .../solvers/compressible/rhoPimpleFoam/pEqn.H | 20 ++++++----------- .../rhoPimpleFoam/rhoPimpleFoam.C | 6 ++--- .../rhoPorousMRFLTSPimpleFoam.C | 6 ++--- .../rhoPorousMRFPimpleFoam/pEqn.H | 20 ++++++----------- .../rhoPorousMRFPimpleFoam.C | 6 ++--- .../buoyantBoussinesqPimpleFoam.C | 6 ++--- .../buoyantBoussinesqPimpleFoam/pEqn.H | 9 +++----- .../buoyantPimpleFoam/buoyantPimpleFoam.C | 6 ++--- .../heatTransfer/buoyantPimpleFoam/pEqn.H | 9 +++----- .../pimpleFoam/SRFPimpleFoam/SRFPimpleFoam.C | 6 ++--- .../pimpleFoam/SRFPimpleFoam/pEqn.H | 11 ++++------ .../solvers/incompressible/pimpleFoam/pEqn.H | 11 ++++------ .../pimpleFoam/pimpleDyMFoam/correctPhi.H | 4 ++-- .../pimpleFoam/pimpleDyMFoam/pEqn.H | 11 ++++------ .../pimpleFoam/pimpleDyMFoam/pimpleDyMFoam.C | 6 ++--- .../incompressible/pimpleFoam/pimpleFoam.C | 6 ++--- .../shallowWaterFoam/shallowWaterFoam.C | 18 +++++---------- .../LTSReactingParcelFoam.C | 6 ++--- .../lagrangian/LTSReactingParcelFoam/pEqn.H | 9 +++----- .../coalChemistryFoam/coalChemistryFoam.C | 6 ++--- .../lagrangian/coalChemistryFoam/pEqn.H | 18 +++++---------- .../pEqn.H | 9 +++----- .../porousExplicitSourceReactingParcelFoam.C | 6 ++--- .../lagrangian/reactingParcelFilmFoam/pEqn.H | 9 +++----- .../reactingParcelFilmFoam.C | 6 ++--- .../lagrangian/reactingParcelFoam/pEqn.H | 18 +++++---------- .../reactingParcelFoam/reactingParcelFoam.C | 6 ++--- .../solvers/lagrangian/sprayFoam/sprayFoam.C | 6 ++--- .../multiphase/bubbleFoam/bubbleFoam.C | 6 ++--- .../solvers/multiphase/bubbleFoam/pEqn.H | 9 +++----- .../cavitatingFoam/cavitatingFoam.C | 6 +++-- .../solvers/multiphase/cavitatingFoam/pEqn.H | 11 ++++------ .../compressibleInterFoam/alphaEqnsSubCycle.H | 3 ++- .../alphaEqnsSubCycle.H | 3 ++- .../compressibleInterDyMFoam.C | 8 +++---- .../compressibleInterDyMFoam/correctPhi.H | 4 ++-- .../compressibleInterDyMFoam/pEqn.H | 6 ++--- .../compressibleInterDyMFoam/readControls.H | 2 +- .../compressibleInterFoam.C | 8 +++---- .../multiphase/compressibleInterFoam/pEqn.H | 6 ++--- .../compressibleInterFoam/readControls.H | 16 +++++--------- .../compressibleTwoPhaseEulerFoam.C | 6 ++--- .../compressibleTwoPhaseEulerFoam/pEqn.H | 11 +++++----- .../interFoam/LTSInterFoam/LTSInterFoam.C | 6 ++--- .../interFoam/MRFInterFoam/MRFInterFoam.C | 6 ++--- .../multiphase/interFoam/MRFInterFoam/pEqn.H | 9 +++----- .../solvers/multiphase/interFoam/correctPhi.H | 4 ++-- .../interFoam/interDyMFoam/interDyMFoam.C | 6 ++--- .../multiphase/interFoam/interDyMFoam/pEqn.H | 9 +++----- .../solvers/multiphase/interFoam/interFoam.C | 6 ++--- .../solvers/multiphase/interFoam/pEqn.H | 9 +++----- .../porousInterFoam/porousInterFoam.C | 6 ++--- .../interMixingFoam/interMixingFoam.C | 6 ++--- .../interPhaseChangeFoam/alphaEqnSubCycle.H | 4 ++-- .../interPhaseChangeFoam.C | 6 ++--- .../multiphase/interPhaseChangeFoam/pEqn.H | 14 +++++------- .../multiphaseEulerFoam/correctPhi.H | 4 ++-- .../multiphaseEulerFoam/multiphaseEulerFoam.C | 6 ++--- .../multiphase/multiphaseEulerFoam/pEqn.H | 4 ++-- .../MRFMultiphaseInterFoam.C | 6 ++--- .../MRFMultiphaseInterFoam/pEqn.H | 22 +++++++++---------- .../multiphaseInterFoam/multiphaseInterFoam.C | 6 ++--- .../multiphase/multiphaseInterFoam/pEqn.H | 9 +++----- .../solvers/multiphase/settlingFoam/pEqn.H | 7 +++--- .../multiphase/settlingFoam/settlingFoam.C | 7 +++--- .../multiphase/twoLiquidMixingFoam/pEqn.H | 9 +++----- .../twoLiquidMixingFoam/twoLiquidMixingFoam.C | 6 ++--- .../multiphase/twoPhaseEulerFoam/pEqn.H | 9 +++----- .../twoPhaseEulerFoam/twoPhaseEulerFoam.C | 6 ++--- 87 files changed, 313 insertions(+), 441 deletions(-) diff --git a/applications/solvers/combustion/PDRFoam/PDRFoam.C b/applications/solvers/combustion/PDRFoam/PDRFoam.C index 40a48cfbdba..bf70e83c5d1 100644 --- a/applications/solvers/combustion/PDRFoam/PDRFoam.C +++ b/applications/solvers/combustion/PDRFoam/PDRFoam.C @@ -114,12 +114,12 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "bEqn.H" #include "ftEqn.H" diff --git a/applications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C b/applications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C index 557c8aa1fb7..0c5082df042 100644 --- a/applications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C +++ b/applications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C @@ -167,13 +167,13 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "bEqn.H" #include "ftEqn.H" diff --git a/applications/solvers/combustion/PDRFoam/pEqn.H b/applications/solvers/combustion/PDRFoam/pEqn.H index 3c6a6341f9d..e2a2a471e28 100644 --- a/applications/solvers/combustion/PDRFoam/pEqn.H +++ b/applications/solvers/combustion/PDRFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -24,12 +24,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*invA, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -44,7 +41,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -53,12 +50,9 @@ else - fvm::laplacian(rho*invA, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/XiFoam/XiFoam.C b/applications/solvers/combustion/XiFoam/XiFoam.C index 71b03064fad..069e5b8caa0 100644 --- a/applications/solvers/combustion/XiFoam/XiFoam.C +++ b/applications/solvers/combustion/XiFoam/XiFoam.C @@ -91,7 +91,7 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" @@ -105,8 +105,8 @@ int main(int argc, char *argv[]) hu == h; } - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/XiFoam/pEqn.H b/applications/solvers/combustion/XiFoam/pEqn.H index bef433d388f..784e9ca6b71 100644 --- a/applications/solvers/combustion/XiFoam/pEqn.H +++ b/applications/solvers/combustion/XiFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -24,12 +24,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -44,7 +41,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -53,12 +50,9 @@ else - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/coldEngineFoam/coldEngineFoam.C b/applications/solvers/combustion/coldEngineFoam/coldEngineFoam.C index 7a0f3acd09d..6ef3a599c17 100644 --- a/applications/solvers/combustion/coldEngineFoam/coldEngineFoam.C +++ b/applications/solvers/combustion/coldEngineFoam/coldEngineFoam.C @@ -74,12 +74,12 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "hEqn.H" #include "pEqn.H" diff --git a/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C b/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C index 6fd1981be9c..3c60e9c9eac 100644 --- a/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C +++ b/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C @@ -83,14 +83,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/dieselEngineFoam/pEqn.H b/applications/solvers/combustion/dieselEngineFoam/pEqn.H index 42228cc7b0e..0493a1ff6c6 100644 --- a/applications/solvers/combustion/dieselEngineFoam/pEqn.H +++ b/applications/solvers/combustion/dieselEngineFoam/pEqn.H @@ -12,7 +12,7 @@ if (pimple.transonic()) *((fvc::interpolate(U) & mesh.Sf()) - fvc::meshPhi(rho, U)) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -23,12 +23,9 @@ if (pimple.transonic()) Sevap ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -39,7 +36,7 @@ else phi = fvc::interpolate(rho) *((fvc::interpolate(U) & mesh.Sf()) - fvc::meshPhi(rho, U)); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -50,12 +47,9 @@ else Sevap ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/dieselFoam/dieselFoam.C b/applications/solvers/combustion/dieselFoam/dieselFoam.C index 70808e8dbe3..5bcb6b32735 100644 --- a/applications/solvers/combustion/dieselFoam/dieselFoam.C +++ b/applications/solvers/combustion/dieselFoam/dieselFoam.C @@ -80,14 +80,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/dieselFoam/pEqn.H b/applications/solvers/combustion/dieselFoam/pEqn.H index 5c4bd5ddf63..8ef13cde9d2 100644 --- a/applications/solvers/combustion/dieselFoam/pEqn.H +++ b/applications/solvers/combustion/dieselFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -26,12 +26,9 @@ if (pimple.transonic()) Sevap ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -46,7 +43,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -57,14 +54,11 @@ else Sevap ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { - phi += pEqn.flux(); + phi == pEqn.flux(); } } } diff --git a/applications/solvers/combustion/engineFoam/engineFoam.C b/applications/solvers/combustion/engineFoam/engineFoam.C index 5b2256ba45e..84472420c52 100644 --- a/applications/solvers/combustion/engineFoam/engineFoam.C +++ b/applications/solvers/combustion/engineFoam/engineFoam.C @@ -97,7 +97,7 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" @@ -111,8 +111,8 @@ int main(int argc, char *argv[]) hu == h; } - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/engineFoam/pEqn.H b/applications/solvers/combustion/engineFoam/pEqn.H index 1b75a933981..580be2da56e 100644 --- a/applications/solvers/combustion/engineFoam/pEqn.H +++ b/applications/solvers/combustion/engineFoam/pEqn.H @@ -12,7 +12,7 @@ if (pimple.transonic()) *((fvc::interpolate(U) & mesh.Sf()) - fvc::meshPhi(rho, U)) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -21,12 +21,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -37,7 +34,7 @@ else phi = fvc::interpolate(rho) *((fvc::interpolate(U) & mesh.Sf()) - fvc::meshPhi(rho, U)); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -46,12 +43,9 @@ else - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/fireFoam/fireFoam.C b/applications/solvers/combustion/fireFoam/fireFoam.C index e95a4318c78..1d58470cbfd 100644 --- a/applications/solvers/combustion/fireFoam/fireFoam.C +++ b/applications/solvers/combustion/fireFoam/fireFoam.C @@ -91,13 +91,13 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- PIMPLE loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YhsEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/fireFoam/pEqn.H b/applications/solvers/combustion/fireFoam/pEqn.H index 5c7a4ae33e3..65259391daf 100644 --- a/applications/solvers/combustion/fireFoam/pEqn.H +++ b/applications/solvers/combustion/fireFoam/pEqn.H @@ -15,7 +15,7 @@ surfaceScalarField phiU phi = phiU - rhorAUf*ghf*fvc::snGrad(rho)*mesh.magSf(); -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -28,12 +28,9 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + surfaceFilm.Srho() ); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += p_rghEqn.flux(); } diff --git a/applications/solvers/combustion/reactingFoam/pEqn.H b/applications/solvers/combustion/reactingFoam/pEqn.H index bef433d388f..784e9ca6b71 100644 --- a/applications/solvers/combustion/reactingFoam/pEqn.H +++ b/applications/solvers/combustion/reactingFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -24,12 +24,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -44,7 +41,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -53,12 +50,9 @@ else - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/reactingFoam/reactingFoam.C b/applications/solvers/combustion/reactingFoam/reactingFoam.C index 7f3347f7804..5344eea3beb 100644 --- a/applications/solvers/combustion/reactingFoam/reactingFoam.C +++ b/applications/solvers/combustion/reactingFoam/reactingFoam.C @@ -66,14 +66,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/combustion/rhoReactingFoam/pEqn.H b/applications/solvers/combustion/rhoReactingFoam/pEqn.H index 724f45e1894..b22fc890794 100644 --- a/applications/solvers/combustion/rhoReactingFoam/pEqn.H +++ b/applications/solvers/combustion/rhoReactingFoam/pEqn.H @@ -30,7 +30,7 @@ + correction(fvm::ddt(psi, p) + fvm::div(phid, p)) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -38,12 +38,9 @@ - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } @@ -64,7 +61,7 @@ + fvc::div(phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -72,12 +69,9 @@ - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C b/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C index 73b252e5790..aa8f1a55015 100644 --- a/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C +++ b/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C @@ -68,14 +68,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H index eea0ea9bff8..1361c6441f1 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H @@ -5,7 +5,7 @@ rho.relax(); U = rAU*UEqn().H(); -if (pimple.nCorr() <= 1) +if (pimple.nCorrPIMPLE() <= 1) { UEqn.clear(); } @@ -22,7 +22,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -31,12 +31,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -51,7 +48,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { // Pressure corrector fvScalarMatrix pEqn @@ -61,12 +58,9 @@ else - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C index 0336ceb74d7..26d11a14aa6 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleFoam.C @@ -69,13 +69,13 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "hEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFLTSPimpleFoam/rhoPorousMRFLTSPimpleFoam.C b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFLTSPimpleFoam/rhoPorousMRFLTSPimpleFoam.C index 66ffb082756..de32f1f5c63 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFLTSPimpleFoam/rhoPorousMRFLTSPimpleFoam.C +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFLTSPimpleFoam/rhoPorousMRFLTSPimpleFoam.C @@ -77,15 +77,15 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { turbulence->correct(); #include "UEqn.H" #include "hEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H index 5e54f970cd5..cd10ed78e2f 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/pEqn.H @@ -6,7 +6,7 @@ rho.relax(); volScalarField rAU(1.0/UEqn().A()); U = rAU*UEqn().H(); -if (pimple.nCorr() <= 1) +if (pimple.nCorrPIMPLE() <= 1) { UEqn.clear(); } @@ -24,7 +24,7 @@ if (pimple.transonic()) ); mrfZones.relativeFlux(fvc::interpolate(psi), phid); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -33,12 +33,9 @@ if (pimple.transonic()) - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -54,7 +51,7 @@ else ); mrfZones.relativeFlux(fvc::interpolate(rho), phi); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { // Pressure corrector fvScalarMatrix pEqn @@ -64,12 +61,9 @@ else - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C index 8de8a412c35..068de89952e 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPorousMRFPimpleFoam/rhoPorousMRFPimpleFoam.C @@ -72,13 +72,13 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "hEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/buoyantBoussinesqPimpleFoam.C b/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/buoyantBoussinesqPimpleFoam.C index c00c1fe8d83..461578e864e 100644 --- a/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/buoyantBoussinesqPimpleFoam.C +++ b/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/buoyantBoussinesqPimpleFoam.C @@ -79,13 +79,13 @@ int main(int argc, char *argv[]) #include "setDeltaT.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "TEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/pEqn.H b/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/pEqn.H index 8ac13dc93ee..14e87ea844e 100644 --- a/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/pEqn.H +++ b/applications/solvers/heatTransfer/buoyantBoussinesqPimpleFoam/pEqn.H @@ -10,7 +10,7 @@ surfaceScalarField buoyancyPhi(rAUf*ghf*fvc::snGrad(rhok)*mesh.magSf()); phi -= buoyancyPhi; - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -19,12 +19,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { // Calculate the conservative fluxes phi -= p_rghEqn.flux(); diff --git a/applications/solvers/heatTransfer/buoyantPimpleFoam/buoyantPimpleFoam.C b/applications/solvers/heatTransfer/buoyantPimpleFoam/buoyantPimpleFoam.C index 42397711680..3e6b46a4bc6 100644 --- a/applications/solvers/heatTransfer/buoyantPimpleFoam/buoyantPimpleFoam.C +++ b/applications/solvers/heatTransfer/buoyantPimpleFoam/buoyantPimpleFoam.C @@ -72,13 +72,13 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "hEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/heatTransfer/buoyantPimpleFoam/pEqn.H b/applications/solvers/heatTransfer/buoyantPimpleFoam/pEqn.H index b47d65b842a..5c60d78b35a 100644 --- a/applications/solvers/heatTransfer/buoyantPimpleFoam/pEqn.H +++ b/applications/solvers/heatTransfer/buoyantPimpleFoam/pEqn.H @@ -25,7 +25,7 @@ + fvc::div(phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -33,12 +33,9 @@ - fvm::laplacian(rhorAUf, p_rgh) ); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { // Calculate the conservative fluxes phi += p_rghEqn.flux(); diff --git a/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/SRFPimpleFoam.C b/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/SRFPimpleFoam.C index 30725cd0702..ba222b5034a 100644 --- a/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/SRFPimpleFoam.C +++ b/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/SRFPimpleFoam.C @@ -65,12 +65,12 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UrelEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/pEqn.H b/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/pEqn.H index e4f9190cc53..a8ade8c1cab 100644 --- a/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/pEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/SRFPimpleFoam/pEqn.H @@ -1,7 +1,7 @@ volScalarField rAUrel(1.0/UrelEqn().A()); Urel = rAUrel*UrelEqn().H(); -if (pimple.nCorr() <= 1) +if (pimple.nCorrPIMPLE() <= 1) { UrelEqn.clear(); } @@ -12,7 +12,7 @@ phi = (fvc::interpolate(Urel) & mesh.Sf()) adjustPhi(phi, Urel, p); // Non-orthogonal pressure corrector loop -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { // Pressure corrector fvScalarMatrix pEqn @@ -22,12 +22,9 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) pEqn.setReference(pRefCell, pRefValue); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pEqn.flux(); } diff --git a/applications/solvers/incompressible/pimpleFoam/pEqn.H b/applications/solvers/incompressible/pimpleFoam/pEqn.H index da9b7581bfc..2d6b37db673 100644 --- a/applications/solvers/incompressible/pimpleFoam/pEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/pEqn.H @@ -1,6 +1,6 @@ U = rAU*UEqn().H(); -if (pimple.nCorr() <= 1) +if (pimple.nCorrPIMPLE() <= 1) { UEqn.clear(); } @@ -11,7 +11,7 @@ phi = (fvc::interpolate(U) & mesh.Sf()) adjustPhi(phi, U, p); // Non-orthogonal pressure corrector loop -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { // Pressure corrector fvScalarMatrix pEqn @@ -21,12 +21,9 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) pEqn.setReference(pRefCell, pRefValue); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pEqn.flux(); } diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/correctPhi.H b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/correctPhi.H index e112db4621f..aed4884c4cb 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/correctPhi.H +++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/correctPhi.H @@ -50,7 +50,7 @@ pcorrTypes ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pcorrEqn ( @@ -60,7 +60,7 @@ pcorrEqn.setReference(pRefCell, pRefValue); pcorrEqn.solve(); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pcorrEqn.flux(); } diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H index 3e8a587768f..5986a92adf0 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H @@ -1,6 +1,6 @@ U = rAU*UEqn().H(); -if (pimple.nCorr() <= 1) +if (pimple.nCorrPIMPLE() <= 1) { UEqn.clear(); } @@ -19,7 +19,7 @@ if (p.needReference()) fvc::makeAbsolute(phi, U); } -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -28,12 +28,9 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) pEqn.setReference(pRefCell, pRefValue); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pEqn.flux(); } diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pimpleDyMFoam.C b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pimpleDyMFoam.C index 55ee07dbc72..b2b0c48c13d 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pimpleDyMFoam.C +++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pimpleDyMFoam.C @@ -86,12 +86,12 @@ int main(int argc, char *argv[]) } // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleFoam.C b/applications/solvers/incompressible/pimpleFoam/pimpleFoam.C index e8b58bbea5e..da5e2974c9b 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleFoam.C +++ b/applications/solvers/incompressible/pimpleFoam/pimpleFoam.C @@ -64,12 +64,12 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/incompressible/shallowWaterFoam/shallowWaterFoam.C b/applications/solvers/incompressible/shallowWaterFoam/shallowWaterFoam.C index 9fbe918a9f2..b4915526472 100644 --- a/applications/solvers/incompressible/shallowWaterFoam/shallowWaterFoam.C +++ b/applications/solvers/incompressible/shallowWaterFoam/shallowWaterFoam.C @@ -58,7 +58,7 @@ int main(int argc, char *argv[]) #include "CourantNo.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { surfaceScalarField phiv("phiv", phi/fvc::interpolate(h)); @@ -89,8 +89,8 @@ int main(int argc, char *argv[]) } } - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { volScalarField rAU(1.0/hUEqn.A()); surfaceScalarField ghrAUf(magg*fvc::interpolate(h*rAU)); @@ -110,7 +110,7 @@ int main(int argc, char *argv[]) + fvc::ddtPhiCorr(rAU, h, hU, phi) - phih0; - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix hEqn ( @@ -119,15 +119,9 @@ int main(int argc, char *argv[]) - fvm::laplacian(ghrAUf, h) ); - hEqn.solve - ( - mesh.solver - ( - h.select(pimple.finalInnerIter(corr, nonOrth)) - ) - ); + hEqn.solve(mesh.solver(h.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += hEqn.flux(); } diff --git a/applications/solvers/lagrangian/LTSReactingParcelFoam/LTSReactingParcelFoam.C b/applications/solvers/lagrangian/LTSReactingParcelFoam/LTSReactingParcelFoam.C index dc642e7c723..23c9e032293 100644 --- a/applications/solvers/lagrangian/LTSReactingParcelFoam/LTSReactingParcelFoam.C +++ b/applications/solvers/lagrangian/LTSReactingParcelFoam/LTSReactingParcelFoam.C @@ -87,7 +87,7 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { turbulence->correct(); @@ -95,8 +95,8 @@ int main(int argc, char *argv[]) #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/lagrangian/LTSReactingParcelFoam/pEqn.H b/applications/solvers/lagrangian/LTSReactingParcelFoam/pEqn.H index fcbfad3efb2..d3aaed21efe 100644 --- a/applications/solvers/lagrangian/LTSReactingParcelFoam/pEqn.H +++ b/applications/solvers/lagrangian/LTSReactingParcelFoam/pEqn.H @@ -32,7 +32,7 @@ + massSource.SuTot() ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -40,12 +40,9 @@ - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/lagrangian/coalChemistryFoam/coalChemistryFoam.C b/applications/solvers/lagrangian/coalChemistryFoam/coalChemistryFoam.C index 7b5c3e73c71..897f43e3c3e 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/coalChemistryFoam.C +++ b/applications/solvers/lagrangian/coalChemistryFoam/coalChemistryFoam.C @@ -88,14 +88,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/lagrangian/coalChemistryFoam/pEqn.H b/applications/solvers/lagrangian/coalChemistryFoam/pEqn.H index de0c04577a0..73e56f07c5d 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/pEqn.H +++ b/applications/solvers/lagrangian/coalChemistryFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -26,12 +26,9 @@ if (pimple.transonic()) coalParcels.Srho() ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -46,7 +43,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -57,12 +54,9 @@ else coalParcels.Srho() ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H index 63d746fe79f..b6e69acead3 100644 --- a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H +++ b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H @@ -32,7 +32,7 @@ + massSource.SuTot() ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -40,12 +40,9 @@ - fvm::laplacian(rho*rAU, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C index 283773f4f6f..19d7e96d13f 100644 --- a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C +++ b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C @@ -90,14 +90,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/lagrangian/reactingParcelFilmFoam/pEqn.H b/applications/solvers/lagrangian/reactingParcelFilmFoam/pEqn.H index 5c7a4ae33e3..65259391daf 100644 --- a/applications/solvers/lagrangian/reactingParcelFilmFoam/pEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFilmFoam/pEqn.H @@ -15,7 +15,7 @@ surfaceScalarField phiU phi = phiU - rhorAUf*ghf*fvc::snGrad(rho)*mesh.magSf(); -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -28,12 +28,9 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + surfaceFilm.Srho() ); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += p_rghEqn.flux(); } diff --git a/applications/solvers/lagrangian/reactingParcelFilmFoam/reactingParcelFilmFoam.C b/applications/solvers/lagrangian/reactingParcelFilmFoam/reactingParcelFilmFoam.C index 8dd3e3c9e6a..06ef5ddac3b 100644 --- a/applications/solvers/lagrangian/reactingParcelFilmFoam/reactingParcelFilmFoam.C +++ b/applications/solvers/lagrangian/reactingParcelFilmFoam/reactingParcelFilmFoam.C @@ -83,14 +83,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- PIMPLE loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=1; corr<=pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/lagrangian/reactingParcelFoam/pEqn.H b/applications/solvers/lagrangian/reactingParcelFoam/pEqn.H index 3bf304ceccf..8031af20d57 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/pEqn.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/pEqn.H @@ -15,7 +15,7 @@ if (pimple.transonic()) ) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -26,12 +26,9 @@ if (pimple.transonic()) parcels.Srho() ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi == pEqn.flux(); } @@ -46,7 +43,7 @@ else + fvc::ddtPhiCorr(rAU, rho, U, phi) ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -57,12 +54,9 @@ else parcels.Srho() ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += pEqn.flux(); } diff --git a/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C b/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C index 94e551ca721..a46cb30f80c 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C +++ b/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C @@ -76,14 +76,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/lagrangian/sprayFoam/sprayFoam.C b/applications/solvers/lagrangian/sprayFoam/sprayFoam.C index 96ad7dee523..50e24a70dfd 100644 --- a/applications/solvers/lagrangian/sprayFoam/sprayFoam.C +++ b/applications/solvers/lagrangian/sprayFoam/sprayFoam.C @@ -76,14 +76,14 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" #include "YEqn.H" #include "hsEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/bubbleFoam/bubbleFoam.C b/applications/solvers/multiphase/bubbleFoam/bubbleFoam.C index 0d095d36483..4bbaf792af2 100644 --- a/applications/solvers/multiphase/bubbleFoam/bubbleFoam.C +++ b/applications/solvers/multiphase/bubbleFoam/bubbleFoam.C @@ -68,14 +68,14 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "alphaEqn.H" #include "liftDragCoeffs.H" #include "UEqns.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" diff --git a/applications/solvers/multiphase/bubbleFoam/pEqn.H b/applications/solvers/multiphase/bubbleFoam/pEqn.H index 453575b19b7..268c2b4f0d7 100644 --- a/applications/solvers/multiphase/bubbleFoam/pEqn.H +++ b/applications/solvers/multiphase/bubbleFoam/pEqn.H @@ -42,7 +42,7 @@ alphaf*rUaAf/rhoa + betaf*rUbAf/rhob ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -51,12 +51,9 @@ pEqn.setReference(pRefCell, pRefValue); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { surfaceScalarField SfGradp(pEqn.flux()/Dp); diff --git a/applications/solvers/multiphase/cavitatingFoam/cavitatingFoam.C b/applications/solvers/multiphase/cavitatingFoam/cavitatingFoam.C index 159eb0f0bd4..256a58d9533 100644 --- a/applications/solvers/multiphase/cavitatingFoam/cavitatingFoam.C +++ b/applications/solvers/multiphase/cavitatingFoam/cavitatingFoam.C @@ -68,13 +68,15 @@ int main(int argc, char *argv[]) runTime++; Info<< "Time = " << runTime.timeName() << nl << endl; - for (pimple.start(); pimple.loop(); pimple++) + // --- Pressure-velocity PIMPLE corrector loop + while (pimple.loop()) { #include "rhoEqn.H" #include "gammaPsi.H" #include "UEqn.H" - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/cavitatingFoam/pEqn.H b/applications/solvers/multiphase/cavitatingFoam/pEqn.H index c604539cde3..fb8893be2cc 100644 --- a/applications/solvers/multiphase/cavitatingFoam/pEqn.H +++ b/applications/solvers/multiphase/cavitatingFoam/pEqn.H @@ -1,5 +1,5 @@ { - if (pimple.nOuterCorr() == 1) + if (pimple.nCorrPIMPLE() == 1) { p = ( @@ -26,7 +26,7 @@ #include "resetPhivPatches.H" - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -37,12 +37,9 @@ - fvm::laplacian(rAUf, p) ); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phiv += (phiGradp + pEqn.flux())/rhof; } diff --git a/applications/solvers/multiphase/compressibleInterFoam/alphaEqnsSubCycle.H b/applications/solvers/multiphase/compressibleInterFoam/alphaEqnsSubCycle.H index 9161c805631..6270f7e9e5d 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/alphaEqnsSubCycle.H +++ b/applications/solvers/multiphase/compressibleInterFoam/alphaEqnsSubCycle.H @@ -30,7 +30,8 @@ #include "alphaEqns.H" } - if (pimple.corr() == 0) + // correct interface on first PIMPLE corrector + if (pimple.corrPIMPLE() == 1) { interface.correct(); } diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaEqnsSubCycle.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaEqnsSubCycle.H index 532d2bcc05e..862dc60409f 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaEqnsSubCycle.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaEqnsSubCycle.H @@ -32,7 +32,8 @@ #include "alphaEqns.H" } - if (pimple.corr() == 0) + // correct interface on first PIMPLE corrector + if (pimple.corrPIMPLE() == 1) { interface.correct(); } diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C index 4b3b5127d4c..1ac1596c4db 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C @@ -116,8 +116,8 @@ int main(int argc, char *argv[]) turbulence->correct(); - // --- Outer-corrector loop - for (pimple.start(); pimple.loop(); pimple++) + // --- Pressure-velocity PIMPLE corrector loop + while (pimple.loop()) { #include "alphaEqnsSubCycle.H" @@ -125,8 +125,8 @@ int main(int argc, char *argv[]) #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H index c3b3726d122..1d7b9ca624a 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H @@ -42,7 +42,7 @@ adjustPhi(phi, U, pcorr); - for(int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pcorrEqn ( @@ -51,7 +51,7 @@ pcorrEqn.solve(); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pcorrEqn.flux(); } diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H index cdc541f0cd9..26666c41203 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H @@ -39,7 +39,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqnIncomp ( @@ -55,10 +55,10 @@ ) *p_rghEqnComp() + p_rghEqnIncomp, - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) + mesh.solver(p_rgh.select(pimple.finalInnerIter())) ); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { dgdt = (pos(alpha2)*(psi2/rho2) - pos(alpha1)*(psi1/rho1)) diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/readControls.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/readControls.H index 38bacbf4eae..1a718434a81 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/readControls.H +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/readControls.H @@ -4,7 +4,7 @@ label nAlphaSubCycles(readLabel(pimple.dict().lookup("nAlphaSubCycles"))); - if (nAlphaSubCycles > 1 && pimple.nOuterCorr() != 1) + if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1) { FatalErrorIn(args.executable()) << "Sub-cycling alpha is only allowed for PISO, " diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C index 02d6764ae2d..4ad1b3d01da 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C @@ -74,8 +74,8 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; - // --- Outer-corrector loop - for (pimple.start(); pimple.loop(); pimple++) + // --- Pressure-velocity PIMPLE corrector loop + while (pimple.loop()) { #include "alphaEqnsSubCycle.H" @@ -83,8 +83,8 @@ int main(int argc, char *argv[]) #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H index 28c42abe792..035e8e237da 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H @@ -39,7 +39,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqnIncomp ( @@ -55,10 +55,10 @@ ) *p_rghEqnComp() + p_rghEqnIncomp, - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) + mesh.solver(p_rgh.select(pimple.finalInnerIter())) ); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { dgdt = (pos(alpha2)*(psi2/rho2) - pos(alpha1)*(psi1/rho1)) diff --git a/applications/solvers/multiphase/compressibleInterFoam/readControls.H b/applications/solvers/multiphase/compressibleInterFoam/readControls.H index 954fcb27f2d..87a055d641f 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/readControls.H +++ b/applications/solvers/multiphase/compressibleInterFoam/readControls.H @@ -1,19 +1,13 @@ - #include "readTimeControls.H" + #include "readTimeControls.H" - label nAlphaCorr - ( - readLabel(pimple.dict().lookup("nAlphaCorr")) - ); + label nAlphaCorr(readLabel(pimple.dict().lookup("nAlphaCorr"))); - label nAlphaSubCycles - ( - readLabel(pimple.dict().lookup("nAlphaSubCycles")) - ); + label nAlphaSubCycles(readLabel(pimple.dict().lookup("nAlphaSubCycles"))); - if (nAlphaSubCycles > 1 && pimple.nOuterCorr() != 1) + if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1) { FatalErrorIn(args.executable()) - << "Sub-cycling alpha is only allowed for PISO, " + << "Sub-cycling alpha is only allowed for PISO operation, " "i.e. when the number of outer-correctors = 1" << exit(FatalError); } diff --git a/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/compressibleTwoPhaseEulerFoam.C b/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/compressibleTwoPhaseEulerFoam.C index c764472cb77..d29da482bae 100644 --- a/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/compressibleTwoPhaseEulerFoam.C +++ b/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/compressibleTwoPhaseEulerFoam.C @@ -77,7 +77,7 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "alphaEqn.H" #include "kEpsilon.H" @@ -85,8 +85,8 @@ int main(int argc, char *argv[]) #include "TEqns.H" #include "UEqns.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/pEqn.H b/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/pEqn.H index ea3e825448c..d6af50988fa 100644 --- a/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleTwoPhaseEulerFoam/pEqn.H @@ -69,7 +69,7 @@ + alpha2f*rAlphaAU2f/fvc::interpolate(rho2)) ); - for(int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqnIncomp ( @@ -82,12 +82,11 @@ ( (alpha1/rho1)*pEqnComp1() + (alpha2/rho2)*pEqnComp2() - ) + - pEqnIncomp, - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + ) + + pEqnIncomp, + mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { surfaceScalarField mSfGradp = pEqnIncomp.flux()/Dp; phi1 += rAlphaAU1f*mSfGradp/fvc::interpolate(rho1); diff --git a/applications/solvers/multiphase/interFoam/LTSInterFoam/LTSInterFoam.C b/applications/solvers/multiphase/interFoam/LTSInterFoam/LTSInterFoam.C index 938ccbcc02a..06811c21919 100644 --- a/applications/solvers/multiphase/interFoam/LTSInterFoam/LTSInterFoam.C +++ b/applications/solvers/multiphase/interFoam/LTSInterFoam/LTSInterFoam.C @@ -81,12 +81,12 @@ int main(int argc, char *argv[]) turbulence->correct(); // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interFoam/MRFInterFoam/MRFInterFoam.C b/applications/solvers/multiphase/interFoam/MRFInterFoam/MRFInterFoam.C index b4f87264b92..042a17e1f3c 100644 --- a/applications/solvers/multiphase/interFoam/MRFInterFoam/MRFInterFoam.C +++ b/applications/solvers/multiphase/interFoam/MRFInterFoam/MRFInterFoam.C @@ -84,12 +84,12 @@ int main(int argc, char *argv[]) #include "zonePhaseVolumes.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interFoam/MRFInterFoam/pEqn.H b/applications/solvers/multiphase/interFoam/MRFInterFoam/pEqn.H index d281e177c8e..6fc51c7ceee 100644 --- a/applications/solvers/multiphase/interFoam/MRFInterFoam/pEqn.H +++ b/applications/solvers/multiphase/interFoam/MRFInterFoam/pEqn.H @@ -19,7 +19,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for(int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -28,12 +28,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/interFoam/correctPhi.H b/applications/solvers/multiphase/interFoam/correctPhi.H index cb3503e7b8d..a2a61cef21d 100644 --- a/applications/solvers/multiphase/interFoam/correctPhi.H +++ b/applications/solvers/multiphase/interFoam/correctPhi.H @@ -34,7 +34,7 @@ adjustPhi(phi, U, pcorr); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pcorrEqn ( @@ -44,7 +44,7 @@ pcorrEqn.setReference(pRefCell, pRefValue); pcorrEqn.solve(); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pcorrEqn.flux(); } diff --git a/applications/solvers/multiphase/interFoam/interDyMFoam/interDyMFoam.C b/applications/solvers/multiphase/interFoam/interDyMFoam/interDyMFoam.C index 1face6ddd57..a0c4827633d 100644 --- a/applications/solvers/multiphase/interFoam/interDyMFoam/interDyMFoam.C +++ b/applications/solvers/multiphase/interFoam/interDyMFoam/interDyMFoam.C @@ -116,12 +116,12 @@ int main(int argc, char *argv[]) #include "alphaEqnSubCycle.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interFoam/interDyMFoam/pEqn.H b/applications/solvers/multiphase/interFoam/interDyMFoam/pEqn.H index 4b90d994992..d94e075424a 100644 --- a/applications/solvers/multiphase/interFoam/interDyMFoam/pEqn.H +++ b/applications/solvers/multiphase/interFoam/interDyMFoam/pEqn.H @@ -21,7 +21,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -30,12 +30,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/interFoam/interFoam.C b/applications/solvers/multiphase/interFoam/interFoam.C index d3895c142c1..559916f2ce3 100644 --- a/applications/solvers/multiphase/interFoam/interFoam.C +++ b/applications/solvers/multiphase/interFoam/interFoam.C @@ -84,12 +84,12 @@ int main(int argc, char *argv[]) #include "alphaEqnSubCycle.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interFoam/pEqn.H b/applications/solvers/multiphase/interFoam/pEqn.H index d75a76766ab..a88b5627e2d 100644 --- a/applications/solvers/multiphase/interFoam/pEqn.H +++ b/applications/solvers/multiphase/interFoam/pEqn.H @@ -18,7 +18,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -27,12 +27,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/interFoam/porousInterFoam/porousInterFoam.C b/applications/solvers/multiphase/interFoam/porousInterFoam/porousInterFoam.C index 251a36c997b..891736c77fc 100644 --- a/applications/solvers/multiphase/interFoam/porousInterFoam/porousInterFoam.C +++ b/applications/solvers/multiphase/interFoam/porousInterFoam/porousInterFoam.C @@ -85,12 +85,12 @@ int main(int argc, char *argv[]) #include "alphaEqnSubCycle.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interMixingFoam/interMixingFoam.C b/applications/solvers/multiphase/interMixingFoam/interMixingFoam.C index 73cbee3ae43..d4b1194ba11 100644 --- a/applications/solvers/multiphase/interMixingFoam/interMixingFoam.C +++ b/applications/solvers/multiphase/interMixingFoam/interMixingFoam.C @@ -78,12 +78,12 @@ int main(int argc, char *argv[]) #define twoPhaseProperties threePhaseProperties // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H index b68160e62d4..6e02524e262 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/interPhaseChangeFoam/alphaEqnSubCycle.H @@ -7,7 +7,7 @@ surfaceScalarField rhoPhi mesh ), mesh, - dimensionedScalar("0", dimensionSet(1, 0, -1, 0, 0), 0) + dimensionedScalar("0", dimMass/dimTime, 0) ); { @@ -40,7 +40,7 @@ surfaceScalarField rhoPhi #include "alphaEqn.H" } - if (pimple.nOuterCorr() == 1) + if (pimple.nCorrPIMPLE() == 1) { interface.correct(); } diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/interPhaseChangeFoam.C b/applications/solvers/multiphase/interPhaseChangeFoam/interPhaseChangeFoam.C index 70fd424e626..5ed807bbad4 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/interPhaseChangeFoam.C +++ b/applications/solvers/multiphase/interPhaseChangeFoam/interPhaseChangeFoam.C @@ -85,12 +85,12 @@ int main(int argc, char *argv[]) turbulence->correct(); // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H index 6cfa59cc7c8..c9b65eb9d5a 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H +++ b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H @@ -13,8 +13,9 @@ adjustPhi(phiU, U, p_rgh); - phi = phiU + - ( + phi = + phiU + + ( fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1) - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); @@ -23,7 +24,7 @@ const volScalarField& vDotcP = vDotP[0](); const volScalarField& vDotvP = vDotP[1](); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -33,12 +34,9 @@ p_rghEqn.setReference(pRefCell, pRefValue); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi += p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/correctPhi.H b/applications/solvers/multiphase/multiphaseEulerFoam/correctPhi.H index 92c8676225e..78f93384b0a 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/correctPhi.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/correctPhi.H @@ -34,7 +34,7 @@ adjustPhi(phi, U, pcorr); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pcorrEqn ( @@ -44,7 +44,7 @@ pcorrEqn.setReference(pRefCell, pRefValue); pcorrEqn.solve(); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= pcorrEqn.flux(); } diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/multiphaseEulerFoam.C b/applications/solvers/multiphase/multiphaseEulerFoam/multiphaseEulerFoam.C index b4cc5798350..91a71ce60b6 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/multiphaseEulerFoam.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/multiphaseEulerFoam.C @@ -75,7 +75,7 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { sgsModel->correct(); fluid.solve(); @@ -85,8 +85,8 @@ int main(int argc, char *argv[]) //#include "TEqns.H" #include "UEqns.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H b/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H index 6cbfbf2d16a..3bd26add308 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/pEqn.H @@ -134,7 +134,7 @@ Dp = mag(Dp); adjustPhi(phi, U, p); - for(int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqnIncomp ( @@ -152,7 +152,7 @@ mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) ); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { surfaceScalarField mSfGradp = pEqnIncomp.flux()/Dp; diff --git a/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/MRFMultiphaseInterFoam.C b/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/MRFMultiphaseInterFoam.C index 6769a474749..0179b98e68c 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/MRFMultiphaseInterFoam.C +++ b/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/MRFMultiphaseInterFoam.C @@ -76,12 +76,12 @@ int main(int argc, char *argv[]) #include "zonePhaseVolumes.H" // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/pEqn.H b/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/pEqn.H index 9975ebac832..efb181f3f2d 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/pEqn.H +++ b/applications/solvers/multiphase/multiphaseInterFoam/MRFMultiphaseInterFoam/pEqn.H @@ -14,13 +14,14 @@ adjustPhi(phiU, U, p_rgh); - phi = phiU + - ( - mixture.surfaceTensionForce() - - ghf*fvc::snGrad(rho) - )*rAUf*mesh.magSf(); - - for(int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + phi = + phiU + + ( + mixture.surfaceTensionForce() + - ghf*fvc::snGrad(rho) + )*rAUf*mesh.magSf(); + + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -29,12 +30,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C index 3575c25cda4..9f3fec616b3 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C +++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C @@ -73,12 +73,12 @@ int main(int argc, char *argv[]) rho = mixture.rho(); // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H b/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H index 78bfc89bb47..e7e5bc14cfc 100644 --- a/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H +++ b/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H @@ -19,7 +19,7 @@ - ghf*fvc::snGrad(rho) )*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -28,12 +28,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/settlingFoam/pEqn.H b/applications/solvers/multiphase/settlingFoam/pEqn.H index 7b62411d2d1..d89fd3ef4ed 100644 --- a/applications/solvers/multiphase/settlingFoam/pEqn.H +++ b/applications/solvers/multiphase/settlingFoam/pEqn.H @@ -17,7 +17,7 @@ phi = surfaceScalarField phiU("phiU", phi); phi -= ghf*fvc::snGrad(rho)*rAUf*mesh.magSf(); -for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) +while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -25,9 +25,10 @@ for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) ); p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve(); - if (nonOrth == pimple.nNonOrthCorr()) + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); + + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/settlingFoam/settlingFoam.C b/applications/solvers/multiphase/settlingFoam/settlingFoam.C index 76f141bbea6..3d9fe516d80 100644 --- a/applications/solvers/multiphase/settlingFoam/settlingFoam.C +++ b/applications/solvers/multiphase/settlingFoam/settlingFoam.C @@ -65,7 +65,8 @@ int main(int argc, char *argv[]) #include "rhoEqn.H" - for (pimple.start(); pimple.loop(); pimple++) + // --- Pressure-velocity PIMPLE corrector loop + while (pimple.loop()) { #include "calcVdj.H" @@ -75,8 +76,8 @@ int main(int argc, char *argv[]) #include "correctViscosity.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H b/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H index 01b6442e9df..ac7fc35f68b 100644 --- a/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H +++ b/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H @@ -14,7 +14,7 @@ phi = phiU - ghf*fvc::snGrad(rho)*rAUf*mesh.magSf(); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix p_rghEqn ( @@ -23,12 +23,9 @@ p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); - p_rghEqn.solve - ( - mesh.solver(p_rgh.select(pimple.finalInnerIter(corr, nonOrth))) - ); + p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { phi -= p_rghEqn.flux(); } diff --git a/applications/solvers/multiphase/twoLiquidMixingFoam/twoLiquidMixingFoam.C b/applications/solvers/multiphase/twoLiquidMixingFoam/twoLiquidMixingFoam.C index 465020a7008..8a2b20e153b 100644 --- a/applications/solvers/multiphase/twoLiquidMixingFoam/twoLiquidMixingFoam.C +++ b/applications/solvers/multiphase/twoLiquidMixingFoam/twoLiquidMixingFoam.C @@ -67,7 +67,7 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { twoPhaseProperties.correct(); @@ -75,8 +75,8 @@ int main(int argc, char *argv[]) #include "UEqn.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" } diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H index 53d11f9e069..1788dd2808f 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H @@ -58,7 +58,7 @@ alphaf*rUaAf/rhoa + betaf*rUbAf/rhob ); - for (int nonOrth=0; nonOrth<=pimple.nNonOrthCorr(); nonOrth++) + while (pimple.correctNonOrthogonal()) { fvScalarMatrix pEqn ( @@ -67,12 +67,9 @@ pEqn.setReference(pRefCell, pRefValue); - pEqn.solve - ( - mesh.solver(p.select(pimple.finalInnerIter(corr, nonOrth))) - ); + pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter()))); - if (nonOrth == pimple.nNonOrthCorr()) + if (pimple.finalNonOrthogonalIter()) { surfaceScalarField SfGradp(pEqn.flux()/Dp); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C index 43f353cd1c4..19810a15f19 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/twoPhaseEulerFoam.C @@ -76,14 +76,14 @@ int main(int argc, char *argv[]) Info<< "Time = " << runTime.timeName() << nl << endl; // --- Pressure-velocity PIMPLE corrector loop - for (pimple.start(); pimple.loop(); pimple++) + while (pimple.loop()) { #include "alphaEqn.H" #include "liftDragCoeffs.H" #include "UEqns.H" - // --- PISO loop - for (int corr=0; corr<pimple.nCorr(); corr++) + // --- Pressure corrector loop + while (pimple.correct()) { #include "pEqn.H" -- GitLab