00001 00007 /* 00008 Forwards atoms to master node for force evaluation. 00009 */ 00010 00011 #if !defined(GLOBALMASTERFREEENERGY_H) 00012 #define GLOBALMASTERFREEENERGY_H 00013 00014 class Molecule; 00015 class SimParameters; 00016 00017 class GlobalMasterFreeEnergy : public GlobalMaster { 00018 public: 00019 GlobalMasterFreeEnergy(); 00020 ~GlobalMasterFreeEnergy(); 00021 private: 00022 virtual void calculate(); 00023 void user_calculate(); 00024 00025 void initialize(); 00026 void user_initialize(); 00027 void update(); 00028 Molecule *molecule; 00029 SimParameters *simParams; 00030 char *config; 00031 ARestraintManager m_RestraintManager; 00032 ALambdaManager m_LambdaManager; 00033 public: 00034 // These all return -1 on error. 00035 int getAtomID(const char *segid, int resid, const char *aname); 00036 int getNumAtoms(const char* segid, int resid); // 0 on error 00037 int getAtomID(const char *segid, int resid, int index); 00038 double getMass(int atomid); 00039 int requestAtom(int atomid); 00040 int getPosition(int atomid, Position &position); 00041 int addForce(int atomid, Force force); 00042 }; 00043 00044 #endif
1.3.9.1