54 const word& sourceName,
55 const word& modelType,
61 phaseName_(
dict.lookup(
"phase")),
62 carrierPhaseName_(
dict.lookup(
"carrierPhase")),
92 return wordList({thermo_.rho()().
name(), thermo_.he().name(),
"U"});
98 if (curTimeIndex_ == mesh().time().
timeIndex())
105 curTimeIndex_ = mesh().time().timeIndex();
121 if (&
rho == &thermo_.rho()())
123 eqn += clouds_.Srho();
128 <<
"Support for field " <<
rho.name() <<
" is not implemented"
147 if (&
he == &thermo_.he())
149 eqn += clouds_.Sh(eqn.
psi());
154 <<
"Support for field " <<
he.name() <<
" is not implemented"
174 eqn += clouds_.SU(eqn.
psi());
179 <<
"Support for field " <<
U.name() <<
" is not implemented"
188 clouds_.storeGlobalPositions();
194 clouds_.topoChange(map);
200 clouds_.mapMesh(map);
206 clouds_.distribute(map);
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...
A list of keyword definitions, which are a keyword followed by any number of values (e....
Base-class for fluid thermodynamic properties.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
Mesh data needed to do the Finite Volume discretisation.
Finite volume model abstract base class.
Lagrangian clouds model for VoF simulations.
virtual bool movePoints()
Update for mesh motion.
virtual wordList addSupFields() const
Return the list of fields for which the option adds source term.
virtual void correct()
Solve the Lagrangian clouds and update the sources.
virtual void topoChange(const polyTopoChangeMap &)
Update topology using the given map.
virtual void distribute(const polyDistributionMap &)
Redistribute or update using the given distribution map.
VoFClouds(const word &sourceName, const word &modelType, const fvMesh &mesh, const dictionary &dict)
Construct from explicit source name and mesh.
virtual void preUpdateMesh()
Prepare for mesh_.update.
virtual void mapMesh(const polyMeshMap &)
Update from another mesh using the given map.
virtual void addSup(const volScalarField &alpha, const volScalarField &rho, fvMatrix< scalar > &eqn) const
Add explicit contribution to phase continuity.
A base class for physical properties.
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
Class containing mesh-to-mesh mapping information.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Calculate the matrix for implicit and explicit sources.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
addToRunTimeSelectionTable(fvConstraint, bound, dictionary)
defineTypeNameAndDebug(bound, 0)
errorManipArg< error, int > exit(error &err, const int errNo=1)
List< word > wordList
A List of words.
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const bool)
Return a word representation of a bool.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.