| 708 |
|
} |
| 709 |
|
|
| 710 |
|
//fill globalGroupMembership |
| 711 |
< |
std::vector<int> globalGroupMembership(info->getNGlobalAtoms(), 0); |
| 711 |
> |
std::vector<int> globalGroupMembership(info->getNGlobalAtoms(), -1); |
| 712 |
|
for(mol = info->beginMolecule(mi); mol != NULL; mol = info->nextMolecule(mi)) { |
| 713 |
|
for (cg = mol->beginCutoffGroup(ci); cg != NULL; cg = mol->nextCutoffGroup(ci)) { |
| 714 |
|
|
| 727 |
|
// docs said we could. |
| 728 |
|
std::vector<int> tmpGroupMembership(info->getNGlobalAtoms(), 0); |
| 729 |
|
MPI_Allreduce(&globalGroupMembership[0], &tmpGroupMembership[0], nGlobalAtoms, |
| 730 |
< |
MPI_INT, MPI_SUM, MPI_COMM_WORLD); |
| 730 |
> |
MPI_INT, MPI_MAX, MPI_COMM_WORLD); |
| 731 |
|
info->setGlobalGroupMembership(tmpGroupMembership); |
| 732 |
+ |
|
| 733 |
+ |
cerr << "ggm:\n"; |
| 734 |
+ |
for (int i = 0; i < tmpGroupMembership.size(); i++) |
| 735 |
+ |
cerr << "i = " << i << "\t ggm(i) = " << tmpGroupMembership[i] << "\n"; |
| 736 |
+ |
|
| 737 |
|
#else |
| 738 |
|
info->setGlobalGroupMembership(globalGroupMembership); |
| 739 |
|
#endif |