ProtoMol - an object-oriented component based framework for Molecular Dynamics simulations.

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

ProtoMol::NVTVerletIntegrator Class Reference

#include <NVTVerletIntegrator.h>

Inheritance diagram for ProtoMol::NVTVerletIntegrator:

ProtoMol::STSIntegrator ProtoMol::StandardIntegrator ProtoMol::Integrator ProtoMol::Makeable List of all members.

Public Member Functions

 NVTVerletIntegrator ()
 NVTVerletIntegrator (Real timestep, Real temperature, Real omegaTo, ForceGroup *overloadedForces)
virtual std::string getIdNoAlias () const
virtual void getParameters (std::vector< Parameter > &parameters) const
virtual unsigned int getParameterSize () const
virtual void initialize (GenericTopology *topo, Vector3DBlock *positions, Vector3DBlock *velocities, ScalarStructure *energies)
virtual void run (int numTimesteps)
virtual ModifiercreateRattleModifier (Real eps, int maxIter)
virtual ModifiercreateShakeModifier (Real eps, int maxIter)
virtual STSIntegratordoMake (std::string &errMsg, const std::vector< Value > &values, ForceGroup *fg) const
Real getEtaVel () const
Real getNumAtoms () const

Static Public Attributes

const std::string keyword

Protected Member Functions

virtual void addModifierAfterInitialize ()
virtual void doDrift ()
virtual void doHalfKick ()

Private Member Functions

void do2ndHalfKick ()
void PreForceThermostat ()
void PostForceThermostat ()

Private Attributes

const Real myTargetTemp
const Real myOmegaTo
const Real kbT
unsigned int NumAtoms
unsigned int myNumFree
Real Qo
Real myEta
Real myEtaVel

Friends

class ModifierPreForceThermostat
class ModifierPostForceThermostat

Constructor & Destructor Documentation

ProtoMol::NVTVerletIntegrator::NVTVerletIntegrator  ) 
 

ProtoMol::NVTVerletIntegrator::NVTVerletIntegrator Real  timestep,
Real  temperature,
Real  omegaTo,
ForceGroup overloadedForces
 


Member Function Documentation

void ProtoMol::NVTVerletIntegrator::addModifierAfterInitialize  )  [protected, virtual]
 

Add modifiers which should not modify during initialize.

Reimplemented from ProtoMol::STSIntegrator.

Modifier * ProtoMol::NVTVerletIntegrator::createRattleModifier Real  eps,
int  maxIter
[virtual]
 

Create a Rattle modifier.

Reimplemented from ProtoMol::Integrator.

Modifier * ProtoMol::NVTVerletIntegrator::createShakeModifier Real  eps,
int  maxIter
[virtual]
 

Create a Shake modifier.

Reimplemented from ProtoMol::Integrator.

void ProtoMol::NVTVerletIntegrator::do2ndHalfKick  )  [private]
 

void ProtoMol::NVTVerletIntegrator::doDrift  )  [protected, virtual]
 

Reimplemented from ProtoMol::STSIntegrator.

void ProtoMol::NVTVerletIntegrator::doHalfKick  )  [protected, virtual]
 

Reimplemented from ProtoMol::StandardIntegrator.

virtual STSIntegrator* ProtoMol::NVTVerletIntegrator::doMake std::string &  errMsg,
const std::vector< Value > &  values,
ForceGroup fg
const [virtual]
 

Implements ProtoMol::STSIntegrator.

Real ProtoMol::NVTVerletIntegrator::getEtaVel  )  const [inline]
 

virtual std::string ProtoMol::NVTVerletIntegrator::getIdNoAlias  )  const [inline, virtual]
 

Implements ProtoMol::Makeable.

Real ProtoMol::NVTVerletIntegrator::getNumAtoms  )  const [inline]
 

void ProtoMol::NVTVerletIntegrator::getParameters std::vector< Parameter > &  parameters  )  const [virtual]
 

retrieve all parameters

Reimplemented from ProtoMol::STSIntegrator.

virtual unsigned int ProtoMol::NVTVerletIntegrator::getParameterSize  )  const [inline, virtual]
 

number of parameters

Implements ProtoMol::Makeable.

void ProtoMol::NVTVerletIntegrator::initialize GenericTopology topo,
Vector3DBlock positions,
Vector3DBlock velocities,
ScalarStructure energies
[virtual]
 

Set the integrator up. This method can be called at any time, and should perform any starting force evaluations the integrator needs in order to run correctly. The simulation data should be kept in the given structures.

Reimplemented from ProtoMol::STSIntegrator.

void ProtoMol::NVTVerletIntegrator::PostForceThermostat  )  [private]
 

void ProtoMol::NVTVerletIntegrator::PreForceThermostat  )  [private]
 

void ProtoMol::NVTVerletIntegrator::run int  numTimesteps  )  [virtual]
 

Run the integrator for the certain number of timesteps. It can be assumed that the topology and forces have not changed since the last time the integrator was initialized.

Reimplemented from ProtoMol::StandardIntegrator.


Friends And Related Function Documentation

friend class ModifierPostForceThermostat [friend]
 

friend class ModifierPreForceThermostat [friend]
 


Member Data Documentation

const Real ProtoMol::NVTVerletIntegrator::kbT [private]
 

const string ProtoMol::NVTVerletIntegrator::keyword [static]
 

Real ProtoMol::NVTVerletIntegrator::myEta [private]
 

Real ProtoMol::NVTVerletIntegrator::myEtaVel [private]
 

unsigned int ProtoMol::NVTVerletIntegrator::myNumFree [private]
 

const Real ProtoMol::NVTVerletIntegrator::myOmegaTo [private]
 

const Real ProtoMol::NVTVerletIntegrator::myTargetTemp [private]
 

unsigned int ProtoMol::NVTVerletIntegrator::NumAtoms [private]
 

Real ProtoMol::NVTVerletIntegrator::Qo [private]
 


The documentation for this class was generated from the following files: Last update: . GNU GENERAL PUBLIC LICENSE, copyrighted by the University of Notre Dame and the University of Bergen, Norway.