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, divUScheme)
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  this->primalResidualControl<vector>(solverU, printToScreen, printInterval, "U");
30 
31  fvOptions.correct(U);
32 }
U
U
Definition: pEqnPimpleDyM.H:60
simple
simpleControl & simple
Definition: createRefsRhoSimpleC.H:5
tUEqn
tmp< fvVectorMatrix > tUEqn(fvm::div(phi, U, divUScheme)+fvm::Sp(alphaPorosity, U)+MRF.DDt(U)+turbulencePtr_->divDevReff(U) - fvSource - fvOptions(U))
MRF
IOMRFZoneListDF & MRF
Definition: createRefsRhoSimple.H:18
fvSource
volScalarField & fvSource
Definition: createRefsHeatTransfer.H:7
p
volScalarField & p
Definition: createRefsPimple.H:6
phi
surfaceScalarField & phi
Definition: createRefsPimple.H:8
primalResidualControl< vector >
this primalResidualControl< vector >(solverU, printToScreen, printInterval, "U")
solve
pseudoPEqn solve(solverDictP_)
alphaPorosity
volScalarField & alphaPorosity
Definition: createRefsSimple.H:9
solverU
SolverPerformance< vector > solverU
Definition: UEqnRhoSimpleC.H:12
UEqn
fvVectorMatrix & UEqn
Definition: UEqnSimple.H:17