ITHACA-FV
2023.1
Loading...
Searching...
No Matches
src
ITHACA_FOMPROBLEMS
UnsteadyNSTTurb
pEqn.H
Go to the documentation of this file.
1
// Solve pressure equation
2
volScalarField
rAU
(1.0 /
UEqn
.A());
3
volVectorField
HbyA
(constrainHbyA(
rAU
*
UEqn
.H(),
U
,
p
));
4
surfaceScalarField
phiHbyA
5
(
6
"phiHbyA"
,
7
fvc::flux(
HbyA
)
8
+ fvc::interpolate(
rAU
) * fvc::ddtCorr(
U
,
phi
)
9
);
10
11
MRF.makeRelative(
phiHbyA
);
12
13
adjustPhi
(
phiHbyA
,
U
,
p
);
14
15
// Update the pressure BCs to ensure flux consistency
16
constrainPressure
(
p
,
U
,
phiHbyA
,
rAU
, MRF);
17
18
// Non-orthogonal pressure corrector loop
19
while
(piso.correctNonOrthogonal())
20
{
21
// Pressure corrector
22
fvScalarMatrix
pEqn
23
(
24
fvm::laplacian(
rAU
,
p
) == fvc::div(
phiHbyA
)
25
);
26
pEqn
.setReference(
pRefCell
,
pRefValue
);
27
pEqn
.solve(
mesh
.solver(
p
.select(piso.finalInnerIter())));
28
29
if
(piso.finalNonOrthogonalIter())
30
{
31
phi
=
phiHbyA
-
pEqn
.flux();
32
}
33
}
34
35
#include "continuityErrs.H"
36
37
U
=
HbyA
-
rAU
* fvc::grad(
p
);
38
U
.correctBoundaryConditions();
39
fvOptions
.correct(
U
);
mesh
Foam::fvMesh & mesh
Definition
createMesh.H:47
fvOptions
fv::options & fvOptions
Definition
NLsolve.H:25
pEqn
fvScalarMatrix pEqn
Definition
CFM.H:31
rAU
volScalarField rAU(1.0/Ueqn.A())
phiHbyA
phiHbyA
Definition
pcEqn.H:61
HbyA
HbyA
Definition
pcEqn.H:62
phi
surfaceScalarField & phi
Definition
createFields.H:68
U
volVectorField & U
Definition
createFields.H:42
UEqn
fvVectorMatrix & UEqn
Definition
UEqn.H:13
p
volScalarField & p
Definition
createFields.H:42
rAU
volScalarField rAU(1.0/Ueqn.A())
constrainPressure
constrainPressure(p, rho, U, phiHbyA, rhorAUf, MRF)
pRefValue
scalar pRefValue
Definition
createFields.H:79
pRefCell
label pRefCell
Definition
createFields.H:78
adjustPhi
adjustPhi(phiHbyA, U, p)
Generated by
1.13.2