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

The Atom class defines the type, position and other properties of an atom. More...

#include <atom.h>

Collaboration diagram for Atom:
Collaboration graph
[legend]

Public Member Functions

 Atom ()
 
 Atom (const AtomType &atomType)
 
void clearForcePotentialPressure ()
 
void clearDisplacement ()
 
const Vector3position () const
 
const Vector3velocity () const
 
const Vector3force () const
 
const Vector3displacement () const
 
const AtomTypetype () const
 
double potential () const
 
double localPressure () const
 
int cellID () const
 
int id () const
 
double mass () const
 
void addLocalPressure (double pressure)
 
void addForce (int component, double force)
 
void setPosition (const Vector3 &position)
 
void setVelocity (const Vector3 &velocity)
 
void addForce (const Vector3 &force)
 
void addPotential (double potential)
 
void setCellID (int cellID)
 
void addDisplacement (const Vector3 &displacement)
 
void addDisplacement (double displacement, uint component)
 
void setForce (const Vector3 &force)
 
void clone (const Atom &other)
 
void communicationClone (const Atom &other, const vector< AtomType > &moleculeSystem)
 
bool isPositionFixed ()
 
void setPositionFixed (bool fixed)
 
void setID (int id)
 
const std::vector< std::pair
< Atom *, Vector3 * > > & 
neighborAtoms ()
 
void clearNeighborAtoms ()
 
void addNeighborAtom (Atom *neighborAtom, Vector3 *offsetVector)
 
void setAtomType (const AtomType &atomType)
 

Protected Attributes

Vector3 m_position
 
Vector3 m_force
 
Vector3 m_velocity
 
Vector3 m_displacement
 
double m_potential
 
double m_localPressure
 
int m_cellID
 
AtomType m_atomType
 
bool m_isPositionFixed
 
int m_id
 
int m_atomTypeIndex
 
std::vector< std::pair< Atom
*, Vector3 * > > 
m_neighborAtoms
 

Friends

class TwoParticleForce
 

Detailed Description

The Atom class defines the type, position and other properties of an atom.

Constructor & Destructor Documentation

Atom::Atom ( )
inline
Atom::Atom ( const AtomType atomType)
inline

Member Function Documentation

void Atom::addDisplacement ( const Vector3 displacement)
inline
void Atom::addDisplacement ( double  displacement,
uint  component 
)
inline
void Atom::addForce ( int  component,
double  force 
)
inline
void Atom::addForce ( const Vector3 force)
inline
void Atom::addLocalPressure ( double  pressure)
inline
void Atom::addNeighborAtom ( Atom neighborAtom,
Vector3 offsetVector 
)
void Atom::addPotential ( double  potential)
inline
int Atom::cellID ( ) const
inline
void Atom::clearDisplacement ( )
inline
void Atom::clearForcePotentialPressure ( )
inline
void Atom::clearNeighborAtoms ( )
void Atom::clone ( const Atom other)
void Atom::communicationClone ( const Atom other,
const vector< AtomType > &  moleculeSystem 
)
inline
const Vector3 & Atom::displacement ( ) const
inline
const Vector3 & Atom::force ( ) const
inline
int Atom::id ( ) const
inline
bool Atom::isPositionFixed ( )
inline
double Atom::localPressure ( ) const
inline
double Atom::mass ( ) const
inline
const std::vector< std::pair< Atom *, Vector3 * > > & Atom::neighborAtoms ( )
const Vector3 & Atom::position ( ) const
inline
double Atom::potential ( ) const
inline
void Atom::setAtomType ( const AtomType atomType)
void Atom::setCellID ( int  cellID)
inline
void Atom::setForce ( const Vector3 force)
inline
void Atom::setID ( int  id)
inline
void Atom::setPosition ( const Vector3 position)
inline
void Atom::setPositionFixed ( bool  fixed)
inline
void Atom::setVelocity ( const Vector3 velocity)
inline
const AtomType & Atom::type ( ) const
inline
const Vector3 & Atom::velocity ( ) const
inline

Friends And Related Function Documentation

friend class TwoParticleForce
friend

Member Data Documentation

AtomType Atom::m_atomType
protected
int Atom::m_atomTypeIndex
protected
int Atom::m_cellID
protected
Vector3 Atom::m_displacement
protected
Vector3 Atom::m_force
protected
int Atom::m_id
protected
bool Atom::m_isPositionFixed
protected
double Atom::m_localPressure
protected
std::vector<std::pair<Atom *, Vector3 *> > Atom::m_neighborAtoms
protected
Vector3 Atom::m_position
protected
double Atom::m_potential
protected
Vector3 Atom::m_velocity
protected

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