# | Line 35 | Line 35 | |
---|---|---|
35 | * | |
36 | * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). | |
37 | * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). | |
38 | < | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). |
38 | > | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008). |
39 | * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). | |
40 | * [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). | |
41 | */ | |
# | Line 75 | Line 75 | namespace OpenMD { | |
75 | if (worldRank == 0) { | |
76 | #endif | |
77 | ||
78 | < | inFile_ = new std::ifstream(filename_.c_str()); |
78 | > | inFile_ = new std::ifstream(filename_.c_str(), |
79 | > | ifstream::in | ifstream::binary); |
80 | ||
81 | if (inFile_->fail()) { | |
82 | sprintf(painCave.errMsg, | |
# | Line 127 | Line 128 | namespace OpenMD { | |
128 | } | |
129 | ||
130 | void DumpReader::scanFile(void) { | |
131 | < | int lineNo = 0; |
131 | > | |
132 | std::streampos prevPos; | |
133 | std::streampos currPos; | |
134 | ||
# | Line 140 | Line 141 | namespace OpenMD { | |
141 | prevPos = currPos; | |
142 | bool foundOpenSnapshotTag = false; | |
143 | bool foundClosedSnapshotTag = false; | |
144 | < | bool foundOpenSiteDataTag = false; |
144 | > | |
145 | > | int lineNo = 0; |
146 | while(inFile_->getline(buffer, bufferSize)) { | |
147 | ++lineNo; | |
148 | ||
# | Line 201 | Line 203 | namespace OpenMD { | |
203 | #ifdef IS_MPI | |
204 | } | |
205 | ||
206 | < | MPI_Bcast(&nframes_, 1, MPI_INT, 0, MPI_COMM_WORLD); |
206 | > | MPI::COMM_WORLD.Bcast(&nframes_, 1, MPI::INT, 0); |
207 | ||
208 | #endif // is_mpi | |
209 | ||
# | Line 287 | Line 289 | namespace OpenMD { | |
289 | } | |
290 | ||
291 | int sendBufferSize = sendBuffer.size(); | |
292 | < | MPI_Bcast(&sendBufferSize, 1, MPI_INT, masterNode, MPI_COMM_WORLD); |
293 | < | MPI_Bcast((void *)sendBuffer.c_str(), sendBufferSize, MPI_CHAR, masterNode, MPI_COMM_WORLD); |
292 | > | MPI::COMM_WORLD.Bcast(&sendBufferSize, 1, MPI::INT, masterNode); |
293 | > | MPI::COMM_WORLD.Bcast((void *)sendBuffer.c_str(), sendBufferSize, |
294 | > | MPI::CHAR, masterNode); |
295 | ||
296 | sstream.str(sendBuffer); | |
297 | } else { | |
298 | int sendBufferSize; | |
299 | < | MPI_Bcast(&sendBufferSize, 1, MPI_INT, masterNode, MPI_COMM_WORLD); |
299 | > | MPI::COMM_WORLD.Bcast(&sendBufferSize, 1, MPI::INT, masterNode); |
300 | char * recvBuffer = new char[sendBufferSize+1]; | |
301 | assert(recvBuffer); | |
302 | recvBuffer[sendBufferSize] = '\0'; | |
303 | < | MPI_Bcast(recvBuffer, sendBufferSize, MPI_CHAR, masterNode, MPI_COMM_WORLD); |
303 | > | MPI::COMM_WORLD.Bcast(recvBuffer, sendBufferSize, MPI::CHAR, masterNode); |
304 | sstream.str(recvBuffer); | |
305 | delete [] recvBuffer; | |
306 | } | |
# | Line 525 | Line 528 | namespace OpenMD { | |
528 | ||
529 | StringTokenizer tokenizer(line); | |
530 | int nTokens; | |
531 | < | |
531 | > | |
532 | nTokens = tokenizer.countTokens(); | |
533 | ||
534 | if (nTokens < 2) { | |
# | Line 645 | Line 648 | namespace OpenMD { | |
648 | ||
649 | void DumpReader::readSiteData(std::istream& inputStream) { | |
650 | ||
648 | – | inputStream.getline(buffer, bufferSize); |
651 | std::string line(buffer); | |
652 | + | |
653 | + | // We already found the starting <SiteData> tag or we wouldn't be |
654 | + | // here, so just start parsing until we get to the ending |
655 | + | // </SiteData> tag: |
656 | ||
651 | – | if (line.find("<SiteData>") == std::string::npos) { |
652 | – | // site data isn't required for a simulation, so skip |
653 | – | return; |
654 | – | } |
655 | – | |
657 | while(inputStream.getline(buffer, bufferSize)) { | |
658 | line = buffer; | |
659 |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |