GlobalMasterSMD.h

Go to the documentation of this file.
00001 
00007 #ifndef GLOBALMASTERSMD_H
00008 #define GLOBALMASTERSMD_H
00009 
00010 class GlobalMasterSMD : public GlobalMaster {
00011 public:
00012   /* initializes this to be a SMD master maintaing the group specified
00013      in <filename> bound by a spring with k=<spring_constant> to a
00014      point moving from its initial CM in the direction <direction>
00015      with speed <velocity>.  Must also be passed the desired rate of
00016      output <output_frequency> and the inital timestep # of the
00017      simulation <first_timestep> */
00018   GlobalMasterSMD(BigReal spring_constant,
00019                   BigReal transverse_spring_constant,
00020                   BigReal velocity,
00021                   const Vector direction, int output_frequency,
00022                   int first_timestep, const char *filename, int);
00023   ~GlobalMasterSMD();
00024 
00025 private:
00026   virtual void calculate();
00027 
00028   /* prints out a message for timestep <t> reporting that the forced
00029      atoms are at CM position <p> and are feeling force <f> */
00030   void output(int t, Position p, Force f);
00031 
00032   /* read the atoms from the file into group 0 (only call this once!) */
00033   void parseAtoms(const char *file, int);
00034  
00035   BigReal k;
00036   BigReal k2;
00037   BigReal moveVel;   // A/timestep
00038   Vector moveDir;
00039   int outputFreq;
00040   Position cm;       // Initial center of mass
00041   int currentTime;   // Keep track of elapsed time steps for yourself!
00042 };
00043 #endif
00044 

Generated on Mon Nov 20 01:17:12 2017 for NAMD by  doxygen 1.4.7