| 103 |  | virtual pair<int, int> getGroupTypes(int cg1, int cg2) = 0; | 
| 104 |  |  | 
| 105 |  | // Group->atom bookkeeping | 
| 106 | < | virtual vector<int> getAtomsInGroupRow(int cg1) = 0; | 
| 106 | > | virtual vector<int> getAtomsInGroupRow(int cg1) = 0; | 
| 107 |  | virtual vector<int> getAtomsInGroupColumn(int cg2) = 0; | 
| 108 | + |  | 
| 109 |  | virtual Vector3d getAtomToGroupVectorRow(int atom1, int cg1) = 0; | 
| 110 |  | virtual Vector3d getAtomToGroupVectorColumn(int atom2, int cg2) = 0; | 
| 111 | < | virtual RealType getMfactRow(int atom1) = 0; | 
| 112 | < | virtual RealType getMfactColumn(int atom2) = 0; | 
| 111 | > | virtual RealType getMassFactorRow(int atom1) = 0; | 
| 112 | > | virtual RealType getMassFactorColumn(int atom2) = 0; | 
| 113 |  |  | 
| 114 |  | // spatial data | 
| 115 |  | virtual Vector3d getIntergroupVector(int cg1, int cg2) = 0; | 
| 154 |  | //& column.  It will be up to | 
| 155 |  | //the specific decomposition | 
| 156 |  | //method to fill this. | 
| 157 | + |  | 
| 158 | + | vector<vector<int> > groupList_; | 
| 159 |  | vector<Vector3i> cellOffsets_; | 
| 160 |  | Vector3i nCells_; | 
| 161 |  | vector<vector<int> > cellList_; |