Backported multiphase solvers and tutorials (vanilla OF 3.0.1)

This commit is contained in:
Vanja Skuric 2016-05-28 04:11:10 +02:00
parent c9fea670b6
commit 7bd4c355c0
107 changed files with 310 additions and 557 deletions

View file

@ -43,6 +43,7 @@ Description
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "MRFZones.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -51,8 +52,10 @@ int main(int argc, char *argv[])
#include "setRootCase.H"
#include "createTime.H"
#include "createMesh.H"
pimpleControl pimple(mesh);
#include "readGravitationalAcceleration.H"
#include "readPIMPLEControls.H"
#include "initContinuityErrs.H"
#include "createFields.H"
#include "createMRFZones.H"
@ -67,7 +70,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
#include "readPIMPLEControls.H"
#include "readTimeControls.H"
#include "CourantNo.H"
#include "setDeltaT.H"
@ -77,8 +79,7 @@ int main(int argc, char *argv[])
Info<< "Time = " << runTime.timeName() << nl << endl;
// Pressure-velocity corrector
int oCorr = 0;
do
while (pimple.loop())
{
twoPhaseProperties.correct();
@ -87,7 +88,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr=0; corr<nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}
@ -95,7 +96,7 @@ int main(int argc, char *argv[])
# include "continuityErrs.H"
turbulence->correct();
} while (++oCorr < nOuterCorr);
}
runTime.write();

View file

@ -17,7 +17,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -20,7 +20,7 @@
)*rUAf;
adjustPhi(phi, U, p);
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pdEqn
(
@ -29,16 +29,12 @@
pdEqn.setReference(pdRefCell, pdRefValue);
if (corr == nCorr-1 && nonOrth == nNonOrthCorr)
{
pdEqn.solve(mesh.solutionDict().solver(pd.name() + "Final"));
}
else
{
pdEqn.solve(mesh.solutionDict().solver(pd.name()));
}
pdEqn.solve
(
mesh.solutionDict().solver(pd.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pdEqn.flux();
}

View file

@ -30,6 +30,7 @@ Description
\*---------------------------------------------------------------------------*/
#include "fvCFD.H"
#include "pisoControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -40,7 +41,9 @@ int main(int argc, char *argv[])
# include "createTime.H"
# include "createMesh.H"
# include "readPISOControls.H"
pisoControl piso(mesh);
# include "readThermodynamicProperties.H"
# include "readTransportProperties.H"
# include "createFields.H"
@ -61,7 +64,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (piso.correct())
{
# include "pEqn.H"
}

View file

@ -75,3 +75,5 @@
),
(gamma*psig + (1.0 - gamma)*psil)/rho
);
mesh.schemesDict().setFluxRequired(p.name());

View file

@ -15,7 +15,7 @@
surfaceScalarField phip = fvc::interpolate(psiByRho)*phi;
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (piso.correctNonOrthogonal())
{
fvScalarMatrix pEqn
(
@ -29,7 +29,7 @@
+ fvc::div(phi) - pEqn
);
if (nonOrth == nNonOrthCorr)
if (piso.finalNonOrthogonalIter())
{
phi -= pEqn.flux();
}

View file

@ -34,6 +34,7 @@ Description
#include "nearWallDist.H"
#include "wallFvPatch.H"
#include "Switch.H"
#include "pisoControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -43,6 +44,9 @@ int main(int argc, char *argv[])
# include "createTime.H"
# include "createMesh.H"
pisoControl piso(mesh);
# include "readGravitationalAcceleration.H"
# include "createFields.H"
# include "initContinuityErrs.H"
@ -64,7 +68,7 @@ int main(int argc, char *argv[])
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (piso.correct())
{
# include "pEqn.H"

View file

@ -178,4 +178,5 @@
label pRefCell = 0;
scalar pRefValue = 0.0;
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
setRefCell(p, piso.dict(), pRefCell, pRefValue);
mesh.schemesDict().setFluxRequired(p.name());

View file

@ -38,7 +38,7 @@
alphaf*rUaAf/rhoa + betaf*rUbAf/rhob
);
for(int nonOrth = 0; nonOrth <= nNonOrthCorr; nonOrth++)
while (piso.correctNonOrthogonal())
{
fvScalarMatrix pEqn
(
@ -48,7 +48,7 @@
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve();
if (nonOrth == nNonOrthCorr)
if (piso.finalNonOrthogonalIter())
{
surfaceScalarField SfGradp = pEqn.flux()/Dp;

View file

@ -1,5 +1,3 @@
# include "readPISOControls.H"
int nAlphaCorr(readInt(piso.dict().lookup("nAlphaCorr")));
int nAlphaCorr(readInt(piso.lookup("nAlphaCorr")));
Switch correctAlpha(piso.lookup("correctAlpha"));
Switch correctAlpha(piso.dict().lookup("correctAlpha"));

View file

@ -16,7 +16,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve(UEqn == -fvc::grad(p));
}

View file

@ -36,6 +36,7 @@ Description
#include "barotropicCompressibilityModel.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -45,10 +46,12 @@ int main(int argc, char *argv[])
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readThermodynamicProperties.H"
# include "createControls.H"
# include "createFields.H"
# include "initContinuityErrs.H"
# include "compressibleCourantNo.H"
# include "setInitialDeltaT.H"
@ -65,13 +68,13 @@ int main(int argc, char *argv[])
runTime++;
Info<< "Time = " << runTime.timeName() << nl << endl;
for (int outerCorr = 0; outerCorr < nOuterCorr; outerCorr++)
while (pimple.loop())
{
# include "rhoEqn.H"
# include "gammaPsi.H"
# include "UEqn.H"
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}

View file

@ -83,3 +83,6 @@
(
incompressible::turbulenceModel::New(U, phiv, twoPhaseProperties)
);
mesh.schemesDict().setFluxRequired(p.name());
mesh.schemesDict().setFluxRequired(rho.name());

View file

@ -1,5 +1,5 @@
{
if (nOuterCorr == 1)
if (pimple.firstIter())
{
p =
(
@ -26,7 +26,7 @@
# include "resetPhivPatches.H"
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pEqn
(
@ -37,16 +37,12 @@
- fvm::laplacian(rUAf, p)
);
if (corr == nCorr - 1 && nonOrth == nNonOrthCorr)
{
pEqn.solve(mesh.solutionDict().solver(p.name() + "Final"));
}
else
{
pEqn.solve(mesh.solutionDict().solver(p.name()));
}
pEqn.solve
(
mesh.solutionDict().solver(p.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phiv += (phiGradp + pEqn.flux())/rhof;
}
@ -82,9 +78,9 @@
U = HbyA - rUA*fvc::grad(p);
// Remove the swirl component of velocity for "wedge" cases
if (piso.found("removeSwirl"))
if (pimple.dict().found("removeSwirl"))
{
label swirlCmpt(readLabel(piso.lookup("removeSwirl")));
label swirlCmpt(readLabel(pimple.dict().lookup("removeSwirl")));
Info<< "Removing swirl component-" << swirlCmpt << " of U" << endl;
U.field().replace(swirlCmpt, 0.0);

View file

@ -1,5 +1,3 @@
#include "readTimeControls.H"
maxAcousticCo = readScalar(runTime.controlDict().lookup("maxAcousticCo"));
#include "readPISOControls.H"

View file

@ -16,7 +16,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -1,12 +1,12 @@
{
label nAlphaCorr
(
readLabel(piso.lookup("nAlphaCorr"))
readLabel(pimple.dict().lookup("nAlphaCorr"))
);
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
surfaceScalarField phic = mag(phi/mesh.magSf());
@ -38,7 +38,7 @@
# include "alphaEqns.H"
}
if (oCorr == 0)
if (pimple.firstIter())
{
interface.correct();
}

View file

@ -43,6 +43,7 @@ Description
#include "interfaceProperties.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -51,6 +52,9 @@ int main(int argc, char *argv[])
#include "setRootCase.H"
#include "createTime.H"
#include "createDynamicFvMesh.H"
pimpleControl pimple(mesh);
#include "readGravitationalAcceleration.H"
#include "createControls.H"
#include "initContinuityErrs.H"
@ -101,7 +105,7 @@ int main(int argc, char *argv[])
turbulence->correct();
// --- Outer-corrector loop
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
while (pimple.loop())
{
#include "alphaEqnsSubCycle.H"
@ -110,7 +114,7 @@ int main(int argc, char *argv[])
#include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
#include "pEqn.H"
}

View file

@ -44,7 +44,7 @@
mesh.schemesDict().setFluxRequired(pcorr.name());
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pcorrEqn
(
@ -53,7 +53,7 @@
pcorrEqn.solve();
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pcorrEqn.flux();
}

View file

@ -1,27 +1,24 @@
#include "readPISOControls.H"
#include "createTimeControls.H"
#include "createTimeControls.H"
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
);
label nAlphaSubCycles
(
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
if (nAlphaSubCycles > 1 && nOuterCorr != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
bool correctPhi = true;
if (piso.found("correctPhi"))
{
correctPhi = Switch(piso.lookup("correctPhi"));
}
bool correctPhi
(
pimple.dict().lookupOrDefault("correctPhi", true)
);
bool checkMeshCourantNo = false;
if (piso.found("checkMeshCourantNo"))
{
checkMeshCourantNo = Switch(piso.lookup("checkMeshCourantNo"));
}
bool checkMeshCourantNo
(
pimple.dict().lookupOrDefault("checkMeshCourantNo", false)
);

View file

@ -142,3 +142,5 @@
pcorrTypes[i] = fixedValueFvPatchScalarField::typeName;
}
}
mesh.schemesDict().setFluxRequired(p.name());

View file

@ -4,7 +4,7 @@
tmp<fvScalarMatrix> pEqnComp;
if (transonic)
if (pimple.transonic())
{
pEqnComp =
(fvm::ddt(p) + fvm::div(phi, p) - fvm::Sp(fvc::div(phi), p));
@ -31,7 +31,7 @@
+ fvc::interpolate(rho)*(g & mesh.Sf())
)*rUAf;
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pEqnIncomp
(
@ -39,12 +39,7 @@
- fvm::laplacian(rUAf, p)
);
if
(
oCorr == nOuterCorr-1
&& corr == nCorr-1
&& nonOrth == nNonOrthCorr
)
if (pimple.finalInnerIter())
{
solve
(
@ -70,7 +65,7 @@
);
}
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
dgdt =
(pos(alpha2)*(psi2/rho2) - pos(alpha1)*(psi1/rho1))

View file

@ -1,24 +1,15 @@
#include "readPISOControls.H"
#include "readTimeControls.H"
#include "readTimeControls.H"
nAlphaSubCycles = readLabel(piso.lookup("nAlphaSubCycles"));
nAlphaSubCycles = readLabel(pimple.dict().lookup("nAlphaSubCycles"));
if (nAlphaSubCycles > 1 && nOuterCorr != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
correctPhi = true;
if (piso.found("correctPhi"))
{
correctPhi = Switch(piso.lookup("correctPhi"));
}
correctPhi = pimple.dict().lookupOrDefault("correctPhi", true);
checkMeshCourantNo = false;
if (piso.found("checkMeshCourantNo"))
{
checkMeshCourantNo = Switch(piso.lookup("checkMeshCourantNo"));
}
checkMeshCourantNo = pimple.dict().lookupOrDefault("checkMeshCourantNo", false);

View file

@ -16,7 +16,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -1,12 +1,12 @@
{
label nAlphaCorr
(
readLabel(piso.lookup("nAlphaCorr"))
readLabel(pimple.dict().lookup("nAlphaCorr"))
);
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
surfaceScalarField phic = mag(phi/mesh.magSf());
@ -36,7 +36,7 @@
#include "alphaEqns.H"
}
if (oCorr == 0)
if (pimple.firstIter())
{
interface.correct();
}

View file

@ -41,6 +41,7 @@ Description
#include "interfaceProperties.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -49,9 +50,11 @@ int main(int argc, char *argv[])
#include "setRootCase.H"
#include "createTime.H"
#include "createMesh.H"
pimpleControl pimple(mesh);
#include "readGravitationalAcceleration.H"
#include "createControls.H"
#include "initContinuityErrs.H"
#include "createFields.H"
#include "CourantNo.H"
#include "setInitialDeltaT.H"
@ -71,7 +74,7 @@ int main(int argc, char *argv[])
Info<< "Time = " << runTime.timeName() << nl << endl;
// --- Outer-corrector loop
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
while (pimple.loop())
{
#include "alphaEqnsSubCycle.H"
@ -80,7 +83,7 @@ int main(int argc, char *argv[])
#include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
#include "pEqn.H"
}

View file

@ -1,15 +1,14 @@
#include "readPISOControls.H"
#include "createTimeControls.H"
#include "createTimeControls.H"
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
);
label nAlphaSubCycles
(
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
if (nAlphaSubCycles > 1 && nOuterCorr != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}

View file

@ -127,3 +127,5 @@
(
incompressible::turbulenceModel::New(U, phi, twoPhaseProperties)
);
mesh.schemesDict().setFluxRequired(p.name());

View file

@ -4,7 +4,7 @@
tmp<fvScalarMatrix> pEqnComp;
if (transonic)
if (pimple.transonic())
{
pEqnComp =
(fvm::ddt(p) + fvm::div(phi, p) - fvm::Sp(fvc::div(phi), p));
@ -30,7 +30,7 @@
+ fvc::interpolate(rho)*(g & mesh.Sf())
)*rUAf;
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pEqnIncomp
(
@ -48,7 +48,7 @@
+ pEqnIncomp
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
dgdt =
(pos(alpha2)*(psi2/rho2) - pos(alpha1)*(psi1/rho1))

View file

@ -1,12 +1,11 @@
#include "readPISOControls.H"
#include "readTimeControls.H"
#include "readTimeControls.H"
nAlphaSubCycles = readLabel(piso.lookup("nAlphaSubCycles"));
nAlphaSubCycles = readLabel(pimple.dict().lookup("nAlphaSubCycles"));
if (nAlphaSubCycles > 1 && nOuterCorr != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}
if (nAlphaSubCycles > 1 && pimple.nCorrPIMPLE() != 1)
{
FatalErrorIn(args.executable())
<< "Sub-cycling alpha is only allowed for PISO, "
"i.e. when the number of outer-correctors = 1"
<< exit(FatalError);
}

View file

@ -29,7 +29,7 @@
mesh.schemesDict().setFluxRequired(pcorr.name());
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pcorrEqn
(
@ -39,7 +39,7 @@
pcorrEqn.setReference(pdRefCell, pdRefValue);
pcorrEqn.solve();
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pcorrEqn.flux();
}

View file

@ -1,13 +1,11 @@
# include "createTimeControls.H"
#include "createTimeControls.H"
bool correctPhi = true;
if (pimple.found("correctPhi"))
{
correctPhi = Switch(pimple.lookup("correctPhi"));
}
bool correctPhi
(
pimple.dict().lookupOrDefault("correctPhi", true)
);
bool checkMeshCourantNo = false;
if (pimple.found("checkMeshCourantNo"))
{
checkMeshCourantNo = Switch(pimple.lookup("checkMeshCourantNo"));
}
bool checkMeshCourantNo
(
pimple.dict().lookupOrDefault("checkMeshCourantNo", false)
);

View file

@ -123,22 +123,14 @@
label pdRefCell = 0;
scalar pdRefValue = 0.0;
setRefCell
(
pd,
mesh.solutionDict().subDict("PIMPLE"),
pdRefCell,
pdRefValue
);
setRefCell(pd, pimple.dict(), pdRefCell, pdRefValue);
mesh.schemesDict().setFluxRequired(pd.name());
scalar pRefValue = 0.0;
if (pd.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PIMPLE").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(

View file

@ -39,6 +39,7 @@ Description
#include "interfaceProperties.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -47,8 +48,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createDynamicFvMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPIMPLEControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createControls.H"
@ -96,8 +99,7 @@ int main(int argc, char *argv[])
}
// Pressure-velocity corrector
int oCorr = 0;
do
while (pimple.loop())
{
twoPhaseProperties.correct();
@ -106,7 +108,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}
@ -124,7 +126,7 @@ int main(int argc, char *argv[])
}
turbulence->correct();
} while (++oCorr < nOuterCorr);
}
runTime.write();

View file

@ -17,7 +17,7 @@
)*rAUf*mesh.magSf();
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pdEqn
(
@ -26,16 +26,12 @@
pdEqn.setReference(pdRefCell, pdRefValue);
if (corr == nCorr - 1 && nonOrth == nNonOrthCorr)
{
pdEqn.solve(mesh.solutionDict().solver(pd.name() + "Final"));
}
else
{
pdEqn.solve(mesh.solutionDict().solver(pd.name()));
}
pdEqn.solve
(
mesh.solutionDict().solver(pd.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pdEqn.flux();
}

View file

@ -1,14 +1,5 @@
# include "readTimeControls.H"
# include "readPIMPLEControls.H"
#include "readTimeControls.H"
correctPhi = true;
if (pimple.found("correctPhi"))
{
correctPhi = Switch(pimple.lookup("correctPhi"));
}
correctPhi = pimple.dict().lookupOrDefault("correctPhi", true);
checkMeshCourantNo = false;
if (pimple.found("checkMeshCourantNo"))
{
checkMeshCourantNo = Switch(pimple.lookup("checkMeshCourantNo"));
}
checkMeshCourantNo = pimple.dict().lookupOrDefault("checkMeshCourantNo", false);

View file

@ -16,7 +16,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -1,11 +1,11 @@
label nAlphaCorr
(
readLabel(pimple.lookup("nAlphaCorr"))
readLabel(pimple.dict().lookup("nAlphaCorr"))
);
label nAlphaSubCycles
(
readLabel(pimple.lookup("nAlphaSubCycles"))
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
if (nAlphaSubCycles > 1)

View file

@ -36,7 +36,7 @@
mesh.schemesDict().setFluxRequired(pcorr.name());
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pcorrEqn
(
@ -46,7 +46,7 @@
pcorrEqn.setReference(pdRefCell, pdRefValue);
pcorrEqn.solve();
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pcorrEqn.flux();
}

View file

@ -103,22 +103,14 @@
label pdRefCell = 0;
scalar pdRefValue = 0.0;
setRefCell
(
pd,
mesh.solutionDict().subDict("PIMPLE"),
pdRefCell,
pdRefValue
);
setRefCell(pd, pimple.dict(), pdRefCell, pdRefValue);
mesh.schemesDict().setFluxRequired(pd.name());
scalar pRefValue = 0.0;
if (pd.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PIMPLE").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(

View file

@ -43,6 +43,7 @@ Description
#include "interfaceProperties.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -51,8 +52,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPIMPLEControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createTimeControls.H"
@ -66,7 +69,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPIMPLEControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -76,8 +78,7 @@ int main(int argc, char *argv[])
Info<< "Time = " << runTime.timeName() << nl << endl;
// Pressure-velocity corrector
int oCorr = 0;
do
while (pimple.loop())
{
twoPhaseProperties.correct();
@ -86,7 +87,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}
@ -106,7 +107,7 @@ int main(int argc, char *argv[])
}
turbulence->correct();
} while (++oCorr < nOuterCorr);
}
runTime.write();

View file

@ -20,7 +20,7 @@
)*rUAf*mesh.magSf();
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pdEqn
(
@ -29,16 +29,12 @@
pdEqn.setReference(pdRefCell, pdRefValue);
if (corr == nCorr - 1 && nonOrth == nNonOrthCorr)
{
pdEqn.solve(mesh.solutionDict().solver(pd.name() + "Final"));
}
else
{
pdEqn.solve(mesh.solutionDict().solver(pd.name()));
}
pdEqn.solve
(
mesh.solutionDict().solver(pd.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pdEqn.flux();
}

View file

@ -1,11 +1,11 @@
label nAlphaCorr
(
readLabel(piso.lookup("nAlphaCorr"))
readLabel(pimple.dict().lookup("nAlphaCorr"))
);
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
if (nAlphaSubCycles > 1)

View file

@ -135,16 +135,14 @@
label pdRefCell = 0;
scalar pdRefValue = 0.0;
setRefCell(pd, mesh.solutionDict().subDict("PISO"), pdRefCell, pdRefValue);
setRefCell(pd, pimple.dict(), pdRefCell, pdRefValue);
mesh.schemesDict().setFluxRequired(pd.name());
scalar pRefValue = 0.0;
if (pd.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PISO").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(
@ -163,3 +161,5 @@
(
incompressible::turbulenceModel::New(U, phi, threePhaseProperties)
);
mesh.schemesDict().setFluxRequired(alpha2.name());

View file

@ -36,6 +36,7 @@ Description
#include "threePhaseMixture.H"
#include "threePhaseInterfaceProperties.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -44,8 +45,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPISOControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createTimeControls.H"
@ -59,7 +62,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPISOControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -76,7 +78,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}

View file

@ -170,7 +170,7 @@ Foam::threePhaseInterfaceProperties::threePhaseInterfaceProperties
(
readScalar
(
mixture.U().mesh().solutionDict().subDict("PISO").lookup("cAlpha")
mixture.U().mesh().solutionDict().subDict("PIMPLE").lookup("cAlpha")
)
),
sigma12_(mixture.lookup("sigma12")),

View file

@ -17,7 +17,7 @@
UEqn.relax();
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -13,12 +13,12 @@ surfaceScalarField rhoPhi
{
label nAlphaCorr
(
readLabel(piso.lookup("nAlphaCorr"))
readLabel(pimple.dict().lookup("nAlphaCorr"))
);
label nAlphaSubCycles
(
readLabel(piso.lookup("nAlphaSubCycles"))
readLabel(pimple.dict().lookup("nAlphaSubCycles"))
);
surfaceScalarField phic = mag(phi/mesh.magSf());
@ -44,7 +44,7 @@ surfaceScalarField rhoPhi
# include "alphaEqn.H"
}
if (nOuterCorr == 1)
if (pimple.nCorrPIMPLE() == 1)
{
interface.correct();
}

View file

@ -36,7 +36,7 @@
mesh.schemesDict().setFluxRequired(pcorr.name());
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pcorrEqn
(
@ -46,7 +46,7 @@
pcorrEqn.setReference(pdRefCell, pdRefValue);
pcorrEqn.solve();
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pcorrEqn.flux();
}

View file

@ -103,16 +103,14 @@
label pdRefCell = 0;
scalar pdRefValue = 0.0;
setRefCell(pd, mesh.solutionDict().subDict("PISO"), pdRefCell, pdRefValue);
setRefCell(pd, pimple.dict(), pdRefCell, pdRefValue);
mesh.schemesDict().setFluxRequired(pd.name());
scalar pRefValue = 0.0;
if (pd.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PISO").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(

View file

@ -46,6 +46,7 @@ Description
#include "interfaceProperties.H"
#include "phaseChangeTwoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -54,8 +55,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPISOControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createTimeControls.H"
@ -69,7 +72,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPISOControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -83,12 +85,12 @@ int main(int argc, char *argv[])
turbulence->correct();
// --- Outer-corrector loop
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
while (pimple.loop())
{
#include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}

View file

@ -24,7 +24,7 @@
const volScalarField& vDotcP = vDotP[0]();
const volScalarField& vDotvP = vDotP[1]();
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pdEqn
(
@ -34,16 +34,12 @@
pdEqn.setReference(pdRefCell, pdRefValue);
if (corr == nCorr - 1 && nonOrth == nNonOrthCorr)
{
pdEqn.solve(mesh.solutionDict().solver(pd.name() + "Final"));
}
else
{
pdEqn.solve(mesh.solutionDict().solver(pd.name()));
}
pdEqn.solve
(
mesh.solutionDict().solver(pd.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi += pdEqn.flux();
}

View file

@ -65,16 +65,14 @@
label pdRefCell = 0;
scalar pdRefValue = 0.0;
setRefCell(pd, mesh.solutionDict().subDict("PISO"), pdRefCell, pdRefValue);
setRefCell(pd, pimple.dict(), pdRefCell, pdRefValue);
mesh.schemesDict().setFluxRequired(pd.name());
scalar pRefValue = 0.0;
if (pd.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PISO").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(

View file

@ -35,6 +35,7 @@ Description
#include "fvCFD.H"
#include "multiphaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -43,8 +44,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPISOControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createTimeControls.H"
@ -58,7 +61,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPISOControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -73,7 +75,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}

View file

@ -265,23 +265,23 @@ void Foam::multiphaseMixture::correct()
(
readLabel
(
mesh_.solutionDict().subDict("PISO").lookup("nAlphaSubCycles")
mesh_.solutionDict().subDict("PIMPLE").lookup("nAlphaSubCycles")
)
);
label nAlphaCorr
(
readLabel(mesh_.solutionDict().subDict("PISO").lookup("nAlphaCorr"))
readLabel(mesh_.solutionDict().subDict("PIMPLE").lookup("nAlphaCorr"))
);
bool cycleAlpha
(
Switch(mesh_.solutionDict().subDict("PISO").lookup("cycleAlpha"))
Switch(mesh_.solutionDict().subDict("PIMPLE").lookup("cycleAlpha"))
);
scalar cAlpha
(
readScalar(mesh_.solutionDict().subDict("PISO").lookup("cAlpha"))
readScalar(mesh_.solutionDict().subDict("PIMPLE").lookup("cAlpha"))
);

View file

@ -18,7 +18,7 @@
adjustPhi(phi, U, pd);
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pdEqn
(
@ -27,16 +27,12 @@
pdEqn.setReference(pdRefCell, pdRefValue);
if (corr == nCorr - 1)
{
pdEqn.solve(mesh.solutionDict().solver(pd.name() + "Final"));
}
else
{
pdEqn.solve(mesh.solutionDict().solver(pd.name()));
}
pdEqn.solve
(
mesh.solutionDict().solver(pd.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pdEqn.flux();
}

View file

@ -21,7 +21,7 @@
pZones.addResistance(UEqn);
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -45,6 +45,7 @@ Description
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "porousZones.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -53,8 +54,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPIMPLEControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createPorousZones.H"
@ -69,7 +72,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPIMPLEControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -79,8 +81,7 @@ int main(int argc, char *argv[])
Info<< "Time = " << runTime.timeName() << nl << endl;
// Pressure-velocity corrector
int oCorr = 0;
do
while (pimple.loop())
{
twoPhaseProperties.correct();
@ -89,7 +90,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}
@ -97,7 +98,7 @@ int main(int argc, char *argv[])
# include "continuityErrs.H"
turbulence->correct();
} while (++oCorr < nOuterCorr);
}
runTime.write();

View file

@ -12,7 +12,7 @@ fvVectorMatrix UEqn
- fvm::laplacian(mu, U, "laplacian(muEff,U)")
);
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(

View file

@ -1,4 +1,4 @@
scalar sumLocalContErr =
sumLocalContErr =
runTime.deltaT().value()*
mag
(
@ -6,7 +6,7 @@
+ fvc::div(phi)
)().weightedAverage(rho*mesh.V()).value();
scalar globalContErr =
globalContErr =
runTime.deltaT().value()*
(
fvc::ddt(rho)

View file

@ -133,8 +133,8 @@
label pRefCell = 0;
scalar pRefValue = 0.0;
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
setRefCell(p, pimple.dict(), pRefCell, pRefValue);
mesh.schemesDict().setFluxRequired(p.name());
Info<< "Calculating field mul\n" << endl;
volScalarField mul

View file

@ -17,7 +17,7 @@ phi =
surfaceScalarField phiU("phiU", phi);
phi -= ghf*fvc::snGrad(rho)*rUAf*mesh.magSf();
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix pEqn
(
@ -27,7 +27,7 @@ for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve();
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= pEqn.flux();
}

View file

@ -37,6 +37,7 @@ Description
#include "Switch.H"
#include "plasticViscosity.H"
#include "yieldStress.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -46,6 +47,9 @@ int main(int argc, char *argv[])
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "createFields.H"
# include "initContinuityErrs.H"
@ -59,12 +63,11 @@ int main(int argc, char *argv[])
{
Info<< "Time = " << runTime.timeName() << nl << endl;
# include "readPISOControls.H"
# include "compressibleCourantNo.H"
# include "rhoEqn.H"
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
while (pimple.loop())
{
# include "calcVdj.H"
@ -75,7 +78,7 @@ int main(int argc, char *argv[])
# include "correctViscosity.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "pEqn.H"
}

View file

@ -14,23 +14,12 @@
//- fvc::div(muEff*(fvc::interpolate(dev(fvc::grad(U))) & mesh.Sf()))
);
if (oCorr == nOuterCorr-1)
{
if (mesh.solutionDict().relax("UFinal"))
{
UEqn.relax(mesh.solutionDict().relaxationFactor("UFinal"));
}
else
{
UEqn.relax(1);
}
}
else
{
UEqn.relax();
}
UEqn.relax
(
mesh.solutionDict().relaxationFactor(U.select(pimple.finalIter()))
);
if (momentumPredictor)
if (pimple.momentumPredictor())
{
solve
(
@ -40,6 +29,6 @@
(
(- ghf*fvc::snGrad(rho) - fvc::snGrad(p_rgh))*mesh.magSf()
),
mesh.solutionDict().solver(oCorr == nOuterCorr-1 ? "UFinal" : "U")
mesh.solutionDict().solver((U.select(pimple.finalIter())))
);
}

View file

@ -93,22 +93,14 @@
label p_rghRefCell = 0;
scalar p_rghRefValue = 0.0;
setRefCell
(
p_rgh,
mesh.solutionDict().subDict("PIMPLE"),
p_rghRefCell,
p_rghRefValue
);
setRefCell(p_rgh, pimple.dict(), p_rghRefCell, p_rghRefValue);
mesh.schemesDict().setFluxRequired(p_rgh.name());
scalar pRefValue = 0.0;
if (p_rgh.needReference())
{
pRefValue = readScalar
(
mesh.solutionDict().subDict("PIMPLE").lookup("pRefValue")
);
pRefValue = readScalar(pimple.dict().lookup("pRefValue"));
p += dimensionedScalar
(

View file

@ -13,7 +13,7 @@
phi = phiU - ghf*fvc::snGrad(rho)*rUAf*mesh.magSf();
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (pimple.correctNonOrthogonal())
{
fvScalarMatrix p_rghEqn
(
@ -24,14 +24,10 @@
p_rghEqn.solve
(
mesh.solutionDict().solver
(
p_rgh.name()
+ ((corr == nCorr - 1 && nonOrth == nNonOrthCorr) ? "Final" : "")
)
mesh.solutionDict().solver(p_rgh.select(pimple.finalInnerIter()))
);
if (nonOrth == nNonOrthCorr)
if (pimple.finalNonOrthogonalIter())
{
phi -= p_rghEqn.flux();
}

View file

@ -34,6 +34,7 @@ Description
#include "fvCFD.H"
#include "twoPhaseMixture.H"
#include "turbulenceModel.H"
#include "pimpleControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -42,8 +43,10 @@ int main(int argc, char *argv[])
# include "setRootCase.H"
# include "createTime.H"
# include "createMesh.H"
pimpleControl pimple(mesh);
# include "readGravitationalAcceleration.H"
# include "readPIMPLEControls.H"
# include "initContinuityErrs.H"
# include "createFields.H"
# include "createTimeControls.H"
@ -56,7 +59,6 @@ int main(int argc, char *argv[])
while (runTime.run())
{
# include "readPIMPLEControls.H"
# include "readTimeControls.H"
# include "CourantNo.H"
# include "setDeltaT.H"
@ -66,7 +68,7 @@ int main(int argc, char *argv[])
Info<< "Time = " << runTime.timeName() << nl << endl;
// --- Pressure-velocity PIMPLE corrector loop
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
while (pimple.loop())
{
twoPhaseProperties.correct();
@ -75,7 +77,7 @@ int main(int argc, char *argv[])
# include "UEqn.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (pimple.correct())
{
# include "p_rghEqn.H"
}

View file

@ -355,4 +355,5 @@
label pRefCell = 0;
scalar pRefValue = 0.0;
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
setRefCell(p, piso.dict(), pRefCell, pRefValue);
mesh.schemesDict().setFluxRequired(p.name());

View file

@ -47,7 +47,7 @@
surfaceScalarField Dp("(rho*(1|A(U)))", alphaf*rUaAf/rhoa + betaf*rUbAf/rhob);
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
while (piso.correctNonOrthogonal())
{
fvScalarMatrix pEqn
(
@ -57,7 +57,7 @@
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve();
if (nonOrth == nNonOrthCorr)
if (piso.finalNonOrthogonalIter())
{
surfaceScalarField SfGradp = pEqn.flux()/Dp;

View file

@ -1,6 +1,5 @@
# include "readTimeControls.H"
# include "readPISOControls.H"
int nAlphaCorr(readInt(piso.lookup("nAlphaCorr")));
int nAlphaCorr(readInt(piso.dict().lookup("nAlphaCorr")));
Switch correctAlpha(piso.lookup("correctAlpha"));
Switch correctAlpha(piso.dict().lookup("correctAlpha"));

View file

@ -41,6 +41,7 @@ Description
#include "dragModel.H"
#include "phaseModel.H"
#include "kineticTheoryModel.H"
#include "pisoControl.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -50,6 +51,9 @@ int main(int argc, char *argv[])
# include "createTime.H"
# include "createMesh.H"
pisoControl piso(mesh);
# include "readGravitationalAcceleration.H"
# include "createFields.H"
# include "readPPProperties.H"
@ -78,11 +82,11 @@ int main(int argc, char *argv[])
# include "UEqns.H"
// --- PISO loop
for (int corr = 0; corr < nCorr; corr++)
while (piso.correct())
{
# include "pEqn.H"
if (correctAlpha && corr < nCorr - 1)
if (correctAlpha && !piso.finalInnerIter())
{
# include "alphaEqn.H"
}

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd ;
pcorr ;
alpha1 ;
}
// ************************************************************************* //

View file

@ -50,9 +50,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
p;
}
// ************************************************************************* //

View file

@ -54,10 +54,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
p;
}
// ************************************************************************* //

View file

@ -55,11 +55,4 @@ snGradSchemes
snGrad(p) corrected;
}
fluxRequired
{
default none;
p ;
rho ;
}
// ************************************************************************* //

View file

@ -78,14 +78,10 @@ solvers
}
}
PISO
PIMPLE
{
nCorrectors 3;
nNonOrthogonalCorrectors 0;
}
SIMPLE
{
}
// ************************************************************************* //

View file

@ -55,11 +55,4 @@ snGradSchemes
snGrad(p) corrected;
}
fluxRequired
{
default none;
p ;
rho ;
}
// ************************************************************************* //

View file

@ -78,14 +78,10 @@ solvers
}
}
PISO
PIMPLE
{
nCorrectors 3;
nNonOrthogonalCorrectors 0;
}
SIMPLE
{
}
// ************************************************************************* //

View file

@ -58,11 +58,4 @@ snGradSchemes
snGrad(p) corrected;
}
fluxRequired
{
default none;
p;
rho;
}
// ************************************************************************* //

View file

@ -83,7 +83,7 @@ solvers
};
}
PISO
PIMPLE
{
nCorrectors 2;
nNonOrthogonalCorrectors 1;
@ -91,7 +91,4 @@ PISO
// removeSwirl 2;
}
SIMPLE
{}
// ************************************************************************* //

View file

@ -53,12 +53,4 @@ snGradSchemes
default uncorrected;
}
fluxRequired
{
default no;
p;
pcorr;
gamma;
}
// ************************************************************************* //

View file

@ -123,6 +123,11 @@ solvers
}
PISO
{
cAlpha 4;
}
PIMPLE
{
momentumPredictor no;
transSonic no;
@ -131,7 +136,6 @@ PISO
nNonOrthogonalCorrectors 0;
nAlphaCorr 1;
nAlphaSubCycles 1;
cAlpha 4;
}
// ************************************************************************* //

View file

@ -53,12 +53,4 @@ snGradSchemes
default uncorrected;
}
fluxRequired
{
default no;
p;
pcorr;
gamma;
}
// ************************************************************************* //

View file

@ -123,6 +123,11 @@ solvers
}
PISO
{
cAlpha 4;
}
PIMPLE
{
momentumPredictor no;
transSonic no;
@ -131,7 +136,6 @@ PISO
nNonOrthogonalCorrectors 0;
nAlphaCorr 1;
nAlphaSubCycles 1;
cAlpha 4;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
p ;
pcorr ;
alpha ;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd ;
pcorr ;
alpha ;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha;
}
// ************************************************************************* //

View file

@ -49,12 +49,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha1;
}
// ************************************************************************* //

View file

@ -53,12 +53,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha1;
}
// ************************************************************************* //

View file

@ -54,12 +54,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
alpha1;
}
// ************************************************************************* //

View file

@ -47,12 +47,4 @@ snGradSchemes
default corrected;
}
fluxRequired
{
default no;
pd;
pcorr;
"alpha.";
}
// ************************************************************************* //

View file

@ -59,7 +59,7 @@ solvers
}
}
PISO
PIMPLE
{
momentumPredictor no;
nCorrectors 3;

View file

@ -98,7 +98,7 @@ solvers
}
}
PISO
PIMPLE
{
nCorrectors 4;
nNonOrthogonalCorrectors 0;

View file

@ -98,7 +98,7 @@ solvers
}
}
PISO
PIMPLE
{
nCorrectors 4;
nNonOrthogonalCorrectors 0;

Some files were not shown because too many files have changed in this diff Show more