BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
canonicalMD.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: canonicalMD.h,v 1.27 2005/12/23 17:01:52 amoll Exp $
5 //
6 
7 #ifndef BALL_MOLMEC_MDSIMULATION_CANONICALMD_H
8 #define BALL_MOLMEC_MDSIMULATION_CANONICALMD_H
9 
10 #ifndef BALL_MOLMEC_MDSIMULATION_MOLECULARDYNAMICS_H
12 #endif
13 
14 namespace BALL
15 {
31  : public MolecularDynamics
32  {
33  public:
34 
36 
37 
40 
41 
42 
43  CanonicalMD() ;
44 
49  CanonicalMD(ForceField& myforcefield) ;
50 
57  CanonicalMD(ForceField& force_field, SnapShotManager* ssm) ;
58 
66  CanonicalMD(ForceField& myforcefield, SnapShotManager* ssm,
67  const Options& options) ;
68 
70  CanonicalMD(const CanonicalMD& rhs) ;
71 
73  virtual ~CanonicalMD() ;
75 
78 
80  CanonicalMD &operator = (const CanonicalMD& rhs) ;
82 
86 
91  virtual bool setup(ForceField& force_field, SnapShotManager* ssm = 0)
92  ;
93 
97  virtual bool setup(ForceField& force_field, SnapShotManager* ssm,
98  const Options& options)
99  ;
100 
104  virtual bool specificSetup() ;
106 
110 
117  void setBathRelaxationTime(double time) ;
118 
122  double getBathRelaxationTime() const ;
123 
126  virtual void setTimeStep(double time) ;
127 
135  virtual bool simulateIterations(Size number, bool restart = false) ;
136 
138 
139  protected:
140 
142  struct AuxFactors
143  {
144  double factor1;
145  double factor2;
146  };
147 
150 
153  void calculateFactors_() ;
155 
158 
161 
163  std::vector<AuxFactors> mass_factor_;
164  //_@}
165 
166  }; //class CanonicalMD
167 
168 } // namespace BALL
169 
170 #endif // BALL_MOLMEC_MDSIMULATION_CANONICALMD_H