pEqn.H
Go to the documentation of this file.
1rho = thermo.rho();
2
3volScalarField rAU(1.0/UEqn.A());
4volVectorField HbyA(constrainHbyA(invA & UEqn.H(), U, p));
5
6if (pimple.transonic())
7{
8 surfaceScalarField phid
9 (
10 "phid",
11 fvc::interpolate(psi)
12 *(
13 fvc::flux(HbyA)
14 + fvc::interpolate(rho*rAU)*fvc::ddtCorr(rho, U, phi)
15 /fvc::interpolate(rho)
16 )
17 );
18
19 while (pimple.correctNonOrthogonal())
20 {
21 fvScalarMatrix pEqn
22 (
23 betav*fvm::ddt(psi, p)
24 + fvm::div(phid, p)
25 - fvm::laplacian(rho*invA, p)
26 ==
27 betav*fvOptions(psi, p, rho.name())
28 );
29
30 pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
31
32 if (pimple.finalNonOrthogonalIter())
33 {
34 phi == pEqn.flux();
35 }
36 }
37}
38else
39{
40 surfaceScalarField phiHbyA
41 (
42 "phiHbyA",
43 (
44 fvc::flux(rho*HbyA)
45 + fvc::interpolate(rho*rAU)*fvc::ddtCorr(rho, U, phi)
46 )
47 );
48
49 while (pimple.correctNonOrthogonal())
50 {
51 fvScalarMatrix pEqn
52 (
53 betav*fvm::ddt(psi, p)
54 + fvc::div(phiHbyA)
55 - fvm::laplacian(rho*invA, p)
56 ==
57 betav*fvOptions(psi, p, rho.name())
58 );
59
60 pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
61
62 if (pimple.finalNonOrthogonalIter())
63 {
64 phi = phiHbyA + pEqn.flux();
65 }
66 }
67}
68
69#include "rhoEqn.H"
70#include "continuityErrs.H"
71
72U = HbyA - (invA & (betav*fvc::grad(p)));
73U.correctBoundaryConditions();
74fvOptions.correct(U);
75K = 0.5*magSqr(U);
76
77if (thermo.dpdt())
78{
79 dpdt = fvc::ddt(p);
80}
CGAL::Exact_predicates_exact_constructions_kernel K
fv::options & fvOptions
surfaceScalarField & phi
pimpleControl & pimple
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
volSymmTensorField invA(inv(I *UEqn.A()+drag->Dcu()))
U
Definition: pEqn.H:72
volScalarField & p
const volScalarField & psi
fvVectorMatrix & UEqn
Definition: UEqn.H:13
phiHbyA
Definition: pcEqn.H:73
HbyA
Definition: pcEqn.H:74
surfaceScalarField phid("phid", fvc::interpolate(psi) *(fvc::flux(HbyA)+MRF.zeroFilter(rhorAUf *fvc::ddtCorr(rho, U, phi)/fvc::interpolate(rho))))
dynamicFvMesh & mesh
volScalarField & dpdt
tmp< volScalarField > rAU
Definition: initCorrectPhi.H:1
const volScalarField & betav
Solve the continuity for density.