PilchErdman< CloudType > Class Template Reference

Particle secondary breakup model based on Pilch-Erdman total droplet breakup model. More...

Inheritance diagram for PilchErdman< CloudType >:
[legend]
Collaboration diagram for PilchErdman< CloudType >:
[legend]

Public Member Functions

 TypeName ("PilchErdman")
 Runtime type information. More...
 
 PilchErdman (const dictionary &, CloudType &)
 Construct from dictionary. More...
 
 PilchErdman (const PilchErdman< CloudType > &bum)
 Construct copy. More...
 
virtual autoPtr< BreakupModel< CloudType > > clone () const
 Construct and return a clone. More...
 
void operator= (const PilchErdman< CloudType > &)=delete
 No copy assignment. More...
 
virtual ~PilchErdman ()=default
 Destructor. More...
 
virtual bool update (const scalar dt, const vector &g, scalar &d, scalar &tc, scalar &ms, scalar &nParticle, scalar &KHindex, scalar &y, scalar &yDot, const scalar d0, const scalar rho, const scalar mu, const scalar sigma, const vector &U, const scalar rhoc, const scalar muc, const vector &Urel, const scalar Urmag, const scalar tMom, scalar &dChild, scalar &massChild)
 Update the parcel properties. More...
 
- Public Member Functions inherited from BreakupModel< CloudType >
 TypeName ("breakupModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, BreakupModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
 Declare runtime constructor selection table. More...
 
 BreakupModel (CloudType &owner)
 Construct null from owner. More...
 
 BreakupModel (const dictionary &dict, CloudType &owner, const word &type, bool solveOscillationEq=false)
 Construct from dictionary. More...
 
 BreakupModel (const BreakupModel< CloudType > &bum)
 Construct copy. More...
 
virtual autoPtr< BreakupModel< CloudType > > clone () const =0
 Construct and return a clone. More...
 
virtual ~BreakupModel ()
 Destructor. More...
 
bool solveOscillationEq () const
 
const scalar & y0 () const
 
const scalar & yDot0 () const
 
const scalar & TABComega () const
 
const scalar & TABCmu () const
 
const scalar & TABtwoWeCrit () const
 
virtual bool update (const scalar dt, const vector &g, scalar &d, scalar &tc, scalar &ms, scalar &nParticle, scalar &KHindex, scalar &y, scalar &yDot, const scalar d0, const scalar rho, const scalar mu, const scalar sigma, const vector &U, const scalar rhoc, const scalar muc, const vector &Urel, const scalar Urmag, const scalar tMom, scalar &dChild, scalar &massChild)=0
 Update the parcel properties and return true if a child parcel. More...
 
- Public Member Functions inherited from CloudSubModelBase< CloudType >
 CloudSubModelBase (CloudType &owner)
 Construct null from owner cloud. More...
 
 CloudSubModelBase (CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from owner cloud without name. More...
 
 CloudSubModelBase (const word &modelName, CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from owner cloud with name. More...
 
 CloudSubModelBase (const CloudSubModelBase< CloudType > &smb)
 Construct as copy. More...
 
virtual ~CloudSubModelBase ()
 Destructor. More...
 
const CloudTypeowner () const
 Return const access to the owner cloud. More...
 
virtual bool writeTime () const
 Flag to indicate when to write a property. More...
 
virtual fileName localPath () const
 Output directory. More...
 
CloudTypeowner ()
 Return non-const access to the owner cloud for manipulation. More...
 
virtual void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from subModelBase
 subModelBase (dictionary &properties)
 Construct null. More...
 
 subModelBase (dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from components without name. More...
 
 subModelBase (const word &modelName, dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from components with name. More...
 
 subModelBase (const subModelBase &smb)
 Construct as copy. More...
 
virtual ~subModelBase ()
 Destructor. More...
 
const wordmodelName () const
 Return const access to the name of the sub-model. More...
 
const dictionarydict () const
 Return const access to the cloud dictionary. More...
 
const wordbaseName () const
 Return const access to the base name of the sub-model. More...
 
const wordmodelType () const
 Return const access to the sub-model type. More...
 
const dictionarycoeffDict () const
 Return const access to the coefficients dictionary. More...
 
const dictionaryproperties () const
 Return const access to the properties dictionary. More...
 
virtual bool defaultCoeffs (const bool printMsg) const
 Returns true if defaultCoeffs is true and outputs on printMsg. More...
 
virtual bool active () const
 Return the model 'active' status - default active = true. More...
 
virtual void cacheFields (const bool store)
 Cache dependent sub-model fields. More...
 
virtual bool writeTime () const
 Flag to indicate when to write a property. More...
 
virtual fileName localPath () const
 Output directory. More...
 
template<class Type >
Type getBaseProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void getBaseProperty (const word &entryName, Type &value) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void setBaseProperty (const word &entryName, const Type &value)
 Add generic property to the base model. More...
 
bool getModelDict (const word &entryName, dictionary &dict) const
 Retrieve dictionary, return true if set. More...
 
template<class Type >
bool getModelProperty (const word &entryName, Type &value) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
Type getModelProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
void setModelProperty (const word &entryName, const Type &value)
 Add generic property to the sub-model. More...
 
virtual void write (Ostream &os) const
 Write. More...
 

Additional Inherited Members

- Public Types inherited from CloudSubModelBase< CloudType >
typedef CloudType cloudType
 Type of cloud this model was instantiated for. More...
 
- Static Public Member Functions inherited from BreakupModel< CloudType >
static autoPtr< BreakupModel< CloudType > > New (const dictionary &dict, CloudType &owner)
 Selector. More...
 
- Protected Member Functions inherited from subModelBase
bool inLine () const
 Flag to indicate whether data is/was read in-line. More...
 
- Protected Attributes inherited from BreakupModel< CloudType >
bool solveOscillationEq_
 
scalar y0_
 
scalar yDot0_
 
scalar TABComega_
 
scalar TABCmu_
 
scalar TABtwoWeCrit_
 
- Protected Attributes inherited from CloudSubModelBase< CloudType >
CloudTypeowner_
 Reference to the cloud. More...
 
- Protected Attributes inherited from subModelBase
const word modelName_
 Name of the sub-model. More...
 
dictionaryproperties_
 Reference to properties dictionary e.g. for restart. More...
 
const dictionary dict_
 Copy of dictionary used during construction. More...
 
const word baseName_
 Name of the sub-model base class. More...
 
const word modelType_
 Type of the sub-model. More...
 
const dictionary coeffDict_
 Coefficients dictionary. More...
 

Detailed Description

template<class CloudType>
class Foam::PilchErdman< CloudType >

Particle secondary breakup model based on Pilch-Erdman total droplet breakup model.

Reference:

    Pilch, M., & Erdman, C. A. (1987).
    Use of breakup time data and velocity history data
    to predict the maximum size of stable fragments for
    acceleration-induced breakup of a liquid drop.
    International journal of multiphase flow, 13(6), 741-757.
    DOI:10.1016/0301-9322(87)90063-2

The droplet fragment velocity is described by the equation:

\[ V_d = V \sqrt(\epsilon)(B_1 T + B_2 T^2) \]

where

\( V_d \) = Fragment velocity
\( V \) = Magnitude of the relative velocity
\( \epsilon \) = Density ratio (rho_carrier/rho_droplet)
\( T \) = characteristic break-up time
\( B_1 \) = Model coefficient
\( B_2 \) = Model coefficient

Where:

The authors suggest that: compressible flow : B1 = 0.75*1.0; B2 = 3*0.116 incompressible flow : B1 = 0.75*0.5; B2 = 3*0.0758

Source files

Definition at line 111 of file PilchErdman.H.

Constructor & Destructor Documentation

◆ PilchErdman() [1/2]

PilchErdman ( const dictionary dict,
CloudType owner 
)

Construct from dictionary.

Definition at line 34 of file PilchErdman.C.

References subModelBase::coeffDict(), subModelBase::defaultCoeffs(), and dictionary::readEntry().

Here is the call graph for this function:

◆ PilchErdman() [2/2]

PilchErdman ( const PilchErdman< CloudType > &  bum)

Construct copy.

Definition at line 53 of file PilchErdman.C.

◆ ~PilchErdman()

virtual ~PilchErdman ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "PilchErdman< CloudType >"  )

Runtime type information.

◆ clone()

virtual autoPtr< BreakupModel< CloudType > > clone ( ) const
inlinevirtual

Construct and return a clone.

Implements BreakupModel< CloudType >.

Definition at line 139 of file PilchErdman.H.

◆ operator=()

void operator= ( const PilchErdman< CloudType > &  )
delete

No copy assignment.

◆ update()

bool update ( const scalar  dt,
const vector g,
scalar &  d,
scalar &  tc,
scalar &  ms,
scalar &  nParticle,
scalar &  KHindex,
scalar &  y,
scalar &  yDot,
const scalar  d0,
const scalar  rho,
const scalar  mu,
const scalar  sigma,
const vector U,
const scalar  rhoc,
const scalar  muc,
const vector Urel,
const scalar  Urmag,
const scalar  tMom,
scalar &  dChild,
scalar &  massChild 
)
virtual

Update the parcel properties.

Implements BreakupModel< CloudType >.

Definition at line 64 of file PilchErdman.C.

References Foam::max(), mu, Foam::pow(), Foam::pow3(), rho, Foam::sqr(), and Foam::sqrt().

Here is the call graph for this function:

The documentation for this class was generated from the following files: