pEqn.H
Go to the documentation of this file.
1tmp<volVectorField> tHbyA;
3{
4 tHbyA = constrainHbyA(trTU()&UEqn.H(), U, p);
5}
6else
7{
8 tHbyA = constrainHbyA(trAU()*UEqn.H(), U, p);
9}
10volVectorField& HbyA = tHbyA.ref();
11
12tUEqn.clear();
13surfaceScalarField phiHbyA("phiHbyA", fvc::flux(HbyA));
14
15MRF.makeRelative(phiHbyA);
16
18
19while (simple.correctNonOrthogonal())
20{
21 tmp<fvScalarMatrix> tpEqn;
22
24 {
25 tpEqn = (fvm::laplacian(trTU(), p) == fvc::div(phiHbyA));
26 }
27 else
28 {
29 tpEqn = (fvm::laplacian(trAU(), p) == fvc::div(phiHbyA));
30 }
31
32 fvScalarMatrix pEqn = tpEqn.ref();
33
34 pEqn.setReference(pRefCell, pRefValue);
35
36 pEqn.solve();
37
38 if (simple.finalNonOrthogonalIter())
39 {
40 phi = phiHbyA - pEqn.flux();
41 }
42}
43
44#include "continuityErrs.H"
45
46// Explicitly relax pressure for momentum corrector
47p.relax();
48
50{
51 U = HbyA - (trTU()&fvc::grad(p));
52}
53else
54{
55 U = HbyA - (trAU()*fvc::grad(p));
56}
57
58U.correctBoundaryConditions();
59fvOptions.correct(U);
fv::options & fvOptions
surfaceScalarField & phi
const scalar pRefValue
const label pRefCell
IOMRFZoneList & MRF
U
Definition: pEqn.H:72
volScalarField & p
tmp< fvVectorMatrix > tUEqn(fvm::ddt(rho, U)+fvm::div(phi, U)+MRF.DDt(rho, U)+turbulence->divDevRhoReff(U)==fvOptions(rho, U))
fvVectorMatrix & UEqn
Definition: UEqn.H:13
phiHbyA
Definition: pcEqn.H:73
HbyA
Definition: pcEqn.H:74
tmp< volTensorField > trTU
Definition: UEqn.H:22
tmp< volScalarField > trAU
Definition: UEqn.H:21
tmp< volVectorField > tHbyA
Definition: pEqn.H:4
bool pressureImplicitPorosity(false)
adjustPhi(phiHbyA, U, p_rgh)
const dictionary & simple