| 66 |  | cgLocalToGlobal = info_->getGlobalGroupIndices(); | 
| 67 |  | vector<int> globalGroupMembership = info_->getGlobalGroupMembership(); | 
| 68 |  | massFactors = info_->getMassFactors(); | 
| 69 | + |  | 
| 70 |  | PairList excludes = info_->getExcludedInteractions(); | 
| 71 |  | PairList oneTwo = info_->getOneTwoInteractions(); | 
| 72 |  | PairList oneThree = info_->getOneThreeInteractions(); | 
| 691 |  | #ifdef IS_MPI | 
| 692 |  | return massFactorsRow[atom1]; | 
| 693 |  | #else | 
| 694 | + | cerr << "mfs = " << massFactors.size() << " atom1 = " << atom1 << "\n"; | 
| 695 |  | return massFactors[atom1]; | 
| 696 |  | #endif | 
| 697 |  | } | 
| 883 |  |  | 
| 884 |  | void ForceMatrixDecomposition::fillSkipData(InteractionData &idat, | 
| 885 |  | int atom1, int atom2) { | 
| 884 | – | // Still Missing:: skippedCharge fill must be added to DataStorage | 
| 886 |  | #ifdef IS_MPI | 
| 887 |  | idat.atypes = make_pair( ff_->getAtomType(identsRow[atom1]), | 
| 888 |  | ff_->getAtomType(identsCol[atom2]) ); | 
| 891 |  | idat.eFrame1 = &(atomRowData.electroFrame[atom1]); | 
| 892 |  | idat.eFrame2 = &(atomColData.electroFrame[atom2]); | 
| 893 |  | } | 
| 894 | + |  | 
| 895 |  | if (storageLayout_ & DataStorage::dslTorque) { | 
| 896 |  | idat.t1 = &(atomRowData.torque[atom1]); | 
| 897 |  | idat.t2 = &(atomColData.torque[atom2]); | 
| 898 |  | } | 
| 899 | + |  | 
| 900 | + | if (storageLayout_ & DataStorage::dslSkippedCharge) { | 
| 901 | + | idat.skippedCharge1 = &(atomRowData.skippedCharge[atom1]); | 
| 902 | + | idat.skippedCharge2 = &(atomColData.skippedCharge[atom2]); | 
| 903 | + | } | 
| 904 |  | #else | 
| 905 |  | idat.atypes = make_pair( ff_->getAtomType(idents[atom1]), | 
| 906 |  | ff_->getAtomType(idents[atom2]) ); | 
| 909 |  | idat.eFrame1 = &(snap_->atomData.electroFrame[atom1]); | 
| 910 |  | idat.eFrame2 = &(snap_->atomData.electroFrame[atom2]); | 
| 911 |  | } | 
| 912 | + |  | 
| 913 |  | if (storageLayout_ & DataStorage::dslTorque) { | 
| 914 |  | idat.t1 = &(snap_->atomData.torque[atom1]); | 
| 915 |  | idat.t2 = &(snap_->atomData.torque[atom2]); | 
| 916 |  | } | 
| 917 | + |  | 
| 918 | + | if (storageLayout_ & DataStorage::dslSkippedCharge) { | 
| 919 | + | idat.skippedCharge1 = &(snap_->atomData.skippedCharge[atom1]); | 
| 920 | + | idat.skippedCharge2 = &(snap_->atomData.skippedCharge[atom2]); | 
| 921 | + | } | 
| 922 |  | #endif | 
| 923 |  | } | 
| 924 |  |  |