ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/mdtools/md_code/InitializeFromFile.cpp
(Generate patch)

Comparing trunk/mdtools/md_code/InitializeFromFile.cpp (file contents):
Revision 254 by chuckv, Thu Jan 30 20:03:37 2003 UTC vs.
Revision 260 by chuckv, Fri Jan 31 21:04:27 2003 UTC

# Line 13 | Line 13
13  
14   #ifdef IS_MPI
15   #include "mpiSimulation.hpp"
16 +
17 + #define TAKE_THIS_TAG 0
18   #endif // is_mpi
19  
20   InitializeFromFile :: InitializeFromFile( char *in_name ){
# Line 213 | Line 215 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
215           procIndex++){
216      if (worldRank == 0) {
217  
218 <      mpiErr = MPI_Recv(&nodeAtomsStart,1,MPI_INT,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD,
218 >      mpiErr = MPI_Recv(&nodeAtomsStart,1,MPI_INT,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD,
219                 istatus);
220  
221 <      mpiErr = MPI_Recv(&nodeAtomsEnd,1,MPI_INT,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD,
221 >      mpiErr = MPI_Recv(&nodeAtomsEnd,1,MPI_INT,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD,
222                 istatus);
223        // Make sure where node 0 is reading from, matches where the receiving node
224        // expects it to be.
225  
226        if (masterIndex != nodeAtomsStart){
227          sendError = 1;
228 <        mpiErr = MPI_Send(&sendError,1,MPI_INT,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD);
228 >        mpiErr = MPI_Send(&sendError,1,MPI_INT,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD);
229          sprintf(painCave.errMsg,
230                  "Initialize from file error: atoms start index (%d) for "
231                  "node %d not equal to master index (%d)",nodeAtomsStart,procIndex,masterIndex );
# Line 231 | Line 233 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
233          simError();
234        }
235        sendError = 0;
236 <      mpiErr = MPI_Send(&sendError,1,MPI_INT,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD);
236 >      mpiErr = MPI_Send(&sendError,1,MPI_INT,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD);
237        
238        for ( i = nodeAtomsStart; i <= nodeAtomsEnd; i++){
239          eof_test = fgets(read_buffer, sizeof(read_buffer), c_in_file);
240          if(eof_test == NULL){
241            
242            sprintf(read_buffer,"ERROR");
243 <          mpiErr = MPI_Send(read_buffer,BUFFERSIZE,MPI_CHAR,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD);
243 >          mpiErr = MPI_Send(read_buffer,BUFFERSIZE,MPI_CHAR,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD);
244            
245            sprintf(painCave.errMsg,
246                    "error in reading file %s\n"
# Line 249 | Line 251 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
251            simError();
252          }
253          
254 <        mpiErr = MPI_Send(read_buffer,BUFFERSIZE,MPI_CHAR,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD);
255 <        mpiErr = MPI_Recv(&sendError,1,MPI_INT,procIndex,MPI_ANY_TAG,MPI_COMM_WORLD,
254 >        mpiErr = MPI_Send(read_buffer,BUFFERSIZE,MPI_CHAR,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD);
255 >        mpiErr = MPI_Recv(&sendError,1,MPI_INT,procIndex,TAKE_THIS_TAG,MPI_COMM_WORLD,
256                            istatus);
257          if (sendError) MPIcheckPoint();
258  
# Line 262 | Line 264 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
264      else if(worldRank == procIndex){
265        nodeAtomsStart = mpiSim->getMyAtomStart();
266        nodeAtomsEnd = mpiSim->getMyAtomEnd();
267 <      mpiErr = MPI_Send(&nodeAtomsStart,1,MPI_INT,0,MPI_ANY_TAG,MPI_COMM_WORLD);
268 <      mpiErr = MPI_Send(&nodeAtomsEnd,1,MPI_INT,0,MPI_ANY_TAG,MPI_COMM_WORLD);
267 >      mpiErr = MPI_Send(&nodeAtomsStart,1,MPI_INT,0,TAKE_THIS_TAG,MPI_COMM_WORLD);
268 >      mpiErr = MPI_Send(&nodeAtomsEnd,1,MPI_INT,0,TAKE_THIS_TAG,MPI_COMM_WORLD);
269        
270 <      mpiErr = MPI_Recv(&sendError,1,MPI_INT,0,MPI_ANY_TAG,MPI_COMM_WORLD,
270 >      mpiErr = MPI_Recv(&sendError,1,MPI_INT,0,TAKE_THIS_TAG,MPI_COMM_WORLD,
271                 istatus);
272        if (sendError) MPIcheckPoint();
273  
274        for ( i = 0; i < entry_plug->n_atoms; i++){
275  
276 <        mpiErr = MPI_Recv(&read_buffer,BUFFERSIZE,MPI_CHAR,0,MPI_ANY_TAG,MPI_COMM_WORLD,
276 >        mpiErr = MPI_Recv(&read_buffer,BUFFERSIZE,MPI_CHAR,0,TAKE_THIS_TAG,MPI_COMM_WORLD,
277                            istatus);
278          
279          if(!strcmp(read_buffer, "ERROR")) MPIcheckPoint();
# Line 279 | Line 281 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
281          parseErr = parseDumpLine( read_buffer, i );
282          if( parseErr != NULL ){
283            sendError = 1;
284 <          mpiErr = MPI_Send(&sendError,1,MPI_INT,0,MPI_ANY_TAG,MPI_COMM_WORLD);
284 >          mpiErr = MPI_Send(&sendError,1,MPI_INT,0,TAKE_THIS_TAG,MPI_COMM_WORLD);
285  
286  
287            strcpy( painCave.errMsg, parseErr );
# Line 287 | Line 289 | void InitializeFromFile :: read_xyz( SimInfo* the_entr
289            simError();
290          }
291          sendError = 0;
292 <        mpiErr = MPI_Send(&sendError,1,MPI_INT,0,MPI_ANY_TAG,MPI_COMM_WORLD);
292 >        mpiErr = MPI_Send(&sendError,1,MPI_INT,0,TAKE_THIS_TAG,MPI_COMM_WORLD);
293        }
294      }
295      sprintf(checkPointMsg,"Node %d received initial configuration.",procIndex);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines