From b83af3b085abde7ce80d8213b609666c1c699804 Mon Sep 17 00:00:00 2001 From: Henry Weller <http://cfd.direct> Date: Fri, 12 May 2017 18:34:00 +0100 Subject: [PATCH] rhoPimpleDyMFoam: Updated transonic formulation for consistency with sonicFoam --- .../rhoPimpleFoam/rhoPimpleDyMFoam/pEqn.H | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleDyMFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleDyMFoam/pEqn.H index 0f855626189..1540f601c12 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleDyMFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/rhoPimpleDyMFoam/pEqn.H @@ -1,3 +1,5 @@ +rho = thermo.rho(); + volScalarField rAU(1.0/UEqn.A()); surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU)); volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p)); @@ -27,7 +29,8 @@ if (pimple.transonic()) "phid", (fvc::interpolate(psi)/fvc::interpolate(rho))*phiHbyA ); - phiHbyA -= fvc::interpolate(p)*phid; + + phiHbyA -= fvc::interpolate(psi*p)*phiHbyA/fvc::interpolate(rho); while (pimple.correctNonOrthogonal()) { @@ -86,9 +89,11 @@ U.correctBoundaryConditions(); fvOptions.correct(U); K = 0.5*magSqr(U); -pressureControl.limit(p); -p.correctBoundaryConditions(); -rho = thermo.rho(); +if (pressureControl.limit(p)) +{ + p.correctBoundaryConditions(); + rho = thermo.rho(); +} if (!pimple.transonic()) { -- GitLab