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::OutputCache Class Reference

#include <OutputCache.h>

List of all members.

Public Member Functions

 OutputCache ()
 ~OutputCache ()
void initialize (const Configuration *config, const Integrator *integrator, const GenericTopology *topo, const Vector3DBlock *pos, const Vector3DBlock *vel, const ScalarStructure *energies)
void add (const std::vector< PDB::PDBAtom > &pdbAtoms)
void add (const PSF &psf)
void add (const PAR &par)
void add (const iSGPAR &par)
Real totalEnergy () const
Real potentialEnergy () const
Real kineticEnergy () const
Real temperature () const
Real temperatureForWater () const
Real temperatureForNonWater () const
Real volume () const
Real time () const
Real pressure () const
Real molecularPressure () const
Real molecularTemperature () const
Real molecularKineticEnergy () const
Vector3D linearMomentum () const
Vector3D angularMomentum () const
Vector3D centerOfMass () const
Real diffusion () const
Real density () const
Real mass () const
Real dihedralPhi (int index) const
Real brent (Real ax, Real bx, Real cx, Real tol, Real &xmin, int dihindex, bool max) const
std::vector< RealdihedralPhis (std::vector< int >) const
std::vector< std::vector<
Real > > 
brentMaxima (std::vector< int >, bool) const
const std::vector< PDB::PDBAtom > & pdb () const
const PSFpsf () const
const PARpar () const
const iSGPARiSGpar () const
void uncache () const

Private Attributes

const ConfigurationmyConfig
const GenericTopologymyTopology
const IntegratormyIntegrator
const ScalarStructuremyEnergies
const Vector3DBlockmyPositions
const Vector3DBlockmyVelocities
Vector3DBlockmyInitialPositions
std::vector< PDB::PDBAtommyPDBAtoms
PSF myPSF
PAR myPAR
iSGPAR myiSGPAR
bool myCachedKE
Real myKE
Real myT
bool myCachedPE
Real myPE
bool myCachedV
Real myV
bool myCachedP
Real myP
bool myCachedMolP
Real myMolP
bool myCachedLinearMomentum
Vector3D myLinearMomentum
bool myCachedAngularMomentum
Vector3D myAngularMomentum
bool myCachedCenterOfMass
Vector3D myCenterOfMass
bool myCachedDiffusion
Real myDiffusion
bool myCachedDensity
Real myDensity
bool myCachedMass
Real myMass
int myCachedDihedralPhi
Real myDihedralPhi
bool myCachedDihedralPhis
std::vector< Real > * myDihedralPhis
bool myCachedBrentMaxima
std::vector< std::vector<
Real > > * 
myBrentMaxima
bool myCachedMolT
Real myMolT
bool myCachedMolKE
Real myMolKE
bool myCachedWaterT
Real myWaterT
bool myCachedNonWaterT
Real myNonWaterT


Detailed Description

OutputCache caches all kind of values, which may be needed by Output objects and simplifies the access to values of interest. Add new cached values, if needed .. There are some (feature) values, which will only change when the Topology changes


Constructor & Destructor Documentation

ProtoMol::OutputCache::OutputCache  ) 
 

ProtoMol::OutputCache::~OutputCache  ) 
 


Member Function Documentation

void ProtoMol::OutputCache::add const iSGPAR par  )  [inline]
 

void ProtoMol::OutputCache::add const PAR par  )  [inline]
 

void ProtoMol::OutputCache::add const PSF psf  )  [inline]
 

void ProtoMol::OutputCache::add const std::vector< PDB::PDBAtom > &  pdbAtoms  )  [inline]
 

Vector3D ProtoMol::OutputCache::angularMomentum  )  const
 

Real ProtoMol::OutputCache::brent Real  ax,
Real  bx,
Real  cx,
Real  tol,
Real xmin,
int  dihindex,
bool  max
const
 

vector< vector< Real > > ProtoMol::OutputCache::brentMaxima std::vector< int >  ,
bool 
const
 

Vector3D ProtoMol::OutputCache::centerOfMass  )  const
 

Real ProtoMol::OutputCache::density  )  const
 

Real ProtoMol::OutputCache::diffusion  )  const
 

Real ProtoMol::OutputCache::dihedralPhi int  index  )  const
 

vector< Real > ProtoMol::OutputCache::dihedralPhis std::vector< int >   )  const
 

void ProtoMol::OutputCache::initialize const Configuration config,
const Integrator integrator,
const GenericTopology topo,
const Vector3DBlock pos,
const Vector3DBlock vel,
const ScalarStructure energies
 

const iSGPAR& ProtoMol::OutputCache::iSGpar  )  const [inline]
 

Real ProtoMol::OutputCache::kineticEnergy  )  const
 

Vector3D ProtoMol::OutputCache::linearMomentum  )  const
 

Real ProtoMol::OutputCache::mass  )  const
 

Real ProtoMol::OutputCache::molecularKineticEnergy  )  const
 

Real ProtoMol::OutputCache::molecularPressure  )  const
 

Real ProtoMol::OutputCache::molecularTemperature  )  const
 

const PAR& ProtoMol::OutputCache::par  )  const [inline]
 

const std::vector<PDB::PDBAtom>& ProtoMol::OutputCache::pdb  )  const [inline]
 

Real ProtoMol::OutputCache::potentialEnergy  )  const
 

Real ProtoMol::OutputCache::pressure  )  const
 

const PSF& ProtoMol::OutputCache::psf  )  const [inline]
 

Real ProtoMol::OutputCache::temperature  )  const
 

Real ProtoMol::OutputCache::temperatureForNonWater  )  const
 

Real ProtoMol::OutputCache::temperatureForWater  )  const
 

Real ProtoMol::OutputCache::time  )  const
 

Real ProtoMol::OutputCache::totalEnergy  )  const
 

void ProtoMol::OutputCache::uncache  )  const
 

To be called before every run() or finialize().

Real ProtoMol::OutputCache::volume  )  const
 


Member Data Documentation

Vector3D ProtoMol::OutputCache::myAngularMomentum [mutable, private]
 

std::vector< std::vector< Real > >* ProtoMol::OutputCache::myBrentMaxima [mutable, private]
 

bool ProtoMol::OutputCache::myCachedAngularMomentum [mutable, private]
 

bool ProtoMol::OutputCache::myCachedBrentMaxima [mutable, private]
 

bool ProtoMol::OutputCache::myCachedCenterOfMass [mutable, private]
 

bool ProtoMol::OutputCache::myCachedDensity [mutable, private]
 

bool ProtoMol::OutputCache::myCachedDiffusion [mutable, private]
 

int ProtoMol::OutputCache::myCachedDihedralPhi [mutable, private]
 

bool ProtoMol::OutputCache::myCachedDihedralPhis [mutable, private]
 

bool ProtoMol::OutputCache::myCachedKE [mutable, private]
 

bool ProtoMol::OutputCache::myCachedLinearMomentum [mutable, private]
 

bool ProtoMol::OutputCache::myCachedMass [mutable, private]
 

bool ProtoMol::OutputCache::myCachedMolKE [mutable, private]
 

bool ProtoMol::OutputCache::myCachedMolP [mutable, private]
 

bool ProtoMol::OutputCache::myCachedMolT [mutable, private]
 

bool ProtoMol::OutputCache::myCachedNonWaterT [mutable, private]
 

bool ProtoMol::OutputCache::myCachedP [mutable, private]
 

bool ProtoMol::OutputCache::myCachedPE [mutable, private]
 

bool ProtoMol::OutputCache::myCachedV [mutable, private]
 

bool ProtoMol::OutputCache::myCachedWaterT [mutable, private]
 

Vector3D ProtoMol::OutputCache::myCenterOfMass [mutable, private]
 

const Configuration* ProtoMol::OutputCache::myConfig [private]
 

Real ProtoMol::OutputCache::myDensity [mutable, private]
 

Real ProtoMol::OutputCache::myDiffusion [mutable, private]
 

Real ProtoMol::OutputCache::myDihedralPhi [mutable, private]
 

std::vector<Real>* ProtoMol::OutputCache::myDihedralPhis [mutable, private]
 

const ScalarStructure* ProtoMol::OutputCache::myEnergies [private]
 

Vector3DBlock* ProtoMol::OutputCache::myInitialPositions [private]
 

const Integrator* ProtoMol::OutputCache::myIntegrator [private]
 

iSGPAR ProtoMol::OutputCache::myiSGPAR [private]
 

Real ProtoMol::OutputCache::myKE [mutable, private]
 

Vector3D ProtoMol::OutputCache::myLinearMomentum [mutable, private]
 

Real ProtoMol::OutputCache::myMass [mutable, private]
 

Real ProtoMol::OutputCache::myMolKE [mutable, private]
 

Real ProtoMol::OutputCache::myMolP [mutable, private]
 

Real ProtoMol::OutputCache::myMolT [mutable, private]
 

Real ProtoMol::OutputCache::myNonWaterT [mutable, private]
 

Real ProtoMol::OutputCache::myP [mutable, private]
 

PAR ProtoMol::OutputCache::myPAR [private]
 

std::vector<PDB::PDBAtom> ProtoMol::OutputCache::myPDBAtoms [private]
 

Real ProtoMol::OutputCache::myPE [mutable, private]
 

const Vector3DBlock* ProtoMol::OutputCache::myPositions [private]
 

PSF ProtoMol::OutputCache::myPSF [private]
 

Real ProtoMol::OutputCache::myT [mutable, private]
 

const GenericTopology* ProtoMol::OutputCache::myTopology [private]
 

Real ProtoMol::OutputCache::myV [mutable, private]
 

const Vector3DBlock* ProtoMol::OutputCache::myVelocities [private]
 

Real ProtoMol::OutputCache::myWaterT [mutable, 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.