ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/src/parallel/ForceMatrixDecomposition.cpp
(Generate patch)

Comparing trunk/src/parallel/ForceMatrixDecomposition.cpp (file contents):
Revision 1928 by gezelter, Tue Jul 2 20:02:31 2013 UTC vs.
Revision 1929 by gezelter, Mon Aug 19 13:12:00 2013 UTC

# Line 99 | Line 99 | namespace OpenMD {
99      nGroups_ = info_->getNLocalCutoffGroups();
100      // gather the information for atomtype IDs (atids):
101      idents = info_->getIdentArray();
102 +    regions = info_->getRegions();
103      AtomLocalToGlobal = info_->getGlobalAtomIndices();
104      cgLocalToGlobal = info_->getGlobalGroupIndices();
105      vector<int> globalGroupMembership = info_->getGlobalGroupMembership();
# Line 163 | Line 164 | namespace OpenMD {
164      
165      AtomPlanIntRow->gather(idents, identsRow);
166      AtomPlanIntColumn->gather(idents, identsCol);
167 +
168 +    regionsRow.resize(nAtomsInRow_);
169 +    regionsCol.resize(nAtomsInCol_);
170 +    
171 +    AtomPlanIntRow->gather(regions, regionsRow);
172 +    AtomPlanIntColumn->gather(regions, regionsCol);
173      
174      // allocate memory for the parallel objects
175      atypesRow.resize(nAtomsInRow_);
# Line 1171 | Line 1178 | namespace OpenMD {
1178      idat.atypes = make_pair( atypesRow[atom1], atypesCol[atom2]);
1179      idat.atid1 = identsRow[atom1];
1180      idat.atid2 = identsCol[atom2];
1181 +
1182 +    if (regionsRow[atom1] >= 0 && regionsCol[atom2] >= 0)
1183 +      idat.sameRegion = (regionsRow[atom1] == regionsCol[atom2]);
1184 +      
1185      //idat.atypes = make_pair( ff_->getAtomType(identsRow[atom1]),
1186      //                         ff_->getAtomType(identsCol[atom2]) );
1187      
# Line 1230 | Line 1241 | namespace OpenMD {
1241      idat.atid1 = idents[atom1];
1242      idat.atid2 = idents[atom2];
1243  
1244 +    if (regions[atom1] >= 0 && regions[atom2] >= 0)
1245 +      idat.sameRegion = (regions[atom1] == regions[atom2]);
1246 +
1247      if (storageLayout_ & DataStorage::dslAmat) {
1248        idat.A1 = &(snap_->atomData.aMat[atom1]);
1249        idat.A2 = &(snap_->atomData.aMat[atom2]);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines