68 void Foam::solvers::multiphaseEuler::correctCoNum()
75 forAll(movingPhases, movingPhasei)
85 CoNum_ = 0.5*
gMax(sumPhi/mesh.V().primitiveField())*runTime.deltaTValue();
89 *(
gSum(sumPhi)/
gSum(mesh.V().primitiveField()))
90 *runTime.deltaTValue();
120 pimple.
dict().lookupOrDefault<int>(
"nEnergyCorrectors", 1)
130 fv::localEulerDdt::rDeltaTName,
138 extrapolatedCalculatedFvPatchScalarField::typeName
150 fv::localEulerDdt::rDeltaTfName,
168 phases_(fluid_.phases()),
170 movingPhases_(fluid_.movingPhases()),
183 fluid_.incompressible()
190 movingPhases(movingPhases_),
251 fluid_.correctContinuityError();
256 fluid_.predictMomentumTransport();
265 fluid_.correctMomentumTransport();
266 fluid_.correctThermophysicalTransport();
#define forAll(list, i)
Loop across all elements in list.
Macros for easy insertion into run-time selection tables.
Generic GeometricField class.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
const word & name() const
Return name.
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T, if not found return the given default.
Base-class for fluid thermodynamic properties.
Mesh data needed to do the Finite Volume discretisation.
const fvSchemes & schemes() const
Return the fvSchemes.
virtual void preUpdateMesh()
Prepare for mesh update.
void setFluxRequired(const word &name) const
Class to represent a system of phases and model interfacial transfers between them.
Provides controls for the pressure reference in closed-volume simulations.
virtual const dictionary & dict() const
Return the solution dictionary.
Abstract base class for run-time selectable region solvers.
pimpleNoLoopControl pimple
PIMPLE inner-loop controls.
const fvMesh & mesh
Region mesh.
Buoyancy related data for the Foam::solvers::isothermalFluid solver module when solving buoyant cases...
Base solver module for fluid solvers.
virtual bool read()
Read controls.
Solver module for steady or transient turbulent flow of compressible fluids with heat-transfer for HV...
Solver module for a system of any number of compressible fluid phases with a common pressure,...
volScalarField & p_rgh
Reference to the buoyant pressure for buoyant cases.
virtual void prePredictor()
Called at the start of the PIMPLE loop.
virtual void postSolve()
Called after the PIMPLE loop at the end of the time-step.
int nEnergyCorrectors
Number of energy correctors.
virtual void postCorrector()
Correct the momentum and thermophysical transport modelling.
Switch predictMomentum
Momentum equation predictor switch.
Switch faceMomentum
Cell/face momentum equation switch.
Switch dragCorrection
Cell/face drag correction for cell momentum corrector.
virtual void preSolve()
Called at the start of the time-step, before the PIMPLE loop.
virtual ~multiphaseEuler()
Destructor.
multiphaseEuler(fvMesh &mesh)
Construct from region mesh.
virtual bool read()
Read controls.
Foam::fvModels & fvModels(Foam::fvModels::New(mesh))
pimpleControl pimple(mesh)
Calculate the divergence of the given field.
Calculate the mesh motion flux and convert fluxes from absolute to relative and back.
Surface integrate surfaceField creating a volField. Surface sum a surfaceField creating a volField.
tmp< VolField< Type > > surfaceSum(const SurfaceField< Type > &ssf)
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.
addToRunTimeSelectionTable(solver, compressibleMultiphaseVoF, fvMesh)
defineTypeNameAndDebug(compressibleMultiphaseVoF, 0)
Type gSum(const FieldField< Field, Type > &f)
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const bool)
Return a word representation of a bool.
const dimensionSet dimless
const dimensionSet dimTime
VolField< scalar > volScalarField
dimensioned< scalar > mag(const dimensioned< Type > &)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
Type gMax(const FieldField< Field, Type > &f)