FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

Foam::molecule. More...

#include <molecule/molecule.H>


Detailed Description

Foam::molecule.

Source files

Definition at line 57 of file molecule.H.

Inheritance diagram for molecule:
Collaboration diagram for molecule:

List of all members.

Classes

class  constantProperties
 Class to hold molecule constant properties. More...
class  trackData
 Class used to pass tracking data to the trackToFace function. More...

Public Types

enum  specialTypes { SPECIAL_TETHERED = -1, SPECIAL_FROZEN = -2, NOT_SPECIAL = 0, SPECIAL_USER = 1 }

Public Member Functions

 molecule (const Cloud< molecule > &c, const vector &position, const label celli, const tensor &Q, const vector &v, const vector &a, const vector &pi, const vector &tau, const vector &specialPosition, const constantProperties &constProps, const label special, const label id)
 Construct from components.
 molecule (const Cloud< molecule > &c, Istream &is, bool readFields=true)
 Construct from Istream.
autoPtr< molecule >  clone () const
 Construct and return a clone.
bool  move (trackData &)
void  transformProperties (const tensor &T)
 Transform the physical properties of the particle.
void  transformProperties (const vector &separation)
 Transform the physical properties of the particle.
void  setSitePositions (const constantProperties &constProps)
void  setSiteSizes (label size)
const tensor &  Q () const
tensor &  Q ()
const vector &  v () const
vector &  v ()
const vector &  a () const
vector &  a ()
const vector &  pi () const
vector &  pi ()
const vector &  tau () const
vector &  tau ()
const List< vector > &  siteForces () const
List< vector > &  siteForces ()
const List< vector > &  sitePositions () const
List< vector > &  sitePositions ()
const vector &  specialPosition () const
vector &  specialPosition ()
scalar  potentialEnergy () const
scalar &  potentialEnergy ()
const tensor &  rf () const
tensor &  rf ()
label  special () const
bool  tethered () const
label  id () const
bool  hitPatch (const polyPatch &, molecule::trackData &td, const label patchI)
 Overridable function to handle the particle hitting a patch.
bool  hitPatch (const polyPatch &p, int &td, const label patchI)
 Overridable function to handle the particle hitting a patch.
void  hitProcessorPatch (const processorPolyPatch &, molecule::trackData &td)
 Overridable function to handle the particle hitting a processorPatch.
void  hitProcessorPatch (const processorPolyPatch &, int &)
 Overridable function to handle the particle hitting a processorPatch.
void  hitWallPatch (const wallPolyPatch &, molecule::trackData &td)
 Overridable function to handle the particle hitting a wallPatch.
void  hitWallPatch (const wallPolyPatch &, int &)
 Overridable function to handle the particle hitting a wallPatch.
void  hitPatch (const polyPatch &, molecule::trackData &td)
 Overridable function to handle the particle hitting a polyPatch.
void  hitPatch (const polyPatch &, int &)
 Overridable function to handle the particle hitting a polyPatch.

Static Public Member Functions

static void  readFields (Cloud< molecule > &mC)
 Read the fields associated with the owner cloud.
static void  writeFields (const Cloud< molecule > &mC)
 Write the fields associated with the owner cloud.

Friends

class  Cloud< molecule >
Ostream &  operator<< (Ostream &, const molecule &)

Member Enumeration Documentation

Enumerator:
SPECIAL_TETHERED 
SPECIAL_FROZEN 
NOT_SPECIAL 
SPECIAL_USER 

Definition at line 68 of file molecule.H.


Constructor & Destructor Documentation

molecule ( const Cloud< molecule > &   c,
const vector &   position,
const label   celli,
const tensor &   Q,
const vector &   v,
const vector &   a,
const vector &   pi,
const vector &   tau,
const vector &   specialPosition,
const constantProperties &   constProps,
const label   special,
const label   id  
) [inline]

Construct from components.

Definition at line 221 of file moleculeI.H.

References molecule::setSitePositions().

Referenced by molecule::clone().

molecule ( const Cloud< molecule > &   c,
Istream &   is,
bool   readFields = true  
)

Construct from Istream.

Definition at line 33 of file moleculeIO.C.

References readScalar.


Member Function Documentation

autoPtr<molecule> clone (  ) const [inline]

Construct and return a clone.

Reimplemented from Particle< molecule >.

Definition at line 259 of file molecule.H.

References molecule::molecule().

void transformProperties ( const tensor &   T  ) [virtual]

Transform the physical properties of the particle.

according to the given transformation tensor

Reimplemented from Particle< molecule >.

Definition at line 210 of file molecule.C.

void transformProperties ( const vector &   separation  ) [virtual]

Transform the physical properties of the particle.

according to the given separation vector

Reimplemented from Particle< molecule >.

Definition at line 220 of file molecule.C.

void setSitePositions ( const constantProperties &   constProps  )

Definition at line 229 of file molecule.C.

References molecule::constantProperties::siteReferencePositions().

Referenced by molecule::molecule().

void setSiteSizes ( label   size  )

Definition at line 235 of file molecule.C.

const Foam::tensor & Q (  ) const [inline]
Foam::tensor & Q (  ) [inline]

Definition at line 485 of file moleculeI.H.

const Foam::vector & v (  ) const [inline]

Definition at line 491 of file moleculeI.H.

Referenced by molecule::readFields().

Foam::vector & v (  ) [inline]

Definition at line 497 of file moleculeI.H.

const Foam::vector & a (  ) const [inline]

Definition at line 503 of file moleculeI.H.

Referenced by molecule::readFields().

Foam::vector & a (  ) [inline]

Definition at line 509 of file moleculeI.H.

const Foam::vector & pi (  ) const [inline]

Definition at line 515 of file moleculeI.H.

Referenced by molecule::readFields().

Foam::vector & pi (  ) [inline]

Definition at line 521 of file moleculeI.H.

const Foam::vector & tau (  ) const [inline]

Definition at line 527 of file moleculeI.H.

Referenced by molecule::readFields().

Foam::vector & tau (  ) [inline]

Definition at line 533 of file moleculeI.H.

const Foam::List< Foam::vector > & siteForces (  ) const [inline]

Definition at line 539 of file moleculeI.H.

Foam::List< Foam::vector > & siteForces (  ) [inline]

Definition at line 545 of file moleculeI.H.

const Foam::List< Foam::vector > & sitePositions (  ) const [inline]

Definition at line 551 of file moleculeI.H.

Referenced by referredCellList::referMolecules().

Foam::List< Foam::vector > & sitePositions (  ) [inline]

Definition at line 557 of file moleculeI.H.

const Foam::vector & specialPosition (  ) const [inline]

Definition at line 563 of file moleculeI.H.

Referenced by molecule::readFields().

Foam::vector & specialPosition (  ) [inline]

Definition at line 569 of file moleculeI.H.

Foam::scalar potentialEnergy (  ) const [inline]

Definition at line 575 of file moleculeI.H.

Foam::scalar & potentialEnergy (  ) [inline]

Definition at line 581 of file moleculeI.H.

const Foam::tensor & rf (  ) const [inline]

Definition at line 587 of file moleculeI.H.

Foam::tensor & rf (  ) [inline]

Definition at line 593 of file moleculeI.H.

Foam::label special (  ) const [inline]

Definition at line 599 of file moleculeI.H.

Referenced by molecule::readFields().

bool tethered (  ) const [inline]

Definition at line 605 of file moleculeI.H.

References molecule::SPECIAL_TETHERED.

Foam::label id (  ) const [inline]

Definition at line 611 of file moleculeI.H.

Referenced by molecule::readFields(), and referredCellList::referMolecules().

bool hitPatch ( const polyPatch &   ,
molecule::trackData &   td,
const label   patchI  
)

Overridable function to handle the particle hitting a patch.

Executed before other patch-hitting functions

Definition at line 244 of file molecule.C.

bool hitPatch ( const polyPatch &   p,
int &   td,
const label   patchI  
)

Overridable function to handle the particle hitting a patch.

Executed before other patch-hitting functions without trackData

Definition at line 255 of file molecule.C.

void hitProcessorPatch ( const processorPolyPatch &   ,
molecule::trackData &   td  
)

Overridable function to handle the particle hitting a processorPatch.

Definition at line 266 of file molecule.C.

References Particle< ParticleType >::trackData::switchProcessor.

void hitProcessorPatch ( const processorPolyPatch &   ,
int &    
)

Overridable function to handle the particle hitting a processorPatch.

without trackData

Definition at line 276 of file molecule.C.

void hitWallPatch ( const wallPolyPatch &   wpp,
molecule::trackData &   td  
)

Overridable function to handle the particle hitting a wallPatch.

Definition at line 284 of file molecule.C.

References polyPatch::faceAreas(), Foam::mag(), and polyPatch::whichFace().

void hitWallPatch ( const wallPolyPatch &   ,
int &    
)

Overridable function to handle the particle hitting a wallPatch.

without trackData

Definition at line 303 of file molecule.C.

void hitPatch ( const polyPatch &   ,
molecule::trackData &   td  
)

Overridable function to handle the particle hitting a polyPatch.

Definition at line 311 of file molecule.C.

References Particle< ParticleType >::trackData::keepParticle.

void hitPatch ( const polyPatch &   ,
int &    
)

Overridable function to handle the particle hitting a polyPatch.

without trackData

Definition at line 321 of file molecule.C.


Friends And Related Function Documentation

friend class Cloud< molecule > [friend]

Definition at line 229 of file molecule.H.

Ostream& operator<< ( Ostream &   ,
const molecule &    
) [friend]

The documentation for this class was generated from the following files:
  • src/lagrangian/molecularDynamics/molecule/molecule/molecule.H
  • src/lagrangian/molecularDynamics/molecule/molecule/molecule.C
  • src/lagrangian/molecularDynamics/molecule/molecule/moleculeI.H
  • src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C