Kinematic parcel class with rotational motion (as spherical particles only) and one/two-way coupling with the continuous phase. More...
Classes | |
class | constantProperties |
Class to hold kinematic particle constant properties. More... | |
class | iNew |
Factory class to read-construct particles used for. More... | |
class | trackingData |
Public Member Functions | |
TypeName ("KinematicParcel") | |
Runtime type information. More... | |
AddToPropertyList (ParcelType, " active"+" typeId"+" nParticle"+" d"+" dTarget"+" (Ux Uy Uz)"+" rho"+" age"+" tTurb"+" (UTurbx UTurby UTurbz)"+" (UCorrectx UCorrecty UCorrectz)") | |
String representation of properties. More... | |
KinematicParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti) | |
Construct from mesh, coordinates and topology. More... | |
KinematicParcel (const polyMesh &mesh, const vector &position, const label celli) | |
Construct from a position and a cell, searching for the rest of the. More... | |
KinematicParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti, const label typeId, const scalar nParticle0, const scalar d0, const scalar dTarget0, const vector &U0, const constantProperties &constProps) | |
Construct from components. More... | |
KinematicParcel (const polyMesh &mesh, Istream &is, bool readFields=true, bool newFormat=true) | |
Construct from Istream. More... | |
KinematicParcel (const KinematicParcel &p) | |
Construct as a copy. More... | |
KinematicParcel (const KinematicParcel &p, const polyMesh &mesh) | |
Construct as a copy. More... | |
virtual autoPtr< particle > | clone () const |
Construct and return a (basic particle) clone. More... | |
virtual autoPtr< particle > | clone (const polyMesh &mesh) const |
Construct and return a (basic particle) clone. More... | |
bool | active () const |
Return const access to active flag. More... | |
label | typeId () const |
Return const access to type id. More... | |
scalar | nParticle () const |
Return const access to number of particles. More... | |
scalar | d () const |
Return const access to diameter. More... | |
scalar | dTarget () const |
Return const access to target diameter. More... | |
const vector & | U () const |
Return const access to velocity. More... | |
scalar | rho () const |
Return const access to density. More... | |
scalar | age () const |
Return const access to the age. More... | |
scalar | tTurb () const |
Return const access to time spent in turbulent eddy. More... | |
const vector & | UTurb () const |
Return const access to turbulent velocity fluctuation. More... | |
const vector & | UCorrect () const |
Return const access to correction velocity. More... | |
void | active (const bool state) |
Set active flag to the specified state. More... | |
label & | typeId () |
Return access to type id. More... | |
scalar & | nParticle () |
Return access to number of particles. More... | |
scalar & | d () |
Return access to diameter. More... | |
scalar & | dTarget () |
Return access to target diameter. More... | |
vector & | U () |
Return access to velocity. More... | |
scalar & | rho () |
Return access to density. More... | |
scalar & | age () |
Return access to the age. More... | |
scalar & | tTurb () |
Return access to time spent in turbulent eddy. More... | |
vector & | UTurb () |
Return access to turbulent velocity fluctuation. More... | |
vector & | UCorrect () |
Return access to correction velocity. More... | |
scalar | massCell (const trackingData &td) const |
Cell owner mass. More... | |
scalar | mass () const |
Particle mass. More... | |
scalar | momentOfInertia () const |
Particle moment of inertia around diameter axis. More... | |
scalar | volume () const |
Particle volume. More... | |
scalar | areaP () const |
Particle projected area. More... | |
scalar | areaS () const |
Particle surface area. More... | |
scalar | Re (const trackingData &td) const |
Reynolds number. More... | |
scalar | We (const trackingData &td, const scalar sigma) const |
Weber number. More... | |
scalar | Eo (const trackingData &td, const scalar sigma) const |
Eotvos number. More... | |
template<class TrackCloudType > | |
void | setCellValues (TrackCloudType &cloud, trackingData &td) |
Set cell values. More... | |
template<class TrackCloudType > | |
void | calcDispersion (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Apply dispersion to the carrier phase velocity and update. More... | |
template<class TrackCloudType > | |
void | cellValueSourceCorrection (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Correct cell values using latest transfer information. More... | |
template<class TrackCloudType > | |
void | calc (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Update parcel properties over the time interval. More... | |
template<class TrackCloudType > | |
void | calcUCorrection (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Correct U following MP-PIC sub-models. More... | |
template<class TrackCloudType > | |
bool | move (TrackCloudType &cloud, trackingData &td, const scalar trackTime) |
Move the parcel. More... | |
template<class TrackCloudType > | |
bool | hitPatch (TrackCloudType &cloud, trackingData &td) |
Overridable function to handle the particle hitting a patch. More... | |
template<class TrackCloudType > | |
void | hitProcessorPatch (TrackCloudType &cloud, trackingData &td) |
Overridable function to handle the particle hitting a. More... | |
template<class TrackCloudType > | |
void | hitWallPatch (TrackCloudType &cloud, trackingData &td) |
Overridable function to handle the particle hitting a wallPatch. More... | |
virtual void | transformProperties (const tensor &T) |
Transform the physical properties of the particle. More... | |
virtual void | transformProperties (const vector &separation) |
Transform the physical properties of the particle. More... | |
void | writeProperties (Ostream &os, const wordRes &filters, const word &delim, const bool namesOnly=false) const |
Write individual parcel properties to stream. More... | |
template<class TrackCloudType > | |
const Foam::vector | calcVelocity (TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar Re, const scalar mu, const scalar mass, const vector &Su, vector &dUTrans, scalar &Spu) const |
template<class CloudType > | |
void | readFields (CloudType &c) |
template<class CloudType > | |
void | writeFields (const CloudType &c) |
Static Public Member Functions | |
static scalar | volume (const scalar d) |
Particle volume for a given diameter. More... | |
static scalar | areaP (const scalar d) |
Projected area for given diameter. More... | |
static scalar | areaS (const scalar d) |
Surface area for given diameter. More... | |
static scalar | Re (const scalar rhoc, const vector &U, const vector &Uc, const scalar d, const scalar muc) |
Reynolds number for given conditions. More... | |
static scalar | We (const scalar rhoc, const vector &U, const vector &Uc, const scalar d, const scalar sigma) |
Weber number for given conditions. More... | |
static scalar | Eo (const vector &g, const scalar rho, const scalar rhoc, const vector &U, const scalar d, const scalar sigma) |
Eotvos number for given conditions. More... | |
template<class TrackCloudType > | |
static void | readFields (TrackCloudType &c) |
Read. More... | |
template<class TrackCloudType > | |
static void | writeFields (const TrackCloudType &c) |
Write. More... | |
template<class CloudType > | |
static void | readObjects (CloudType &c, const objectRegistry &obr) |
Read particle fields as objects from the obr registry. More... | |
template<class CloudType > | |
static void | writeObjects (const CloudType &c, objectRegistry &obr) |
Write particle fields as objects into the obr registry. More... | |
Static Public Attributes | |
static const std::size_t | sizeofFields |
Size in bytes of the fields. More... | |
Protected Member Functions | |
template<class TrackCloudType > | |
const vector | calcVelocity (TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar Re, const scalar mu, const scalar mass, const vector &Su, vector &dUTrans, scalar &Spu) const |
Calculate new particle velocity. More... | |
Protected Attributes | |
label | active_ |
Active flag - tracking inactive when active = false. More... | |
label | typeId_ |
Parcel type id. More... | |
scalar | nParticle_ |
Number of particles in Parcel. More... | |
scalar | d_ |
Diameter [m]. More... | |
scalar | dTarget_ |
Target diameter [m]. More... | |
vector | U_ |
Velocity of Parcel [m/s]. More... | |
scalar | rho_ |
Density [kg/m3]. More... | |
scalar | age_ |
Age [s]. More... | |
scalar | tTurb_ |
Time spent in turbulent eddy [s]. More... | |
vector | UTurb_ |
Turbulent velocity fluctuation [m/s]. More... | |
vector | UCorrect_ |
Velocity correction due to collisions MPPIC [m/s]. More... | |
Friends | |
Ostream & | operator (Ostream &, const KinematicParcel< ParcelType > &) |
Kinematic parcel class with rotational motion (as spherical particles only) and one/two-way coupling with the continuous phase.
Sub-models include:
Definition at line 85 of file KinematicParcel.H.
|
inline |
Construct from mesh, coordinates and topology.
Other properties initialised as null
Definition at line 76 of file KinematicParcelI.H.
|
inline |
Construct from a position and a cell, searching for the rest of the.
required topology. Other properties are initialised as null.
Definition at line 100 of file KinematicParcelI.H.
|
inline |
Construct from components.
Definition at line 122 of file KinematicParcelI.H.
KinematicParcel | ( | const polyMesh & | mesh, |
Istream & | is, | ||
bool | readFields = true , |
||
bool | newFormat = true |
||
) |
Construct from Istream.
Definition at line 52 of file KinematicParcelIO.C.
References KinematicParcel< ParcelType >::active_, KinematicParcel< ParcelType >::age_, STLCore::ASCII, Istream::beginRawRead(), IOstream::check(), IOstream::checkLabelSize(), IOstream::checkScalarSize(), KinematicParcel< ParcelType >::d_, VectorSpace< Form, Cmpt, Ncmpts >::data(), KinematicParcel< ParcelType >::dTarget_, Istream::endRawRead(), IOstreamOption::format(), FUNCTION_NAME, pTraits< bool >::nComponents, KinematicParcel< ParcelType >::nParticle_, Istream::read(), Foam::readFields(), KinematicParcel< ParcelType >::readFields(), Foam::readRawLabel(), KinematicParcel< ParcelType >::rho_, KinematicParcel< ParcelType >::sizeofFields, KinematicParcel< ParcelType >::tTurb_, KinematicParcel< ParcelType >::typeId_, KinematicParcel< ParcelType >::U_, KinematicParcel< ParcelType >::UCorrect_, and KinematicParcel< ParcelType >::UTurb_.
KinematicParcel | ( | const KinematicParcel< ParcelType > & | p | ) |
Construct as a copy.
KinematicParcel | ( | const KinematicParcel< ParcelType > & | p, |
const polyMesh & | mesh | ||
) |
Construct as a copy.
|
protected |
Calculate new particle velocity.
TypeName | ( | "KinematicParcel< ParcelType >" | ) |
Runtime type information.
AddToPropertyList | ( | ParcelType | , |
" active"+" typeId"+" nParticle"+" d"+" dTarget"+" (Ux Uy Uz)"+" rho"+" age"+" tTurb"+" (UTurbx UTurby UTurbz)"+" (UCorrectx UCorrecty UCorrectz)" | |||
) |
String representation of properties.
Construct and return a (basic particle) clone.
Definition at line 436 of file KinematicParcel.H.
Construct and return a (basic particle) clone.
Definition at line 442 of file KinematicParcel.H.
References mesh.
|
inline |
Return const access to active flag.
Definition at line 196 of file KinematicParcelI.H.
|
inline |
Return const access to type id.
Definition at line 203 of file KinematicParcelI.H.
|
inline |
Return const access to number of particles.
Definition at line 210 of file KinematicParcelI.H.
|
inline |
Return const access to diameter.
Definition at line 217 of file KinematicParcelI.H.
|
inline |
Return const access to target diameter.
Definition at line 224 of file KinematicParcelI.H.
|
inline |
Return const access to velocity.
Definition at line 231 of file KinematicParcelI.H.
|
inline |
Return const access to density.
Definition at line 238 of file KinematicParcelI.H.
|
inline |
Return const access to the age.
Definition at line 245 of file KinematicParcelI.H.
|
inline |
Return const access to time spent in turbulent eddy.
Definition at line 252 of file KinematicParcelI.H.
|
inline |
Return const access to turbulent velocity fluctuation.
Definition at line 259 of file KinematicParcelI.H.
|
inline |
Return const access to correction velocity.
Definition at line 308 of file KinematicParcelI.H.
|
inline |
Set active flag to the specified state.
Definition at line 266 of file KinematicParcelI.H.
|
inline |
Return access to type id.
Definition at line 273 of file KinematicParcelI.H.
|
inline |
Return access to number of particles.
Definition at line 280 of file KinematicParcelI.H.
|
inline |
Return access to diameter.
Definition at line 287 of file KinematicParcelI.H.
|
inline |
Return access to target diameter.
Definition at line 294 of file KinematicParcelI.H.
|
inline |
Return access to velocity.
Definition at line 301 of file KinematicParcelI.H.
|
inline |
Return access to density.
Definition at line 322 of file KinematicParcelI.H.
|
inline |
Return access to the age.
Definition at line 329 of file KinematicParcelI.H.
|
inline |
Return access to time spent in turbulent eddy.
Definition at line 336 of file KinematicParcelI.H.
|
inline |
Return access to turbulent velocity fluctuation.
Definition at line 343 of file KinematicParcelI.H.
|
inline |
Return access to correction velocity.
Definition at line 315 of file KinematicParcelI.H.
|
inline |
Cell owner mass.
Definition at line 350 of file KinematicParcelI.H.
References primitiveMesh::cellVolumes(), mesh, and KinematicParcel< ParcelType >::trackingData::rhoc().
|
inline |
Particle mass.
Definition at line 360 of file KinematicParcelI.H.
|
inline |
Particle moment of inertia around diameter axis.
Definition at line 367 of file KinematicParcelI.H.
References Foam::sqr().
|
inline |
Particle volume.
Definition at line 374 of file KinematicParcelI.H.
|
inlinestatic |
Particle volume for a given diameter.
Definition at line 381 of file KinematicParcelI.H.
References Foam::constant::mathematical::pi(), and Foam::pow3().
|
inline |
Particle projected area.
Definition at line 388 of file KinematicParcelI.H.
|
inlinestatic |
Projected area for given diameter.
Definition at line 395 of file KinematicParcelI.H.
|
inline |
Particle surface area.
Definition at line 402 of file KinematicParcelI.H.
|
inlinestatic |
Surface area for given diameter.
Definition at line 409 of file KinematicParcelI.H.
References Foam::constant::mathematical::pi().
|
inline |
Reynolds number.
Definition at line 416 of file KinematicParcelI.H.
References KinematicParcel< ParcelType >::trackingData::muc(), Foam::Re(), KinematicParcel< ParcelType >::trackingData::rhoc(), and KinematicParcel< ParcelType >::trackingData::Uc().
|
inlinestatic |
Reynolds number for given conditions.
Definition at line 426 of file KinematicParcelI.H.
References Foam::mag(), Foam::max(), and U.
|
inline |
Weber number.
Definition at line 440 of file KinematicParcelI.H.
References KinematicParcel< ParcelType >::trackingData::rhoc(), and KinematicParcel< ParcelType >::trackingData::Uc().
|
inlinestatic |
Weber number for given conditions.
Definition at line 451 of file KinematicParcelI.H.
References Foam::magSqr(), Foam::max(), and U.
|
inline |
Eotvos number.
Definition at line 465 of file KinematicParcelI.H.
References KinematicParcel< ParcelType >::trackingData::g(), and KinematicParcel< ParcelType >::trackingData::rhoc().
|
inlinestatic |
Eotvos number for given conditions.
Definition at line 476 of file KinematicParcelI.H.
References g, Foam::mag(), Foam::max(), rho, Foam::sqr(), and U.
void setCellValues | ( | TrackCloudType & | cloud, |
trackingData & | td | ||
) |
Set cell values.
Definition at line 45 of file KinematicParcel.C.
References coordinates(), Foam::endl(), interpolation< Type >::interpolate(), KinematicParcel< ParcelType >::trackingData::muc(), KinematicParcel< ParcelType >::trackingData::muInterp(), Foam::nl, KinematicParcel< ParcelType >::trackingData::rhoc(), KinematicParcel< ParcelType >::trackingData::rhoInterp(), KinematicParcel< ParcelType >::trackingData::Uc(), KinematicParcel< ParcelType >::trackingData::UInterp(), and WarningInFunction.
Referenced by ReactingMultiphaseParcel< ParcelType >::setCellValues(), ReactingParcel< ParcelType >::setCellValues(), ThermoParcel< ParcelType >::setCellValues(), and SprayParcel< ParcelType >::setCellValues().
void calcDispersion | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Apply dispersion to the carrier phase velocity and update.
parcel turbulence parameters
Definition at line 75 of file KinematicParcel.C.
References KinematicParcel< ParcelType >::trackingData::Uc().
void cellValueSourceCorrection | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Correct cell values using latest transfer information.
Definition at line 118 of file KinematicParcel.C.
References KinematicParcel< ParcelType >::trackingData::Uc().
void calc | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Update parcel properties over the time interval.
Definition at line 131 of file KinematicParcel.C.
References KinematicParcel< ParcelType >::trackingData::muc(), Foam::Re(), and Su.
void calcUCorrection | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Correct U following MP-PIC sub-models.
Definition at line 96 of file KinematicParcel.C.
References p.
bool move | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | trackTime | ||
) |
Move the parcel.
Definition at line 307 of file KinematicParcel.C.
References f(), Foam::mag(), Foam::max(), maxCo, Foam::min(), p, and s().
bool hitPatch | ( | TrackCloudType & | cloud, |
trackingData & | td | ||
) |
Overridable function to handle the particle hitting a patch.
Executed before other patch-hitting functions
Definition at line 402 of file KinematicParcel.C.
References cyclicACMIPointPatch::constraintType(), DimensionedField< Type, GeoMesh >::mesh(), and p.
void hitProcessorPatch | ( | TrackCloudType & | cloud, |
trackingData & | td | ||
) |
Overridable function to handle the particle hitting a.
processorPatch
Definition at line 445 of file KinematicParcel.C.
void hitWallPatch | ( | TrackCloudType & | cloud, |
trackingData & | td | ||
) |
Overridable function to handle the particle hitting a wallPatch.
Definition at line 457 of file KinematicParcel.C.
|
virtual |
Transform the physical properties of the particle.
according to the given transformation tensor
Definition at line 468 of file KinematicParcel.C.
References T, Foam::transform(), and particle< Type >::transformProperties().
|
virtual |
Transform the physical properties of the particle.
according to the given separation vector
Definition at line 477 of file KinematicParcel.C.
References particle< Type >::transformProperties().
|
static |
Read.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
static |
Write.
void writeProperties | ( | Ostream & | os, |
const wordRes & | filters, | ||
const word & | delim, | ||
const bool | namesOnly = false |
||
) | const |
Write individual parcel properties to stream.
Definition at line 284 of file KinematicParcelIO.C.
References os(), writeProp, and injectedParticle::writeProperties().
|
static |
Read particle fields as objects from the obr registry.
Definition at line 316 of file KinematicParcelIO.C.
References p, injectedParticle::readObjects(), rho, and U.
|
static |
Write particle fields as objects into the obr registry.
Definition at line 361 of file KinematicParcelIO.C.
const Foam::vector calcVelocity | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt, | ||
const scalar | Re, | ||
const scalar | mu, | ||
const scalar | mass, | ||
const vector & | Su, | ||
vector & | dUTrans, | ||
scalar & | Spu | ||
) | const |
Definition at line 184 of file KinematicParcel.C.
References mesh, mu, p, Foam::Re(), forceSuSp::Sp(), Su, forceSuSp::Su(), and KinematicParcel< ParcelType >::trackingData::Uc().
void readFields | ( | CloudType & | c | ) |
Definition at line 121 of file KinematicParcelIO.C.
References IOobject::MUST_READ, p, rho, and U.
void writeFields | ( | const CloudType & | c | ) |
Definition at line 227 of file KinematicParcelIO.C.
References IOobject::NO_READ, p, rho, U, regIOobject::write(), and fieldAverage::writeFields().
|
friend |
|
static |
Size in bytes of the fields.
Definition at line 98 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Active flag - tracking inactive when active = false.
Store as label for data alignment, but only has bool states
Definition at line 306 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Parcel type id.
Definition at line 309 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Number of particles in Parcel.
Definition at line 312 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Diameter [m].
Definition at line 315 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Target diameter [m].
Definition at line 318 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Velocity of Parcel [m/s].
Definition at line 321 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Density [kg/m3].
Definition at line 324 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Age [s].
Definition at line 327 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Time spent in turbulent eddy [s].
Definition at line 330 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Turbulent velocity fluctuation [m/s].
Definition at line 333 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().
|
protected |
Velocity correction due to collisions MPPIC [m/s].
Definition at line 336 of file KinematicParcel.H.
Referenced by KinematicParcel< ParcelType >::KinematicParcel().