39 namespace diameterModels
53 Foam::diameterModels::shapeModels::fractal::dColl()
const
55 tmp<volScalarField> tDColl
91 alphaC_(
"alphaC",
dimless, groupDict),
115 if (groupDict.
found(
"kappa"))
118 <<
"A 'kappa' entry should not be specified for size-group #"
119 <<
group.
i() <<
" of population balance "
121 <<
". Instead, the value should be initialised within the field, "
122 << kappa_.
name() <<
" (or the default field, "
124 <<
", as appropriate)."
188 for (
label deltai = -1; deltai <= +1; ++ deltai)
190 const label j = fi.
i() + deltai;
191 if (j < 0 || j >= popBal.
sizeGroups().size())
continue;
193 flds.
set(fj.
i(), &model(fj).
fld());
210 /kappa_.mesh().time().deltaT(),
230 kappa_.correctBoundaryConditions();
240 return kappa_*
group().x();
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
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,.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
static word member(const word &name)
Return member (name without the extension)
const word & name() const
Return name.
static word groupName(Name name, const word &group)
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
bool set(const label) const
Is element set.
Base class for modelling evolution of secondary representative properties of a size class....
Model for tracking the evolution of a dispersed phase size distribution due to coalescence (synonymou...
tmp< volScalarField::Internal > Sp(const label i) const
Return the implicit coalescence and breakup source term.
const phaseSystem & fluid() const
Return reference to the phaseSystem.
const UPtrList< sizeGroup > & sizeGroups() const
Return the size groups belonging to this populationBalance.
tmp< volScalarField::Internal > modelSourceSu(const label i, const UPtrList< const volScalarField > &flds=UPtrList< const volScalarField >()) const
Return the explicit model source source term.
tmp< volScalarField::Internal > expansionSp(const label i) const
Return the implicit expansion source term.
tmp< volScalarField::Internal > expansionSu(const label i, const UPtrList< const volScalarField > &flds=UPtrList< const volScalarField >()) const
Return the explicit expansion source term.
Base class for modelling the shape of the particles belonging to a size class through alternative dia...
const sizeGroup & group() const
Return reference to size group.
Class for modelling the shape of particle aggregates using the concept of fractal geometry....
virtual void correct()
Correct the collisional diameter.
fractal(const dictionary &dict, const sizeGroup &group, const dictionary &groupDict)
Construct from dictionaries and sizeGroup.
virtual const tmp< volScalarField > a() const
Return representative surface area of the sizeGroup.
virtual volScalarField::Internal & src()
Access to secondary property source.
virtual const volScalarField & fld() const
Return reference to secondary property field.
virtual ~fractal()
Destructor.
virtual const tmp< volScalarField > d() const
Return representative diameter of the sizeGroup.
Single size class fraction field representing a fixed particle volume as defined by the user through ...
const dimensionedScalar & dSph() const
Return representative spherical diameter of the sizeGroup.
const velocityGroup & group() const
Return const-reference to the velocityGroup.
const phaseModel & phase() const
Return const-reference to the phase.
label i() const
Return index of the size group within the population balance.
const populationBalanceModel & popBal() const
Return the populationBalance this velocityGroup belongs to.
const word & popBalName() const
Return name of populationBalance this velocityGroup belongs to.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
bool constrain(fvMatrix< Type > &eqn) const
Apply constraints to an equation.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
void relax(const scalar alpha)
Relax matrix (for steady-state solution).
SolverPerformance< Type > solve(const dictionary &)
Solve segregated or coupled returning the solution statistics.
tmp< fvMatrix< Type > > source(const VolField< Type > &field) const
Return source for an equation.
const dimensionedScalar & residualAlpha() const
Return the residual phase-fraction for given phase.
const word & name() const
Return the name of this phase.
virtual const volScalarField & rho() const =0
Return the density field.
virtual tmp< surfaceScalarField > alphaPhi() const =0
Return the volumetric flux of the phase.
Foam::fvModels & fvModels(fvMesh &mesh)
Access the fvModels.
Foam::fvConstraints & fvConstraints(fvMesh &mesh)
Access the fvConstraints.
A class for managing temporary objects.
word capitalise() const
Return the word with the first letter capitalised.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Calculate the matrix for the first temporal derivative.
Calculate the matrix for the divergence of the given field and flux.
Calculate the matrix for implicit and explicit sources.
gmvFile<< "tracers "<< particles.size()<< nl;{ pointField positions(particles.size());label particlei=0;forAllConstIter(lagrangian::Cloud< passiveParticle >, particles, iter) { positions[particlei++]=iter().position(mesh);} for(i=0;i< pTraits< point >::nComponents;i++) { forAll(positions, particlei) { gmvFile<< component(positions[particlei], i)<< ' ';} gmvFile<< nl;}}forAll(lagrangianScalarNames, i){ const word &name=lagrangianScalarNames[i];IOField< scalar > fld(IOobject(name, runTime.name(), lagrangian::cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
const char *const group
Group name for atomic constants.
addToRunTimeSelectionTable(shapeModel, fractal, dictionary)
defineTypeNameAndDebug(fractal, 0)
static tmp< SurfaceField< Type > > interpolate(const VolField< Type > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
errorManipArg< error, int > exit(error &err, const int errNo=1)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const HashTable< dimensionSet > & dimensions()
Get the table of dimension sets.
const dimensionSet dimless
const dimensionSet dimLength
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
const dimensionSet dimTime
void pow(LagrangianPatchField< typename powProduct< Type, r >::type > &f, const LagrangianPatchField< Type > &f1)
VolField< scalar > volScalarField
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
tmp< fvMatrix< Type > > correction(const fvMatrix< Type > &)
Return the correction form of the given matrix.
void pow3(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.