24 #include "ComputeMgr.decl.h" 29 #define MIN_DEBUG_LEVEL 1 37 int len = strlen(the_config_name);
38 configName =
new char[len+1];
39 strcpy(configName,the_config_name);
52 getAtomID(
const char *segid,
int resid,
const char *aname)
71 if ( atomid < 0 || atomid >= molecule->
numAtoms )
return -1.;
78 if ( atomid < 0 || atomid >= molecule->
numAtoms )
return -1;
88 for ( ; a_i != a_e; ++a_i, ++p_i ) {
89 if ( *a_i == atomid ) {
99 if ( atomid < 0 || atomid >= molecule->
numAtoms )
return -1;
109 void GlobalMasterEasy::initialize() {
111 DebugM(4,
"Initializing master\n");
119 for ( ; script; script = script->
next) {
120 if ( strstr(script->
data,
"\n") ) {
121 size_t add_len = strlen(script->
data);
122 size_t config_len = 0;
123 config_len = strlen(
config);
124 char *new_config =
new char[config_len + add_len + 2];
125 strcpy(new_config,
config);
126 strcat(new_config,script->
data);
127 strcat(new_config,
"\n");
131 FILE *infile = fopen(script->
data,
"r");
134 sprintf(errmsg,
"Error trying to read file %s!\n",script->
data);
137 fseek(infile,0,SEEK_END);
138 size_t add_len = ftell(infile);
139 size_t config_len = 0;
140 config_len = strlen(
config);
141 char *new_config =
new char[config_len + add_len + 3];
142 strcpy(new_config,
config);
145 new_config += config_len;
147 fread(new_config,
sizeof(
char),add_len,infile);
148 new_config += add_len;
149 new_config[0] =
'\n';
150 new_config[1] =
'\0';
157 void GlobalMasterEasy::calculate() {
177 CkPrintf(
"Default GlobalMasterEasy::easy_init() called.\n");
181 CkPrintf(
"Default GlobalMasterEasy::easy_calc() called.\n");
virtual ~GlobalMasterEasy()
ForceList & modifyAppliedForces()
AtomIDList & modifyRequestedAtoms()
int getPosition(int atomid, Position &position)
double getMass(int atomid)
int get_residue_size(const char *segid, int resid) const
AtomIDList::const_iterator getAtomIdBegin()
int getAtomID(const char *segid, int resid, const char *aname)
int addForce(int atomid, Force force)
SubmitReduction * willSubmit(int setID, int size=-1)
static ReductionMgr * Object(void)
int add(const Elem &elem)
PositionList::const_iterator getAtomPositionBegin()
BigRealList::const_iterator getGroupMassEnd()
void setall(const Elem &elem)
GlobalMasterEasy(const char *the_config_name)
int getNumAtoms(const char *segid, int resid)
int get_atom_from_name(const char *segid, int resid, const char *aname) const
const AtomID * const_iterator
int requestAtom(int atomid)
AtomIDList & modifyForcedAtoms()
void NAMD_die(const char *err_msg)
BigRealList::const_iterator getGroupMassBegin()
ForceList & modifyGroupForces()
Real atommass(int anum) const
virtual void easy_init(const char *)
AtomIDList::const_iterator getAtomIdEnd()
int get_atom_from_index_in_residue(const char *segid, int resid, int index) const
virtual void easy_calc(void)
StringList * find(const char *name) const