pEqn.H
Go to the documentation of this file.
1volScalarField rAU(1.0/UEqn.A());
2volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p));
3surfaceScalarField phiHbyA
4(
5 "phiHbyA",
6 fvc::flux(HbyA)
7 + MRF.zeroFilter(fvc::interpolate(rAU)*fvc::ddtCorr(U, phi))
8);
9
10MRF.makeRelative(phiHbyA);
11
13
14// Update the pressure BCs to ensure flux consistency
16
17// Non-orthogonal pressure corrector loop
18while (piso.correctNonOrthogonal())
19{
20 // Pressure corrector
21
22 fvScalarMatrix pEqn
23 (
24 fvm::laplacian(rAU, p) == fvc::div(phiHbyA)
25 );
26
27 pEqn.setReference(pRefCell, pRefValue);
28
29 pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
30
31 if (piso.finalNonOrthogonalIter())
32 {
33 phi = phiHbyA - pEqn.flux();
34 }
35}
36
37#include "continuityErrs.H"
38
39U = HbyA - rAU*fvc::grad(p);
40U.correctBoundaryConditions();
41fvOptions.correct(U);
fv::options & fvOptions
surfaceScalarField & phi
const scalar pRefValue
const label pRefCell
IOMRFZoneList & MRF
U
Definition: pEqn.H:72
volScalarField & p
fvVectorMatrix & UEqn
Definition: UEqn.H:13
phiHbyA
Definition: pcEqn.H:73
HbyA
Definition: pcEqn.H:74
dynamicFvMesh & mesh
pisoControl piso(mesh)
adjustPhi(phiHbyA, U, p_rgh)
tmp< volScalarField > rAU
Definition: initCorrectPhi.H:1