35 namespace functionObjects
59 popBalName_(
dict.lookupOrDefault(
"populationBalance",
word::null)),
60 phaseName_(
dict.lookupOrDefault(
"phase",
word::null)),
66 const bool havePopBal = popBalName_ !=
word::null;
67 const bool havePhase = phaseName_ !=
word::null;
68 if (havePopBal == havePhase)
71 << (havePopBal ?
"both" :
"neither") <<
" of keywords "
72 <<
"populationBalance " << (havePopBal ?
"and" :
"or")
73 <<
" phase defined in dictionary " <<
dict.name()
101 <<
"The " << typeName <<
" function cannot be executed at run-time"
124 fi == popBal.
etaV(sizeGroupi, distribution_());
134 if (velocityGroupPtrs.size() > 1)
152 alphas += iter()->phase();
165 const label i0 = iter()->sizeGroups().first().i();
166 const label i1 = iter()->sizeGroups().last().i();
179 refCast<diameterModels::velocityGroup>
184 ).
phases()[phaseName_].diameter()
194 fi == velGrp.
popBal().
etaV(sizeGroupi, distribution_());
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
Macros for easy insertion into run-time selection tables.
Generic GeometricField class.
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
An STL-conforming hash table.
const word & name() const
Return name.
static word groupName(Name name, const word &group)
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Model for tracking the evolution of a dispersed phase size distribution due to coalescence (synonymou...
const UPtrList< sizeGroup > & sizeGroups() const
Return the size groups belonging to this populationBalance.
dimensionedScalar etaV(const label i, const dimensionedScalar &v) const
Return the volume allocation coefficient for a single volume.
Single size class fraction field representing a fixed particle volume as defined by the user through ...
const velocityGroup & group() const
Return const-reference to the velocityGroup.
const phaseModel & phase() const
Return const-reference to the phase.
Computes the Sauter mean diameter based on a user specified size distribution, defined in terms of si...
const populationBalanceModel & popBal() const
Return the populationBalance this velocityGroup belongs to.
const PtrList< sizeGroup > & sizeGroups() const
Return sizeGroups belonging to this velocityGroup.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Base class for statistical distributions.
Abstract base-class for Time/database functionObjects.
static bool postProcess
Global post-processing mode switch.
Specialisation of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
virtual bool read(const dictionary &)
Read optional controls.
Sets the population balance size distribution by overwriting the values in the size-group fraction fi...
virtual ~populationBalanceSetSizeDistribution()
Destructor.
populationBalanceSetSizeDistribution(const word &name, const Time &runTime, const dictionary &dict)
Construct from Time and dictionary.
virtual bool execute()
Execute. Does nothing.
virtual bool write()
Calculate and write the size group fraction fields.
const word & name() const
Return the name of this phase.
Class to represent a system of phases.
static const word propertiesName
Default name of the phase properties dictionary.
const phaseModelList & phases() const
Return the phase models.
virtual bool write(const bool write=true) const
Write using setting from DB.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
A class for handling words, derived from string.
static const word null
An empty word.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
#define WarningInFunction
Report a warning using Foam::Warning.
autoPtr< CompressibleMomentumTransportModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const viscosity &viscosity)
defineTypeNameAndDebug(adjustTimeStepToCombustion, 0)
addToRunTimeSelectionTable(functionObject, adjustTimeStepToCombustion, dictionary)
errorManipArg< error, int > exit(error &err, const int errNo=1)
Pair< label > labelPair
Label pair.
Ostream & decrIndent(Ostream &os)
Decrement the indent level.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const dimensionSet dimless
const dimensionSet dimLength
Ostream & incrIndent(Ostream &os)
Increment the indent level.
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
Ostream & indent(Ostream &os)
Indent stream.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.