| 145 |
|
treeParser.initializeASTFactory(factory); |
| 146 |
|
treeParser.setASTFactory(&factory); |
| 147 |
|
simParams = treeParser.walkTree(parser.getAST()); |
| 148 |
– |
|
| 148 |
|
} |
| 149 |
|
|
| 150 |
|
|
| 263 |
|
++lineNo; |
| 264 |
|
std::string line = trimLeftCopy(buffer); |
| 265 |
|
i = CaseInsensitiveFind(line, "<OOPSE"); |
| 266 |
< |
if (i == string::npos) { |
| 266 |
> |
if (static_cast<size_t>(i) == string::npos) { |
| 267 |
|
sprintf(painCave.errMsg, |
| 268 |
|
"SimCreator: File: %s is not an OOPSE file!\n", |
| 269 |
|
mdFileName.c_str()); |
| 329 |
|
Globals* simParams = parseFile(rawMetaDataStream, mdFileName, metaDataBlockStart+1); |
| 330 |
|
|
| 331 |
|
//create the force field |
| 332 |
< |
ForceField * ff = ForceFieldFactory::getInstance() |
| 333 |
< |
->createForceField(simParams->getForceField()); |
| 335 |
< |
|
| 332 |
> |
ForceField * ff = ForceFieldFactory::getInstance()->createForceField(simParams->getForceField()); |
| 333 |
> |
|
| 334 |
|
if (ff == NULL) { |
| 335 |
|
sprintf(painCave.errMsg, |
| 336 |
|
"ForceField Factory can not create %s force field\n", |
| 393 |
|
//responsibility to LocalIndexManager. |
| 394 |
|
setGlobalIndex(info); |
| 395 |
|
|
| 396 |
< |
//Although addExcludePairs is called inside SimInfo's addMolecule |
| 396 |
> |
//Although addInteractionPairs is called inside SimInfo's addMolecule |
| 397 |
|
//method, at that point atoms don't have the global index yet |
| 398 |
|
//(their global index are all initialized to -1). Therefore we |
| 399 |
< |
//have to call addExcludePairs explicitly here. A way to work |
| 399 |
> |
//have to call addInteractionPairs explicitly here. A way to work |
| 400 |
|
//around is that we can determine the beginning global indices of |
| 401 |
|
//atoms before they get created. |
| 402 |
|
SimInfo::MoleculeIterator mi; |
| 403 |
|
Molecule* mol; |
| 404 |
|
for (mol= info->beginMolecule(mi); mol != NULL; mol = info->nextMolecule(mi)) { |
| 405 |
< |
info->addExcludePairs(mol); |
| 405 |
> |
info->addInteractionPairs(mol); |
| 406 |
|
} |
| 407 |
|
|
| 408 |
|
if (loadInitCoords) |
| 589 |
|
info->setMolToProcMap(molToProcMap); |
| 590 |
|
sprintf(checkPointMsg, |
| 591 |
|
"Successfully divided the molecules among the processors.\n"); |
| 592 |
< |
MPIcheckPoint(); |
| 592 |
> |
errorCheckPoint(); |
| 593 |
|
} |
| 594 |
|
|
| 595 |
|
#endif |
| 775 |
|
startingIndex += numIntegrableObjectsPerMol[i]; |
| 776 |
|
} |
| 777 |
|
|
| 780 |
– |
std::cerr << "nGIO = " << info->getNGlobalIntegrableObjects() << "\n"; |
| 778 |
|
std::vector<StuntDouble*> IOIndexToIntegrableObject(info->getNGlobalIntegrableObjects(), (StuntDouble*)NULL); |
| 779 |
|
for (mol = info->beginMolecule(mi); mol != NULL; mol = info->nextMolecule(mi)) { |
| 780 |
|
int myGlobalIndex = mol->getGlobalIndex(); |
| 781 |
|
int globalIO = startingIOIndexForMol[myGlobalIndex]; |
| 785 |
– |
std::cerr << "myGlobalIndex = " << myGlobalIndex << " globalIO = " << globalIO << "\n"; |
| 782 |
|
for (StuntDouble* integrableObject = mol->beginIntegrableObject(ioi); integrableObject != NULL; |
| 783 |
|
integrableObject = mol->nextIntegrableObject(ioi)) { |
| 784 |
|
integrableObject->setGlobalIntegrableObjectIndex(globalIO); |