27 #include "surfaceInterpolate.H"
54 fluidSolver::correctCoNum(
phic);
85 ).lookup(
"continuousPhaseName")
119 IOobject::groupName(
"U", continuousPhaseName),
132 IOobject::groupName(
"phi", continuousPhaseName),
147 IOobject::groupName(
"rho", continuousPhaseName),
154 IOobject::groupName(
"rho", continuousPhaseName),
158 IOobject::groupName(
"rho", continuousPhaseName)
167 IOobject::groupName(
"mu", continuousPhaseName),
178 IOobject::groupName(
"alpha", continuousPhaseName),
190 1 - mesh.
solution().solverDict(alphac_.
name()).lookup<scalar>(
"max")
197 IOobject::groupName(
"alphaPhi", continuousPhaseName),
248 if (mesh.dynamic() && !Ucf.valid())
250 Info<<
"Constructing face momentum Ucf" <<
endl;
253 Uc_.correctBoundaryConditions();
270 if (mesh.topoChanging() || mesh.distributing())
272 clouds.storeGlobalPositions();
291 alphac_ =
max(1 - clouds.alpha(), alphacMin);
292 alphac_.correctBoundaryConditions();
296 alphaPhic = alphacf*phic;
311 zeroGradientFvPatchVectorField::typeName
324 zeroGradientFvPatchVectorField::typeName
329 Fd().primitiveFieldRef() = -cloudSU.
source()/mesh.V()/rhoc;
330 Fd().correctBoundaryConditions();
332 Dc().primitiveFieldRef() = -cloudSU.
diag()/mesh.V()/rhoc;
333 Dc().correctBoundaryConditions();
344 if (
pimple.predictTransport())
346 momentumTransport->predict();
368 if (
pimple.correctTransport())
371 momentumTransport->correct();
Macros for easy insertion into run-time selection tables.
void correctBoundaryConditions()
Correct boundary field.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
const word & name() const
Return name.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
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
Abstract base class for turbulence models (RAS, LES and laminar).
const tmp< volScalarField > alpha() const
Return the particle volume fraction field.
List of parcel clouds, with the same interface as an individual parcel cloud. Is a mesh object,...
Provides controls for the pressure reference in closed-volume simulations.
Selector class for relaxation factors, solver type and solution.
Abstract base class for run-time selectable region solvers.
const fvMesh & mesh
Region mesh.
Base solver module for fluid solvers.
void continuityErrors(const surfaceScalarField &phi)
Calculate and print the continuity errors.
Solver module for transient flow of incompressible isothermal fluids coupled with particle clouds inc...
virtual void thermophysicalPredictor()
Construct and solve the energy equation,.
autoPtr< phaseIncompressible::momentumTransportModel > momentumTransport
Pointer to the momentum transport model.
surfaceScalarField alphacf
Interpolated continuous phase-fraction.
virtual void prePredictor()
Called at the start of the PIMPLE loop.
const volScalarField & alphac
Reference continuous phase-fraction.
virtual void postSolve()
Called after the PIMPLE loop at the end of the time-step.
surfaceScalarField alphaPhic
Continuous phase volumetric-flux field.
virtual void pressureCorrector()
Construct and solve the pressure equation in the PISO loop.
virtual void postCorrector()
Correct the momentum and thermophysical transport modelling.
scalar alphacMin
Minimum continuous phase-fraction.
virtual ~incompressibleDenseParticleFluid()
Destructor.
void continuityErrors()
Calculate and print the continuity errors.
void correctCoNum()
Correct the cached Courant numbers.
incompressibleDenseParticleFluid(fvMesh &mesh)
Construct from region mesh.
virtual void preSolve()
Called at the start of the time-step, before the PIMPLE loop.
const surfaceScalarField & phic
Reference to the continuous phase volumetric-flux field.
const volScalarField & p
Reference to the pressure field.
volScalarField alphac_
Continuous phase-fraction.
An abstract base class for Newtonian viscosity models.
Abstract base class for all fluid physical properties.
virtual tmp< volScalarField > nu() const =0
Return the laminar viscosity.
Foam::fvModels & fvModels(Foam::fvModels::New(mesh))
pimpleControl pimple(mesh)
Calculate the face-flux of the given field.
tmp< SurfaceField< typename innerProduct< vector, Type >::type > > flux(const VolField< Type > &vf)
Return the face-flux field obtained from the given volVectorField.
static tmp< SurfaceField< Type > > interpolate(const VolField< Type > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
addToRunTimeSelectionTable(solver, compressibleMultiphaseVoF, fvMesh)
defineTypeNameAndDebug(compressibleMultiphaseVoF, 0)
VolField< vector > volVectorField
const HashTable< dimensionSet > & dimensions()
Get the table of dimension sets.
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 dimAcceleration
tmp< SurfaceField< Type > > linearInterpolate(const VolField< Type > &vf)
const dimensionSet dimTime
const dimensionSet dimDensity
VolField< scalar > volScalarField
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)
SurfaceField< vector > surfaceVectorField
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.