UEqn.H
Go to the documentation of this file.
1 // Solve the Momentum equation
2 
3 MRF.correctBoundaryVelocity(U);
4 
5 tmp<fvVectorMatrix> tUEqn
6 (
7  fvm::ddt(rho, U) + fvm::div(phi, U)
8  + MRF.DDt(rho, U)
9  + turbulence->divDevRhoReff(U)
10  ==
11  fvOptions(rho, U)
12 );
13 fvVectorMatrix& UEqn = tUEqn.ref();
14 
15 UEqn.relax();
16 
17 fvOptions.constrain(UEqn);
18 
19 if (pimple.momentumPredictor())
20 {
21  solve(UEqn == -fvc::grad(p));
22 
23  fvOptions.correct(U);
24  K = 0.5*magSqr(U);
25 }
autoPtr< compressible::turbulenceModel > turbulence
Definition: createFields.H:23
surfaceScalarField & phi
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
Definition: fvcGrad.C:52
U
Definition: pEqn.H:83
solve(UEqn==-fvc::grad(p))
tmp< GeometricField< Type, fvPatchField, volMesh > > div(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
Definition: fvcDiv.C:47
const dictionary & pimple
tmp< fvVectorMatrix > tUEqn(fvm::ddt(rho, U)+fvm::div(phi, U)+MRF.DDt(rho, U)+turbulence->divDevRhoReff(U)==fvOptions(rho, U))
CGAL::Exact_predicates_exact_constructions_kernel K
fv::options & fvOptions
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
Definition: fvcDdt.C:45
IOMRFZoneList & MRF
dimensioned< scalar > magSqr(const dimensioned< Type > &)
fvMatrix< vector > fvVectorMatrix
Definition: fvMatricesFwd.H:45
volScalarField & p