ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/io/ZConsWriter.cpp
(Generate patch)

Comparing branches/development/src/io/ZConsWriter.cpp (file contents):
Revision 1797 by gezelter, Tue Nov 22 20:38:56 2011 UTC vs.
Revision 1798 by gezelter, Thu Sep 13 14:10:11 2012 UTC

# Line 99 | Line 99 | namespace OpenMD {
99        output_ << i->mol->getGlobalIndex() <<"\t" << i->fz << "\t" << i->zpos << "\t" << i->param.zTargetPos <<std::endl;
100      }
101   #else
102 <    int nproc;
103 <    MPI_Comm_size(MPI_COMM_WORLD, &nproc);
102 >    int nproc = MPI::COMM_WORLD.Get_size();
103      const int masterNode = 0;
104      int myNode = worldRank;
105      std::vector<int> tmpNFixedZmols(nproc, 0);
106      std::vector<int> nFixedZmolsInProc(nproc, 0);
107      tmpNFixedZmols[myNode] = fixedZmols.size();
108      
109 <    //do MPI_ALLREDUCE to exchange the total number of atoms, rigidbodies and cutoff groups
110 <    MPI_Allreduce(&tmpNFixedZmols[0], &nFixedZmolsInProc[0], nproc, MPI_INT,
111 <                  MPI_SUM, MPI_COMM_WORLD);
109 >    //do MPI_ALLREDUCE to exchange the total number of atoms,
110 >    //rigidbodies and cutoff groups
111 >    MPI::COMM_WORLD.Allreduce(&tmpNFixedZmols[0], &nFixedZmolsInProc[0],
112 >                              nproc, MPI::INT, MPI::SUM);
113  
114 <    MPI_Status ierr;
114 >    MPI::Status ierr;
115      int zmolIndex;
116      RealType data[3];
117      
# Line 132 | Line 132 | namespace OpenMD {
132  
133          } else {
134            for(int k =0 ; k < nFixedZmolsInProc[i]; ++k) {
135 <            MPI_Recv(&zmolIndex, 1, MPI_INT, i, 0, MPI_COMM_WORLD,&ierr);
136 <            MPI_Recv(data, 3, MPI_REALTYPE, i, 0, MPI_COMM_WORLD,&ierr);
135 >            MPI::COMM_WORLD.Recv(&zmolIndex, 1, MPI::INT, i, 0, ierr);
136 >            MPI::COMM_WORLD.Recv(data, 3, MPI::REALTYPE, i, 0, ierr);
137              tmpData.zmolIndex = zmolIndex;
138              tmpData.zforce= data[0];
139              tmpData.zpos = data[1];
# Line 161 | Line 161 | namespace OpenMD {
161          data[0] = j->fz;
162          data[1] = j->zpos;
163          data[2] = j->param.zTargetPos;
164 <        MPI_Send(&zmolIndex, 1, MPI_INT, masterNode, 0, MPI_COMM_WORLD);
165 <        MPI_Send(data, 3, MPI_REALTYPE, masterNode, 0, MPI_COMM_WORLD);
164 >        MPI::COMM_WORLD.Send(&zmolIndex, 1, MPI::INT, masterNode, 0);
165 >        MPI::COMM_WORLD.Send(data, 3, MPI::REALTYPE, masterNode, 0);
166              
167        }
168      }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines