FreeFOAM The Cross-Platform CFD Toolkit
moleculeCloud Class Reference

#include <molecule/moleculeCloud.H>


Detailed Description

+ Inheritance diagram for moleculeCloud:
+ Collaboration diagram for moleculeCloud:

List of all members.

Public Member Functions

 moleculeCloud (const polyMesh &mesh, const potential &pot, bool readFields=true)
 Construct given mesh and potential references.
 moleculeCloud (const polyMesh &mesh, const potential &pot, const IOdictionary &mdInitialiseDict, bool readFields=true)
 Construct given mesh, potential and mdInitialiseDict.
void evolve ()
 Evolve the molecules (move, calculate forces, control state etc)
void calculateForce ()
void applyConstraintsAndThermostats (const scalar targetTemperature, const scalar measuredTemperature)
const polyMeshmesh () const
const potentialpot () const
const List< DynamicList
< molecule * > > & 
cellOccupancy () const
const interactionListsil () const
const List
< molecule::constantProperties
constProps () const
const
molecule::constantProperties
constProps (label id) const
RandomrndGen ()
void writeXYZ (const fileName &fName) const
 Write molecule sites in XYZ format.
- Public Member Functions inherited from Cloud< molecule >
 TypeName ("Cloud")
 Runtime type information.
 Cloud (const polyMesh &mesh, const IDLList< molecule > &particles)
 Construct from mesh and a list of particles.
 Cloud (const polyMesh &mesh, const word &cloudName, const IDLList< molecule > &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
iterator begin ()
 iterator set to the begining 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
iterator end ()
 iterator set to beyond the end of the HashTable
const const_iterator cend () const
 const_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 (molecule *pPtr)
 Transfer particle to cloud.
void deleteParticle (molecule &)
 Remove particle from cloud and delete.
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.
void checkFieldIOobject (const Cloud< molecule > &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< molecule >
 IDLList ()
 Null construct.
 IDLList (const molecule &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< molecule > &idll, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone.
- Public Member Functions inherited from ILList< DLListBase, molecule >
 ILList ()
 Null construct.
 ILList (molecule *a)
 Construct given initial T.
 ILList (Istream &)
 Construct from Istream.
 ILList (const ILList< DLListBase, molecule > &)
 Construct as copy.
 ILList (const ILList< DLListBase, molecule > &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 (molecule *p)
 Remove the specified element from the list and delete it.
void transfer (ILList< DLListBase, molecule > &)
 Transfer the contents of the argument into this List.
void operator= (const ILList< DLListBase, molecule > &)
- Public Member Functions inherited from UILList< DLListBase, molecule >
 UILList ()
 Null construct.
 UILList (molecule *a)
 Construct given initial T.
 UILList (const UILList< DLListBase, molecule > &)
 Construct as copy.
moleculefirst ()
 Return the first entry.
const moleculefirst () const
 Return the first entry.
moleculelast ()
 Return the last entry.
const moleculelast () const
 Return the last entry.
moleculeremoveHead ()
 Remove and return head.
moleculeremove (molecule *p)
 Remove and return element.
moleculeremove (iterator &it)
 Remove and return specified by iterator.
void operator= (const UILList< DLListBase, molecule > &)
bool operator== (const UILList< DLListBase, molecule > &) const
 Equality operation on ULists of the same type.
bool operator!= (const UILList< DLListBase, molecule > &) 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 scalar kb = 1.380650277e-23
static scalar elementaryCharge = 1.602176487e-19
static scalar vacuumPermittivity = 8.854187817e-12
- Static Public Attributes inherited from Cloud< molecule >
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.

Additional Inherited Members

- Public Types inherited from Cloud< molecule >
typedef molecule particleType
typedef IDLList< molecule >
::iterator 
iterator
typedef IDLList< molecule >
::const_iterator 
const_iterator

Constructor & Destructor Documentation

moleculeCloud ( const polyMesh mesh,
const potential pot,
bool  readFields = true 
)

Construct given mesh and potential references.

Definition at line 1063 of file moleculeCloud.C.

References molecule::readFields().

moleculeCloud ( const polyMesh mesh,
const potential pot,
const IOdictionary mdInitialiseDict,
bool  readFields = true 
)

Construct given mesh, potential and mdInitialiseDict.

Definition at line 1093 of file moleculeCloud.C.

References clear(), and molecule::readFields().


Member Function Documentation

void evolve ( )

Evolve the molecules (move, calculate forces, control state etc)

Definition at line 1122 of file moleculeCloud.C.

References Cloud< ParticleType >::move().

void calculateForce ( )

Definition at line 1140 of file moleculeCloud.C.

References Vector< scalar >::zero, and Tensor< Cmpt >::zero.

void applyConstraintsAndThermostats ( const scalar  targetTemperature,
const scalar  measuredTemperature 
)

Definition at line 1165 of file moleculeCloud.C.

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

const Foam::polyMesh & mesh ( ) const
inline

Definition at line 618 of file moleculeCloudI.H.

Referenced by molecule::writeFields().

const Foam::potential & pot ( ) const
inline

Definition at line 624 of file moleculeCloudI.H.

const Foam::List< Foam::DynamicList< Foam::molecule * > > & cellOccupancy ( ) const
inline

Definition at line 631 of file moleculeCloudI.H.

const Foam::interactionLists & il ( ) const
inline

Definition at line 638 of file moleculeCloudI.H.

const Foam::List< Foam::molecule::constantProperties > constProps ( ) const
inline

Definition at line 645 of file moleculeCloudI.H.

Referenced by molecule::move().

const Foam::molecule::constantProperties & constProps ( label  id) const
inline

Definition at line 652 of file moleculeCloudI.H.

Foam::Random & rndGen ( )
inline

Definition at line 658 of file moleculeCloudI.H.

void writeXYZ ( const fileName fName) const

Write molecule sites in XYZ format.

Definition at line 1195 of file moleculeCloud.C.

References forAll, Foam::nl, molecule::constantProperties::siteIds(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().

Referenced by molecule::writeFields().


Member Data Documentation

Foam::scalar kb = 1.380650277e-23
static

Definition at line 160 of file moleculeCloud.H.

Foam::scalar elementaryCharge = 1.602176487e-19
static

Definition at line 162 of file moleculeCloud.H.

Foam::scalar vacuumPermittivity = 8.854187817e-12
static

Definition at line 164 of file moleculeCloud.H.


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