UEqnSimple.H
Go to the documentation of this file.
1 // Momentum predictor
2 
3 MRF.correctBoundaryVelocity(U);
4 
5 if (hasFvSource_)
6 {
7  daFvSourcePtr_->calcFvSource(fvSource);
8 }
9 
10 tmp<fvVectorMatrix> tUEqn(
11  fvm::div(phi, U)
12  + fvm::Sp(alphaPorosity, U)
13  + MRF.DDt(U)
14  + turbulencePtr_->divDevReff(U)
15  - fvSource
16  - fvOptions(U));
17 fvVectorMatrix& UEqn = tUEqn.ref();
18 
19 UEqn.relax();
20 
21 fvOptions.constrain(UEqn);
22 
23 if (simple.momentumPredictor())
24 {
25  // get the solver performance info such as initial
26  // and final residuals
27  SolverPerformance<vector> solverU = solve(UEqn == -fvc::grad(p));
28 
29  DAUtility::primalResidualControl(solverU, printToScreen_, "U", daGlobalVarPtr_->primalMaxRes);
30 
31  fvOptions.correct(U);
32 }
33 
34 // bound U
35 DAUtility::boundVar(allOptions, U, printToScreen_);
U
volVectorField & U
Definition: createRefsPimpleDyM.H:7
simple
simpleControl & simple
Definition: createRefsRhoSimpleC.H:5
solve
nuTilda1Eqn solve(solverDictNuTilda)
solverU
SolverPerformance< vector > solverU
Definition: UEqnRhoPimple.H:19
MRF
IOMRFZoneListDF & MRF
Definition: createRefsRhoSimple.H:18
fvSource
volScalarField & fvSource
Definition: createRefsHeatTransfer.H:7
p
volScalarField & p
Definition: createRefsPimpleDyM.H:6
phi
surfaceScalarField & phi
Definition: createRefsPimpleDyM.H:8
allOptions
const dictionary & allOptions
Definition: createRefsPimpleDyM.H:14
alphaPorosity
volScalarField & alphaPorosity
Definition: createRefsSimple.H:9
UEqn
fvVectorMatrix & UEqn
Definition: UEqnSimple.H:17
tUEqn
tmp< fvVectorMatrix > tUEqn(fvm::div(phi, U)+fvm::Sp(alphaPorosity, U)+MRF.DDt(U)+turbulencePtr_->divDevReff(U) - fvSource - fvOptions(U))