void update()
Update MRFZone faces if the mesh topology changes.
const surfaceVectorField & Sf() const
Return cell face area vectors.
bool move()
Move the mesh.
bool moveMeshOuterCorrectors() const
Switch to move the mesh at the start of every PIMPLE.
bool firstIter() const
Flag to indicate the first iteration.
bool changing() const
Is mesh changing.
bool topoChanged() const
Has the mesh topology changed this time-step.
pimpleNoLoopControl pimple
PIMPLE inner-loop controls.
fvMesh & mesh_
Region mesh.
const fvMesh & mesh
Region mesh.
volScalarField & p_rgh
Reference to the buoyant pressure for buoyant cases.
const surfaceScalarField & phi
Reference to the mass-flux field.
volVectorField U_
Velocity field.
autoPtr< surfaceVectorField > Uf
Pointer to the surface momentum field.
virtual void moveMesh()
Called at the start of the PIMPLE loop to move the mesh.
autoPtr< volScalarField > rAU
Inverse momentum equation diagonal.
autoPtr< volScalarField > divU
Pointer to the momentum divergence field.
const volVectorField & U
Reference to the velocity field.
virtual const Foam::pressureReference & pressureReference() const =0
Return the pressure reference.
virtual bool divergent() const =0
Is the flow divergent?
IOMRFZoneList MRF
MRF zone list.
virtual bool incompressible() const =0
Is the flow incompressible?
surfaceScalarField phi_
Volumetric flux field.
virtual tmp< volScalarField > psiByRho() const =0
Return the mixture compressibility/density.
virtual void correctInterface()=0
Correct the interface properties following mesh-change.
Buoyancy related data for the Foam::solvers::isothermalFluid solver module when solving buoyant cases...
void moveMesh()
Update gh and ghf following mesh-motion.
bool correctPhi
Switch to correct the flux after mesh change.
void meshCourantNo() const
Check mesh Courant numbers for moving mesh cases.
Flux correction functions to ensure continuity.
Calculate the divergence of the given field.
Calculate the mesh motion flux and convert fluxes from absolute to relative and back.
void correctPhi(surfaceScalarField &phi, const volVectorField &U, const volScalarField &p, const autoPtr< volScalarField > &rAU, const autoPtr< volScalarField > &divU, const pressureReference &pressureReference, nonOrthogonalSolutionControl &pcorrControl)
tmp< VolField< Type > > div(const SurfaceField< Type > &ssf)
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.
void makeRelative(surfaceScalarField &phi, const volVectorField &U)
Make the given flux relative.
VolField< scalar > volScalarField
void correctUphiBCs(volVectorField &U, surfaceScalarField &phi, const bool evaluateUBCs)
If the mesh is moving correct the velocity BCs on the moving walls to.