--- trunk/src/io/ZConsWriter.cpp 2012/09/10 18:38:44 1796 +++ trunk/src/io/ZConsWriter.cpp 2014/04/14 18:32:51 1981 @@ -35,21 +35,21 @@ * * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). - * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). + * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008). * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). * [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). */ +#ifdef IS_MPI +#include +#endif + #include #include #include - #include "io/ZConsWriter.hpp" #include "utils/simError.h" -#ifdef IS_MPI -#include -#endif namespace OpenMD { ZConsWriter::ZConsWriter(SimInfo* info, const std::string& filename) : info_(info) { @@ -99,23 +99,27 @@ namespace OpenMD { output_ << i->mol->getGlobalIndex() <<"\t" << i->fz << "\t" << i->zpos << "\t" << i->param.zTargetPos < tmpNFixedZmols(nproc, 0); std::vector nFixedZmolsInProc(nproc, 0); tmpNFixedZmols[myNode] = fixedZmols.size(); //do MPI_ALLREDUCE to exchange the total number of atoms, //rigidbodies and cutoff groups - MPI::COMM_WORLD.Allreduce(&tmpNFixedZmols[0], &nFixedZmolsInProc[0], - nproc, MPI::INT, MPI::SUM); + MPI_Allreduce(&tmpNFixedZmols[0], &nFixedZmolsInProc[0], + nproc, MPI_INT, MPI_SUM, MPI_COMM_WORLD); - MPI::Status ierr; + MPI_Status* ierr; int zmolIndex; RealType data[3]; - if (masterNode == 0) { + if (myNode == masterNode) { std::vector zconsData; ZconsData tmpData; @@ -132,8 +136,8 @@ namespace OpenMD { } else { for(int k =0 ; k < nFixedZmolsInProc[i]; ++k) { - MPI::COMM_WORLD.Recv(&zmolIndex, 1, MPI::INT, i, 0, ierr); - MPI::COMM_WORLD.Recv(data, 3, MPI::REALTYPE, i, 0, ierr); + MPI_Recv(&zmolIndex, 1, MPI_INT, i, 0, MPI_COMM_WORLD, ierr); + MPI_Recv(data, 3, MPI_REALTYPE, i, 0, MPI_COMM_WORLD, ierr); tmpData.zmolIndex = zmolIndex; tmpData.zforce= data[0]; tmpData.zpos = data[1]; @@ -161,8 +165,8 @@ namespace OpenMD { data[0] = j->fz; data[1] = j->zpos; data[2] = j->param.zTargetPos; - MPI::COMM_WORLD.Send(&zmolIndex, 1, MPI::INT, masterNode, 0); - MPI::COMM_WORLD.Send(data, 3, MPI::REALTYPE, masterNode, 0); + MPI_Send(&zmolIndex, 1, MPI_INT, masterNode, 0, MPI_COMM_WORLD); + MPI_Send(data, 3, MPI_REALTYPE, masterNode, 0, MPI_COMM_WORLD); } }