BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members
BALL::SnapShot Class Reference

#include <BALL/MOLMEC/COMMON/snapShot.h>

Public Member Functions

Constructors and Destructors
 SnapShot ()
 
 SnapShot (const SnapShot &snapshot)
 Copy constructor. More...
 
virtual ~SnapShot ()
 The destructor. More...
 
Assignment
const SnapShotoperator= (const SnapShot &snapshot)
 Assignment operator. More...
 
virtual void clear ()
 Clear method. More...
 
Predicates
bool operator== (const SnapShot &snapshot) const
 Equality operator. More...
 
bool isValid () const
 
Accessors
void setIndex (Size index)
 Set the index attribute. More...
 
Size getIndex () const
 Get the index of this instance. More...
 
void setNumberOfAtoms (Size number_of_atoms)
 Set the number of atoms that are covered by this snapshot. More...
 
Size getNumberOfAtoms () const
 Get the number of atoms that are covered by this snapshot. More...
 
void setPotentialEnergy (DoubleReal potential_energy)
 Set the value for the potential energy of this snapshot's system. More...
 
DoubleReal getPotentialEnergy () const
 Get the value for the potential energy of this snapshot's system. More...
 
void setKineticEnergy (DoubleReal kinetic_energy)
 Set the value for the kinetic energy of this snapshot's system. More...
 
DoubleReal getKineticEnergy () const
 Get the value for the kinetic energy of this snapshot's system. More...
 
void setAtomPositions (const ::std::vector< Vector3 > &atom_postions)
 Specify all atom positions. More...
 
const ::std::vector< Vector3 > & getAtomPositions () const
 Get the vector containing the atom postions. More...
 
void setAtomVelocities (const ::std::vector< Vector3 > &atom_velocities)
 Specify all atom velocities. More...
 
const ::std::vector< Vector3 > & getAtomVelocities () const
 Get the vector containing the atom velocitites. More...
 
void setAtomForces (const ::std::vector< Vector3 > &atom_forces)
 Specify all atom forces. More...
 
const ::std::vector< Vector3 > & getAtomForces () const
 Get all atom forces. More...
 
System interaction
void takeSnapShot (const System &system) throw (Exception::OutOfMemory)
 
void applySnapShot (System &system) const
 
void getAtomPositions (const System &system) throw (Exception::OutOfMemory)
 
void setAtomPositions (System &system) const
 
void getAtomVelocities (const System &system) throw (Exception::OutOfMemory)
 
void setAtomVelocitites (System &system) const
 
void getAtomForces (const System &system) throw (Exception::OutOfMemory)
 
void setAtomForces (System &system) const
 

Protected Attributes

Size index_
 
Size number_of_atoms_
 
double potential_energy_
 
double kinetic_energy_
 
vector< Vector3atom_positions_
 
vector< Vector3atom_velocities_
 
vector< Vector3atom_forces_
 

Detailed Description

SnapShot class, containing the actual data of one single snapshot. It consists of the posistions, velocities and forces for each atom along with kinetic and potential energy of selected atoms. It is used by the SnapShotManager .

Definition at line 29 of file snapShot.h.

Constructor & Destructor Documentation

BALL::SnapShot::SnapShot ( )

The default constructor. It creates an empty SnapShot object.

BALL::SnapShot::SnapShot ( const SnapShot snapshot)

Copy constructor.

virtual BALL::SnapShot::~SnapShot ( )
virtual

The destructor.

Member Function Documentation

void BALL::SnapShot::applySnapShot ( System system) const

Apply the data contained in a SnapShot to a System. Copy all available data to the system. Note that some trajectory file formats do not contain all this information and vectors might be zero or even worse undefined when read SnapShots are read from such a file.

Parameters
systemthe System which will be manipulated
virtual void BALL::SnapShot::clear ( )
virtual

Clear method.

const ::std::vector<Vector3>& BALL::SnapShot::getAtomForces ( ) const

Get all atom forces.

void BALL::SnapShot::getAtomForces ( const System system)
throw (Exception::OutOfMemory
)

Read all atom forces from a System and store them in this instance of SnapShot.

Parameters
systemthe System from which data will be read
const ::std::vector<Vector3>& BALL::SnapShot::getAtomPositions ( ) const

Get the vector containing the atom postions.

void BALL::SnapShot::getAtomPositions ( const System system)
throw (Exception::OutOfMemory
)

Read all atom positions from a System and store them in this instance of SnapShot.

Parameters
systemthe System from which data will be read
const ::std::vector<Vector3>& BALL::SnapShot::getAtomVelocities ( ) const

Get the vector containing the atom velocitites.

void BALL::SnapShot::getAtomVelocities ( const System system)
throw (Exception::OutOfMemory
)

Read all atom velocities from a System and store them in this instance of SnapShot.

Parameters
systemthe System from which data will be read
Size BALL::SnapShot::getIndex ( ) const

Get the index of this instance.

DoubleReal BALL::SnapShot::getKineticEnergy ( ) const

Get the value for the kinetic energy of this snapshot's system.

Size BALL::SnapShot::getNumberOfAtoms ( ) const

Get the number of atoms that are covered by this snapshot.

DoubleReal BALL::SnapShot::getPotentialEnergy ( ) const

Get the value for the potential energy of this snapshot's system.

bool BALL::SnapShot::isValid ( ) const

Indicates validity of the SnapShot

Returns
true if this instance is valid
const SnapShot& BALL::SnapShot::operator= ( const SnapShot snapshot)

Assignment operator.

bool BALL::SnapShot::operator== ( const SnapShot snapshot) const

Equality operator.

void BALL::SnapShot::setAtomForces ( const ::std::vector< Vector3 > &  atom_forces)

Specify all atom forces.

void BALL::SnapShot::setAtomForces ( System system) const

Set all Atom forces of a System to the values stored in this instance of SnapShot.

Parameters
systemthe system which will be manipulated
void BALL::SnapShot::setAtomPositions ( const ::std::vector< Vector3 > &  atom_postions)

Specify all atom positions.

void BALL::SnapShot::setAtomPositions ( System system) const

Set all Atom positions of a System to the values stored in this instance of SnapShot.

Parameters
systemthe system which will be manipulated
void BALL::SnapShot::setAtomVelocities ( const ::std::vector< Vector3 > &  atom_velocities)

Specify all atom velocities.

void BALL::SnapShot::setAtomVelocitites ( System system) const

Set all Atom velocities of a System to the values stored in this instance of SnapShot.

Parameters
systemthe system which will be manipulated
void BALL::SnapShot::setIndex ( Size  index)

Set the index attribute.

void BALL::SnapShot::setKineticEnergy ( DoubleReal  kinetic_energy)

Set the value for the kinetic energy of this snapshot's system.

void BALL::SnapShot::setNumberOfAtoms ( Size  number_of_atoms)

Set the number of atoms that are covered by this snapshot.

void BALL::SnapShot::setPotentialEnergy ( DoubleReal  potential_energy)

Set the value for the potential energy of this snapshot's system.

void BALL::SnapShot::takeSnapShot ( const System system)
throw (Exception::OutOfMemory
)

Take a SnapShot from a system. Copy all positions, velocities and forces from the System system to this instance of SnapShot.

Parameters
systemthe System from which to take the data

Member Data Documentation

vector<Vector3> BALL::SnapShot::atom_forces_
protected

Definition at line 209 of file snapShot.h.

vector<Vector3> BALL::SnapShot::atom_positions_
protected

Definition at line 203 of file snapShot.h.

vector<Vector3> BALL::SnapShot::atom_velocities_
protected

Definition at line 206 of file snapShot.h.

Size BALL::SnapShot::index_
protected

Definition at line 184 of file snapShot.h.

double BALL::SnapShot::kinetic_energy_
protected

Definition at line 200 of file snapShot.h.

Size BALL::SnapShot::number_of_atoms_
protected

Definition at line 190 of file snapShot.h.

double BALL::SnapShot::potential_energy_
protected

Definition at line 195 of file snapShot.h.