NAMD
GlobalMasterSMD.h
Go to the documentation of this file.
1 
7 #ifndef GLOBALMASTERSMD_H
8 #define GLOBALMASTERSMD_H
9 
10 #include "ReductionMgr.h"
11 
12 class SubmitReduction;
13 
14 class GlobalMasterSMD : public GlobalMaster {
15 public:
16  /* initializes this to be a SMD master maintaing the group specified
17  in <filename> bound by a spring with k=<spring_constant> to a
18  point moving from its initial CM in the direction <direction>
19  with speed <velocity>. Must also be passed the desired rate of
20  output <output_frequency> and the inital timestep # of the
21  simulation <first_timestep> */
22  GlobalMasterSMD(BigReal spring_constant,
23  BigReal transverse_spring_constant,
24  BigReal velocity,
25  const Vector direction, int output_frequency,
26  int first_timestep, const char *filename, int);
28 
29 private:
30  virtual void calculate();
31 
32  /* prints out a message for timestep <t> reporting that the forced
33  atoms are at CM position <p> and are feeling force <f> */
34  void output(int t, Position p, Force f);
35 
36  /* read the atoms from the file into group 0 (only call this once!) */
37  void parseAtoms(const char *file, int);
38 
39  BigReal k;
40  BigReal k2;
41  BigReal moveVel; // A/timestep
42  Vector moveDir;
43  int outputFreq;
44  Position cm; // Initial center of mass
45  int currentTime; // Keep track of elapsed time steps for yourself!
46  SubmitReduction *reduction; // For storing energy value as MISC
47 };
48 #endif
49 
Definition: Vector.h:72
GlobalMasterSMD(BigReal spring_constant, BigReal transverse_spring_constant, BigReal velocity, const Vector direction, int output_frequency, int first_timestep, const char *filename, int)
double BigReal
Definition: common.h:123