FreeFOAM The Cross-Platform CFD Toolkit
Cloud< ParticleType > Class Template Reference

#include <lagrangian/Cloud.H>


Detailed Description

template<class ParticleType>
class Foam::Cloud< ParticleType >

Source files

Definition at line 68 of file Cloud.H.

+ Inheritance diagram for Cloud< ParticleType >:
+ Collaboration diagram for Cloud< ParticleType >:

List of all members.

Public Types

typedef ParticleType particleType
typedef IDLList< ParticleType >
::iterator 
iterator
typedef IDLList< ParticleType >
::const_iterator 
const_iterator

Public Member Functions

 TypeName ("Cloud")
 Runtime type information.
 Cloud (const polyMesh &mesh, const IDLList< ParticleType > &particles)
 Construct from mesh and a list of particles.
 Cloud (const polyMesh &mesh, const word &cloudName, const IDLList< ParticleType > &particles)
 Construct from mesh, cloud name, and a list of particles.
 Cloud (const polyMesh &mesh, const bool checkClass=true)
 Construct from mesh by reading from file.
 Cloud (const polyMesh &pMesh, const word &cloudName, const bool checkClass=true)
 Construct from mesh by reading from file with given cloud instance.
const polyMeshpMesh () const
 Return the polyMesh reference.
bool internalFace (const label facei) const
 Is this global face an internal face?
bool boundaryFace (const label facei) const
 Is this global face a boundary face?
label facePatch (const label facei) const
 Which patch is this global face on.
label patchFace (const label patchi, const label facei) const
 Which face of this patch is this global face.
label size () const
 Return number of elements in table.
const const_iterator begin () const
 const_iterator set to the beginning of the HashTable
const const_iterator cbegin () const
 const_iterator set to the beginning of the HashTable
const const_iterator end () const
 const_iterator set to beyond the end of the HashTable
const const_iterator cend () const
 const_iterator set to beyond the end of the HashTable
iterator begin ()
 iterator set to the begining of the HashTable
iterator end ()
 iterator set to beyond the end of the HashTable
void clear ()
 Clear the contents of the list.
label getNewParticleID () const
 Get unique particle creation id.
void addParticle (ParticleType *pPtr)
 Transfer particle to cloud.
void deleteParticle (ParticleType &)
 Remove particle from cloud and delete.
template<class TrackingData >
void move (TrackingData &td)
 Move the particles.
virtual void autoMap (const mapPolyMesh &)
 Remap the cells of particles corresponding to the.
IOobject fieldIOobject (const word &fieldName, const IOobject::readOption r) const
 Helper to construct IOobject for field and current time.
template<class DataType >
void checkFieldIOobject (const Cloud< ParticleType > &c, const IOField< DataType > &data) const
 Check lagrangian data field.
virtual void readFields ()
 Read the field data for the cloud of particles. Dummy at.
virtual void writeFields () const
 Write the field data for the cloud of particles Dummy at.
virtual bool writeObject (IOstream::streamFormat fmt, IOstream::versionNumber ver, IOstream::compressionType cmp) const
 Write using given format, version and compression.
void writePositions () const
 Write positions to <cloudName>_positions.obj file.
- Public Member Functions inherited from cloud
 TypeName ("cloud")
 Runtime type information.
 cloud (const objectRegistry &, const word &cloudName="")
 Construct for the given objectRegistry and named cloud instance.
virtual ~cloud ()
 Destructor.
- Public Member Functions inherited from objectRegistry
 TypeName ("objectRegistry")
 Declare type name for this IOobject.
 objectRegistry (const Time &db, const label nIoObjects=128)
 Construct the time objectRegistry given an initial estimate.
 objectRegistry (const IOobject &io, const label nIoObjects=128)
 Construct a sub-registry given an IObject to describe the registry.
virtual ~objectRegistry ()
const Timetime () const
 Return time.
const objectRegistryparent () const
 Return the parent objectRegistry.
virtual const fileNamedbDir () const
 Local directory path of this objectRegistry relative to the time.
wordList names () const
 Return the list of names of the IOobjects.
wordList names (const word &className) const
 Return the list of names of the IOobjects of given class name.
template<class Type >
wordList names () const
 Return the list of names of the IOobjects of given type.
const objectRegistrysubRegistry (const word &name) const
 Lookup and return a const sub-objectRegistry.
template<class Type >
HashTable< const Type * > lookupClass () const
 Lookup and return all the object of the given Type.
template<class Type >
bool foundObject (const word &name) const
 Is the named Type.
template<class Type >
const Type & lookupObject (const word &name) const
 Lookup and return the object of the given Type.
label getEvent () const
 Return new event number.
virtual void rename (const word &newName)
 Rename.
bool checkIn (regIOobject &) const
 Add an regIOobject to registry.
bool checkOut (regIOobject &) const
 Remove an regIOobject from registry.
virtual bool modified () const
 Return true if any of the object's files have been modified.
void readModifiedObjects ()
 Read the objects that have been modified.
virtual bool readIfModified ()
 Read object if modified.
virtual bool writeData (Ostream &) const
 writeData function required by regIOobject but not used
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 Runtime type information.
 regIOobject (const IOobject &, const bool isTime=false)
 Construct from IOobject. Optional flag for if IOobject is the.
 regIOobject (const regIOobject &)
 Construct as copy.
 regIOobject (const regIOobject &, bool registerCopy)
 Construct as copy, and transferring registry registration to copy.
virtual ~regIOobject ()
bool checkIn ()
 Add object to registry.
bool checkOut ()
 Remove object from registry.
bool ownedByRegistry () const
 Is this object owned by the registry?
void store ()
 Transfer ownership of this object to its registry.
void release ()
 Release ownership of this object from its registry.
label eventNo () const
 Event number at last update.
label & eventNo ()
 Event number at last update.
bool upToDate (const word &) const
 Am I uptodate with respect to other regIOobjects.
bool upToDate (const word &, const word &) const
bool upToDate (const word &, const word &, const word &) const
bool upToDate (const word &, const word &, const word &, const word &) const
void setUpToDate ()
 Flag me as up to date.
IstreamreadStream (const word &)
 Return Istream and check object type against that given.
void close ()
 Close Istream.
virtual bool readData (Istream &)
 Virtual readData function.
virtual bool read ()
 Read object.
virtual bool write () const
 Write using setting from DB.
void operator= (const IOobject &)
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 Runtime type information.
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, registry, io options.
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, local, registry, io options.
 IOobject (const fileName &path, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from path, registry, io options.
Foam::autoPtr< IOobjectclone () const
 Clone.
virtual ~IOobject ()
const objectRegistrydb () const
 Return the local objectRegistry.
const wordname () const
 Return name.
const wordheaderClassName () const
 Return name of the class name read from header.
stringnote ()
 Return non-constant access to the optional note.
const stringnote () const
 Return the optional note.
bool registerObject () const
 Register object created from this IOobject with registry if true.
readOption readOpt () const
readOptionreadOpt ()
writeOption writeOpt () const
writeOptionwriteOpt ()
const fileNamerootPath () const
const fileNamecaseName () const
const fileNameinstance () const
fileNameinstance ()
const fileNamelocal () const
fileName path () const
 Return complete path.
fileName path (const word &instance, const fileName &local="") const
 Return complete path with alternative instance and local.
fileName objectPath () const
 Return complete path + object name.
fileName filePath () const
 Return complete path + object name if the file exists.
bool readHeader (Istream &)
 Read header.
bool headerOk ()
 Read and check header info.
bool writeHeader (Ostream &) const
 Write header.
bool good () const
bool bad () const
InfoProxy< IOobjectinfo () const
 Return info proxy.
- Public Member Functions inherited from HashTable< regIOobject * >
bool set (const word &, const regIOobject *&newElmt)
 Assign a new hashedEntry, overwriting existing entries.
 HashTable (const label size=128)
 Construct given initial table size.
 HashTable (Istream &, const label size=128)
 Construct from Istream.
 HashTable (const HashTable< regIOobject *, word, string::hash > &)
 Construct as copy.
 HashTable (const Xfer< HashTable< regIOobject *, word, string::hash > > &)
 Construct by transferring the parameter contents.
 ~HashTable ()
bool empty () const
 Return true if the hash table is empty.
bool found (const word &) const
 Return true if hashedEntry is found in table.
iterator find (const word &)
 Find and return an iterator set at the hashedEntry.
const_iterator find (const word &) const
 Find and return an const_iterator set at the hashedEntry.
List< wordtoc () const
 Return the table of contents.
List< wordsortedToc () const
 Return the table of contents as a sorted list.
OstreamprintInfo (Ostream &) const
 Print information.
bool insert (const word &, const regIOobject *&newElmt)
 Insert a new hashedEntry.
bool erase (const iterator &)
 Erase an hashedEntry specified by given iterator.
bool erase (const word &)
 Erase an hashedEntry specified by given key if in table.
label erase (const UList< word > &)
 Remove entries given by the listed keys from this HashTable.
label erase (const HashTable< AnyType, word, AnyHash > &)
 Remove entries given by the given keys from this HashTable.
void resize (const label newSize)
 Resize the hash table for efficiency.
void clearStorage ()
 Clear the table entries and the table itself.
void transfer (HashTable< regIOobject *, word, string::hash > &)
 Transfer the contents of the argument table into this table.
Xfer< HashTable< regIOobject
*, word, string::hash > > 
xfer ()
 Transfer contents to the Xfer container.
regIOobject *& operator[] (const word &)
 Find and return an hashedEntry.
const regIOobject *& operator[] (const word &) const
 Find and return an hashedEntry.
regIOobject *& operator() (const word &)
 Find and return an hashedEntry, create it null if not present.
void operator= (const HashTable< regIOobject *, word, string::hash > &)
 Assignment.
bool operator== (const HashTable< regIOobject *, word, string::hash > &) const
 Equality. Two hash tables are equal if all contents of first are.
bool operator!= (const HashTable< regIOobject *, word, string::hash > &) const
 The opposite of the equality operation. Takes linear time.
- Public Member Functions inherited from IDLList< ParticleType >
 IDLList ()
 Null construct.
 IDLList (const ParticleType &a)
 Construct given initial T.
 IDLList (Istream &is, const INew &inewt)
 Construct from Istream using given Istream constructor class.
 IDLList (Istream &is)
 Construct from Istream.
 IDLList (const IDLList< ParticleType > &idll, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone.
- Public Member Functions inherited from ILList< DLListBase, ParticleType >
 ILList ()
 Null construct.
 ILList (ParticleType *a)
 Construct given initial T.
 ILList (Istream &)
 Construct from Istream.
 ILList (const ILList< DLListBase, ParticleType > &)
 Construct as copy.
 ILList (const ILList< DLListBase, ParticleType > &lst, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone.
 ILList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class.
 ~ILList ()
bool eraseHead ()
 Remove the head element specified from the list and delete it.
bool erase (ParticleType *p)
 Remove the specified element from the list and delete it.
void transfer (ILList< DLListBase, ParticleType > &)
 Transfer the contents of the argument into this List.
void operator= (const ILList< DLListBase, ParticleType > &)
- Public Member Functions inherited from UILList< DLListBase, ParticleType >
 UILList ()
 Null construct.
 UILList (ParticleType *a)
 Construct given initial T.
 UILList (const UILList< DLListBase, ParticleType > &)
 Construct as copy.
ParticleType * first ()
 Return the first entry.
const ParticleType * first () const
 Return the first entry.
ParticleType * last ()
 Return the last entry.
const ParticleType * last () const
 Return the last entry.
ParticleType * removeHead ()
 Remove and return head.
ParticleType * remove (ParticleType *p)
 Remove and return element.
ParticleType * remove (iterator &it)
 Remove and return specified by iterator.
void operator= (const UILList< DLListBase, ParticleType > &)
bool operator== (const UILList< DLListBase, ParticleType > &) const
 Equality operation on ULists of the same type.
bool operator!= (const UILList< DLListBase, ParticleType > &) const
 The opposite of the equality operation. Takes linear time.
- Public Member Functions inherited from DLListBase
 DLListBase ()
 Null construct.
 DLListBase (link *)
 Construct given initial entry.
 ~DLListBase ()
bool empty () const
 Return true if the list is empty.
void insert (link *)
 Add at head of list.
void append (link *)
 Add at tail of list.
bool swapUp (link *)
 Swap this element with the one above unless it is at the top.
bool swapDown (link *)
 Swap this element with the one below unless it is at the bottom.
linkremove (link *)
 Remove and return element.
linkreplace (link *oldLink, link *newLink)
 Replace oldLink with newLink and return element.
linkreplace (iterator &oldIter, link *newLink)
 Replace oldIter with newLink and return element.
void transfer (DLListBase &)
 Transfer the contents of the argument into this List.

Static Public Attributes

static word cloudPropertiesName
 Name of cloud properties dictionary.
- Static Public Attributes inherited from cloud
static const word prefix
 The prefix to local: lagrangian.
static word defaultName
 The default cloud name: defaultCloud.

Friends

class Particle
class IOPosition
Ostreamoperator (Ostream &, const Cloud< ParticleType > &)

Member Typedef Documentation

typedef ParticleType particleType

Definition at line 103 of file Cloud.H.

typedef IDLList<ParticleType>::iterator iterator

Reimplemented from HashTable< regIOobject * >.

Definition at line 105 of file Cloud.H.

typedef IDLList<ParticleType>::const_iterator const_iterator

Reimplemented from HashTable< regIOobject * >.

Definition at line 106 of file Cloud.H.


Constructor & Destructor Documentation

Cloud ( const polyMesh mesh,
const IDLList< ParticleType > &  particles 
)

Construct from mesh and a list of particles.

Definition at line 38 of file Cloud.C.

Cloud ( const polyMesh mesh,
const word cloudName,
const IDLList< ParticleType > &  particles 
)

Construct from mesh, cloud name, and a list of particles.

Definition at line 54 of file Cloud.C.

Cloud ( const polyMesh mesh,
const bool  checkClass = true 
)

Construct from mesh by reading from file.

Optionally disable checking of class name for post-processing

Definition at line 140 of file CloudIO.C.

Cloud ( const polyMesh pMesh,
const word cloudName,
const bool  checkClass = true 
)

Construct from mesh by reading from file with given cloud instance.

Optionally disable checking of class name for post-processing

Definition at line 155 of file CloudIO.C.


Member Function Documentation

TypeName ( "Cloud< ParticleType >"  )

Runtime type information.

const polyMesh& pMesh ( ) const
inline

Return the polyMesh reference.

Definition at line 159 of file Cloud.H.

Referenced by KinematicParcel< ParcelType >::massCell(), solidParticle::move(), trackedParticle::move(), and parcel::move().

bool internalFace ( const label  facei) const
inline

Is this global face an internal face?

Definition at line 165 of file Cloud.H.

Referenced by Cloud< BasicReactingParcel< ThermoType > >::boundaryFace().

bool boundaryFace ( const label  facei) const
inline

Is this global face a boundary face?

Definition at line 171 of file Cloud.H.

label facePatch ( const label  facei) const
inline

Which patch is this global face on.

Definition at line 177 of file Cloud.H.

label patchFace ( const label  patchi,
const label  facei 
) const
inline

Which face of this patch is this global face.

Definition at line 183 of file Cloud.H.

const const_iterator cbegin ( ) const
inline

const_iterator set to the beginning of the HashTable

Reimplemented from HashTable< regIOobject * >.

Definition at line 201 of file Cloud.H.

Referenced by Cloud< BasicReactingParcel< ThermoType > >::cbegin().

const const_iterator cend ( ) const
inline

const_iterator set to beyond the end of the HashTable

Reimplemented from HashTable< regIOobject * >.

Definition at line 211 of file Cloud.H.

Referenced by Cloud< BasicReactingParcel< ThermoType > >::cend().

iterator begin ( )
inline

iterator set to the begining of the HashTable

Reimplemented from HashTable< regIOobject * >.

Definition at line 216 of file Cloud.H.

iterator end ( )
inline

iterator set to beyond the end of the HashTable

Reimplemented from HashTable< regIOobject * >.

Definition at line 221 of file Cloud.H.

void clear ( )
inline

Clear the contents of the list.

Reimplemented from ILList< DLListBase, ParticleType >.

Reimplemented in DsmcCloud< ParcelType >.

Definition at line 229 of file Cloud.H.

Referenced by Cloud< BasicReactingParcel< ThermoType > >::clear().

Foam::label getNewParticleID ( ) const

Get unique particle creation id.

Definition at line 72 of file Cloud.C.

References Foam::endl(), and WarningIn.

void addParticle ( ParticleType *  pPtr)

Transfer particle to cloud.

Definition at line 87 of file Cloud.C.

References append().

void deleteParticle ( ParticleType &  p)

Remove particle from cloud and delete.

Definition at line 94 of file Cloud.C.

References p.

Referenced by ORourkeCollisionModel::collideParcels(), and trajectoryCollisionModel::collideParcels().

void autoMap ( const mapPolyMesh mapper)
virtual

Remap the cells of particles corresponding to the.

mesh topology change

Implements cloud.

Definition at line 287 of file Cloud.C.

References Foam::endl(), forAllIter, Foam::Info, mapPolyMesh::mergedCell(), name(), p, mapPolyMesh::reverseCellMap(), and mapPolyMesh::reverseFaceMap().

void readFields ( )
virtual

Read the field data for the cloud of particles. Dummy at.

this level.

Definition at line 213 of file CloudIO.C.

void writeFields ( ) const
virtual

Write the field data for the cloud of particles Dummy at.

this level.

Definition at line 218 of file CloudIO.C.

References p.

bool writeObject ( IOstream::streamFormat  fmt,
IOstream::versionNumber  ver,
IOstream::compressionType  cmp 
) const
virtual

Write using given format, version and compression.

Only writes the cloud file if the Cloud isn't empty

Reimplemented from objectRegistry.

Definition at line 230 of file CloudIO.C.

void writePositions ( ) const

Write positions to <cloudName>_positions.obj file.

Definition at line 333 of file Cloud.C.

References OSstream::flush(), forAllConstIter, name(), Foam::nl, and p.


Friends And Related Function Documentation

friend class Particle
friend

Definition at line 99 of file Cloud.H.

friend class IOPosition
friend

Definition at line 101 of file Cloud.H.

Ostream& operator ( Ostream ,
const Cloud< ParticleType > &   
)
friend

Member Data Documentation

Foam::word cloudPropertiesName
static

Name of cloud properties dictionary.

Definition at line 115 of file Cloud.H.


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