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