DAFoam
v4.0.2
Discrete Adjoint with OpenFOAM
dafoam
src
adjoint
DASolver
DAIrkPimpleFoam
U2EqnIrkPimple.H
Go to the documentation of this file.
1
// Get nuEff2
2
volScalarField
nuEff2
(
"nuEff2"
, nu + nut2);
3
4
// Initialize U2Eqn w/o ddt term
5
fvVectorMatrix
U2Eqn
(
6
fvm::div(
phi2
,
U2
, divUScheme)
7
//+ turbulence->divDevReff(U)
8
- fvm::laplacian(
nuEff2
,
U2
)
9
- fvc::div(
nuEff2
* dev2(
T
(fvc::grad(
U2
))), divGradUScheme));
10
11
// Update U2Eqn with pseudo-spectral terms
12
forAll
(
U2
, cellI)
13
{
14
scalar meshV =
U2
.mesh().V()[cellI];
15
16
// Add D22 / halfDeltaT[i] * V() to diagonal
17
U2Eqn
.diag()[cellI] += D22 / deltaT * meshV;
// Use one seg for now: halfDeltaTList[segI]
18
19
// Minus D20 / halfDeltaT[i] * T0 * V() to source term
20
U2Eqn
.source()[cellI] -= D20 / deltaT *
U
[cellI] * meshV;
21
22
// Minus D21 / halfDeltaT[i] * T2 * V() to source term
23
U2Eqn
.source()[cellI] -= D21 / deltaT *
U1
[cellI] * meshV;
24
}
25
26
U2Eqn
.relax(relaxUEqn);
27
28
solve
(
U2Eqn
== -fvc::grad(
p2
), solverDictU);
U
volVectorField & U
Definition:
createRefsPimpleDyM.H:7
phi2
phi2
Definition:
p2EqnIrkPimple.H:19
U2
U2
Definition:
p2EqnIrkPimple.H:26
nuEff2
volScalarField nuEff2("nuEff2", nu+nut2)
solve
solve(U2Eqn==-fvc::grad(p2), solverDictU)
U2Eqn
fvVectorMatrix U2Eqn(fvm::div(phi2, U2, divUScheme) - fvm::laplacian(nuEff2, U2) - fvc::div(nuEff2 *dev2(T(fvc::grad(U2))), divGradUScheme))
forAll
forAll(U2, cellI)
Definition:
U2EqnIrkPimple.H:12
T
volScalarField & T
Definition:
createRefsHeatTransfer.H:5
U1
U1
Definition:
p1EqnIrkPimple.H:26
p2
p2
Definition:
p2EqnIrkPimple.H:24
Generated by
1.8.17