Emdee
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Attributes | Friends | List of all members
MoleculeSystemCell Class Reference

The MoleculeSystemCell class defines a region of a MoleculeSystem and holds information about neighboring MoleculeSystemCell objects. More...

#include <moleculesystemcell.h>

Collaboration diagram for MoleculeSystemCell:
Collaboration graph
[legend]

Public Member Functions

 MoleculeSystemCell (MoleculeSystem *parent)
 
void setBoundaries (mat boundaries)
 
void addNeighbor (MoleculeSystemCell *cell, const Vector3 &offset, const irowvec &direction)
 
const mat & boundaries () const
 
void addAtom (Atom *atom)
 
const vector< Atom * > & atoms ()
 
void setIndices (const irowvec &indices)
 
const irowvec & indices () const
 
void updateTwoParticleForceAndNeighborAtoms ()
 
void clearAtoms ()
 
void clearAlreadyCalculatedNeighbors ()
 
void deleteAtomsFromCellAndSystem ()
 
void setID (int id)
 
int id () const
 
void addAtoms (const vector< Atom * > &atoms)
 
void deleteAtoms (int nAtoms)
 
const vector
< MoleculeSystemCell * > & 
neighborCells ()
 
void setLocal (bool localCell)
 
bool isLocal () const
 

Protected Attributes

mat geometry
 
vector< MoleculeSystemCell * > m_neighborCells
 
vector< Vector3m_neighborOffsets
 
vector< Vector3m_negativeNeighborOffsets
 
vector< irowvec > m_neighborDirections
 
int m_nDimensions
 
int pow3nDimensions
 
irowvec m_indices
 
MoleculeSystemm_moleculeSystem
 
mat m_boundaries
 
mat cellShiftVectors
 
vector< Atom * > m_atoms
 
int m_id
 
Vector3force
 
Vector3 blankForce
 
Vector3 zeroOffset
 
bool m_isOnProcessorEdge
 
bool m_isLocalCell
 

Friends

ostream & operator<< (ostream &os, const MoleculeSystemCell &dt)
 
ostream & operator<< (ostream &os, MoleculeSystemCell *dt)
 

Detailed Description

The MoleculeSystemCell class defines a region of a MoleculeSystem and holds information about neighboring MoleculeSystemCell objects.

Constructor & Destructor Documentation

MoleculeSystemCell::MoleculeSystemCell ( MoleculeSystem parent)

Member Function Documentation

void MoleculeSystemCell::addAtom ( Atom atom)
void MoleculeSystemCell::addAtoms ( const vector< Atom * > &  atoms)
void MoleculeSystemCell::addNeighbor ( MoleculeSystemCell cell,
const Vector3 offset,
const irowvec &  direction 
)
const vector< Atom * > & MoleculeSystemCell::atoms ( )
const mat & MoleculeSystemCell::boundaries ( ) const
void MoleculeSystemCell::clearAlreadyCalculatedNeighbors ( )
void MoleculeSystemCell::clearAtoms ( )
void MoleculeSystemCell::deleteAtoms ( int  nAtoms)
void MoleculeSystemCell::deleteAtomsFromCellAndSystem ( )
int MoleculeSystemCell::id ( ) const
const irowvec & MoleculeSystemCell::indices ( ) const
bool MoleculeSystemCell::isLocal ( ) const
const vector<MoleculeSystemCell*>& MoleculeSystemCell::neighborCells ( )
inline
void MoleculeSystemCell::setBoundaries ( mat  boundaries)
void MoleculeSystemCell::setID ( int  id)
void MoleculeSystemCell::setIndices ( const irowvec &  indices)
void MoleculeSystemCell::setLocal ( bool  localCell)
void MoleculeSystemCell::updateTwoParticleForceAndNeighborAtoms ( )

Friends And Related Function Documentation

ostream& operator<< ( ostream &  os,
const MoleculeSystemCell dt 
)
friend
ostream& operator<< ( ostream &  os,
MoleculeSystemCell dt 
)
friend

Member Data Documentation

Vector3 MoleculeSystemCell::blankForce
protected
mat MoleculeSystemCell::cellShiftVectors
protected
Vector3& MoleculeSystemCell::force
protected
mat MoleculeSystemCell::geometry
protected
vector<Atom*> MoleculeSystemCell::m_atoms
protected
mat MoleculeSystemCell::m_boundaries
protected
int MoleculeSystemCell::m_id
protected
irowvec MoleculeSystemCell::m_indices
protected
bool MoleculeSystemCell::m_isLocalCell
protected
bool MoleculeSystemCell::m_isOnProcessorEdge
protected
MoleculeSystem* MoleculeSystemCell::m_moleculeSystem
protected
int MoleculeSystemCell::m_nDimensions
protected
vector<Vector3> MoleculeSystemCell::m_negativeNeighborOffsets
protected
vector<MoleculeSystemCell*> MoleculeSystemCell::m_neighborCells
protected
vector<irowvec> MoleculeSystemCell::m_neighborDirections
protected
vector<Vector3> MoleculeSystemCell::m_neighborOffsets
protected
int MoleculeSystemCell::pow3nDimensions
protected
Vector3 MoleculeSystemCell::zeroOffset
protected

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