Public Member Functions | Protected Member Functions | Private Types | Private Attributes
ParticleTracks< CloudType > Class Template Reference

Records particle state (all variables) on each call to postFace. More...

Inheritance diagram for ParticleTracks< CloudType >:
Inheritance graph
[legend]
Collaboration diagram for ParticleTracks< CloudType >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("particleTracks")
 Runtime type information. More...
 
 ParticleTracks (const dictionary &dict, CloudType &owner, const word &modelName)
 Construct from dictionary. More...
 
 ParticleTracks (const ParticleTracks< CloudType > &ppm)
 Construct copy. More...
 
virtual autoPtr< CloudFunctionObject< CloudType > > clone () const
 Construct and return a clone. More...
 
virtual ~ParticleTracks ()
 Destructor. More...
 
label trackInterval () const
 Return const access to the track interval. More...
 
label maxSamples () const
 Return const access to the max samples. More...
 
const SwitchresetOnWrite () const
 Return const access to the reset on write flag. More...
 
const hitTableTypefaceHitCounter () const
 Rerurn the table of number of times a particle has hit a face. More...
 
const Cloud< parcelType > & cloud () const
 Return const access to the cloud. More...
 
virtual void preEvolve ()
 Pre-evolve hook. More...
 
virtual void postFace (const parcelType &p, const label faceI, bool &keepParticle)
 Post-face hook. More...
 
- Public Member Functions inherited from CloudFunctionObject< CloudType >
 TypeName ("cloudFunctionObject")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, CloudFunctionObject, dictionary,(const dictionary &dict, CloudType &owner, const word &modelName),(dict, owner, modelName))
 Declare runtime constructor selection table. More...
 
 CloudFunctionObject (CloudType &owner)
 Construct null from owner. More...
 
 CloudFunctionObject (const dictionary &dict, CloudType &owner, const word &objectType, const word &modelName)
 Construct from dictionary. More...
 
 CloudFunctionObject (const CloudFunctionObject< CloudType > &ppm)
 Construct copy. More...
 
virtual ~CloudFunctionObject ()
 Destructor. More...
 
virtual void postEvolve ()
 Post-evolve hook. More...
 
virtual void postMove (typename CloudType::parcelType &p, const label cellI, const scalar dt, const point &position0, bool &keepParticle)
 Post-move hook. More...
 
virtual void postPatch (const typename CloudType::parcelType &p, const polyPatch &pp, const scalar trackFraction, const tetIndices &testIs, bool &keepParticle)
 Post-patch hook. More...
 
virtual void postFace (const typename CloudType::parcelType &p, const label faceI, bool &keepParticle)
 Post-face hook. More...
 
const fileNameoutputDir () const
 Return the output path. More...
 
fileName outputTimeDir () const
 Return the output time path. 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 outputTime () const
 Flag to indicate when to write a property. 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 dependant sub-model fields. More...
 
template<class Type >
Type getBaseProperty (const word &entryName, const Type &defaultValue=pTraits< 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...
 
template<class Type >
void 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=pTraits< 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...
 

Protected Member Functions

void write ()
 Write post-processing info. More...
 
- Protected Member Functions inherited from subModelBase
bool inLine () const
 Flag to indicate whether data is/was read in-line. More...
 

Private Types

typedef CloudType::parcelType parcelType
 Convenience typedef for parcel type. More...
 
typedef HashTable< label, labelPair, typename labelPair::Hash<> > hitTableType
 Convenience typedef for hash hit-table. More...
 

Private Attributes

label trackInterval_
 Number of face-hit intervals between storing parcel data. More...
 
label maxSamples_
 Maximum number of particles to store per track. More...
 
Switch resetOnWrite_
 Flag to indicate whether data should be reset/cleared on writing. More...
 
hitTableType faceHitCounter_
 Table of number of times a particle has hit a face. More...
 
autoPtr< Cloud< parcelType > > cloudPtr_
 Pointer to the cloud storage. 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 CloudFunctionObject< CloudType >
static autoPtr< CloudFunctionObject< CloudType > > New (const dictionary &dict, CloudType &owner, const word &objectType, const word &modelName)
 Selector. More...
 
- 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::ParticleTracks< CloudType >

Records particle state (all variables) on each call to postFace.

Source files

Definition at line 49 of file ParticleTracks.H.

Member Typedef Documentation

◆ parcelType

Convenience typedef for parcel type.

Definition at line 58 of file ParticleTracks.H.

◆ hitTableType

typedef HashTable<label, labelPair, typename labelPair::Hash<> > hitTableType
private

Convenience typedef for hash hit-table.

Definition at line 62 of file ParticleTracks.H.

Constructor & Destructor Documentation

◆ ParticleTracks() [1/2]

ParticleTracks ( const dictionary dict,
CloudType owner,
const word modelName 
)

Construct from dictionary.

Definition at line 60 of file ParticleTracks.C.

◆ ParticleTracks() [2/2]

Construct copy.

Definition at line 77 of file ParticleTracks.C.

◆ ~ParticleTracks()

~ParticleTracks
virtual

Destructor.

Definition at line 93 of file ParticleTracks.C.

Member Function Documentation

◆ write()

void write
protectedvirtual

Write post-processing info.

Reimplemented from CloudFunctionObject< CloudType >.

Definition at line 34 of file ParticleTracks.C.

References Foam::endl(), Foam::Info, and Foam::nl.

Here is the call graph for this function:

◆ TypeName()

TypeName ( "particleTracks"  )

Runtime type information.

◆ clone()

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

Construct and return a clone.

Reimplemented from CloudFunctionObject< CloudType >.

Definition at line 108 of file ParticleTracks.H.

◆ trackInterval()

Foam::label trackInterval
inline

Return const access to the track interval.

Definition at line 31 of file ParticleTracksI.H.

◆ maxSamples()

Foam::label maxSamples
inline

Return const access to the max samples.

Definition at line 38 of file ParticleTracksI.H.

◆ resetOnWrite()

const Foam::Switch & resetOnWrite
inline

Return const access to the reset on write flag.

Definition at line 45 of file ParticleTracksI.H.

◆ faceHitCounter()

const Foam::ParticleTracks< CloudType >::hitTableType & faceHitCounter
inline

Rerurn the table of number of times a particle has hit a face.

Definition at line 53 of file ParticleTracksI.H.

◆ cloud()

const Foam::Cloud< typename CloudType::parcelType > & cloud
inline

Return const access to the cloud.

Definition at line 61 of file ParticleTracksI.H.

◆ preEvolve()

void preEvolve
virtual

Pre-evolve hook.

Reimplemented from CloudFunctionObject< CloudType >.

Definition at line 100 of file ParticleTracks.C.

References Foam::name().

Here is the call graph for this function:

◆ postFace()

void postFace ( const parcelType p,
const label  faceI,
bool &  keepParticle 
)
virtual

Post-face hook.

Definition at line 114 of file ParticleTracks.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, nSamples(), and p.

Here is the call graph for this function:

Field Documentation

◆ trackInterval_

label trackInterval_
private

Number of face-hit intervals between storing parcel data.

Definition at line 65 of file ParticleTracks.H.

◆ maxSamples_

label maxSamples_
private

Maximum number of particles to store per track.

Definition at line 68 of file ParticleTracks.H.

◆ resetOnWrite_

Switch resetOnWrite_
private

Flag to indicate whether data should be reset/cleared on writing.

Definition at line 71 of file ParticleTracks.H.

◆ faceHitCounter_

hitTableType faceHitCounter_
private

Table of number of times a particle has hit a face.

Definition at line 74 of file ParticleTracks.H.

◆ cloudPtr_

autoPtr<Cloud<parcelType> > cloudPtr_
private

Pointer to the cloud storage.

Definition at line 77 of file ParticleTracks.H.


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