| 36 |  | * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). | 
| 37 |  | * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). | 
| 38 |  | * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). | 
| 39 | < | * [4]  Vardeman & Gezelter, in progress (2009). | 
| 39 | > | * [4]  Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010). | 
| 40 | > | * [5]  Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). | 
| 41 |  | */ | 
| 42 |  |  | 
| 43 |  | /** | 
| 928 |  | void addZangle(RealType angle, int snapshotNo) { | 
| 929 |  | ((snapshotMan_->getSnapshot(snapshotNo))->*storage_).zAngle[localIndex_] += angle; | 
| 930 |  | } | 
| 931 | + |  | 
| 932 | + | /** | 
| 933 | + | * Returns the previous electric field of this stuntDouble | 
| 934 | + | * @return the electric field of this stuntDouble | 
| 935 | + | */ | 
| 936 | + | Vector3d getPrevEField() { | 
| 937 | + | return ((snapshotMan_->getPrevSnapshot())->*storage_).electricField[localIndex_]; | 
| 938 | + | } | 
| 939 | + |  | 
| 940 | + | /** | 
| 941 | + | * Returns the current electric field of this stuntDouble | 
| 942 | + | * @return the electric field of this stuntDouble | 
| 943 | + | */ | 
| 944 | + | Vector3d getEField() { | 
| 945 | + | return ((snapshotMan_->getCurrentSnapshot())->*storage_).electricField[localIndex_]; | 
| 946 | + | } | 
| 947 | + |  | 
| 948 | + | /** | 
| 949 | + | * Returns the electric field of this stuntDouble in specified snapshot | 
| 950 | + | * @return the electric field of this stuntDouble | 
| 951 | + | * @param snapshotNo | 
| 952 | + | */ | 
| 953 | + | Vector3d getEField(int snapshotNo) { | 
| 954 | + | return ((snapshotMan_->getSnapshot(snapshotNo))->*storage_).electricField[localIndex_]; | 
| 955 | + | } | 
| 956 | + |  | 
| 957 | + | /** | 
| 958 | + | * Sets  the previous electric field of this stuntDouble | 
| 959 | + | * @param electricField  new electric field | 
| 960 | + | * @see #getEField | 
| 961 | + | */ | 
| 962 | + | void setPrevEField(const Vector3d& electricField) { | 
| 963 | + | ((snapshotMan_->getPrevSnapshot())->*storage_).electricField[localIndex_] = electricField; | 
| 964 | + | } | 
| 965 | + |  | 
| 966 | + | /** | 
| 967 | + | * Sets  the current electric field of this stuntDouble | 
| 968 | + | * @param electricField  new electric field | 
| 969 | + | */ | 
| 970 | + | void setEField(const Vector3d& electricField) { | 
| 971 | + | DataStorage&  data = snapshotMan_->getCurrentSnapshot()->*storage_; | 
| 972 | + | data.electricField[localIndex_] = electricField; | 
| 973 | + | //((snapshotMan_->getCurrentSnapshot())->*storage_).electricField[localIndex_] = electricField; | 
| 974 | + | } | 
| 975 |  |  | 
| 976 | + | /** | 
| 977 | + | * Sets  the electric field of this stuntDouble in specified snapshot | 
| 978 | + | * @param electricField electric field to be set | 
| 979 | + | * @param snapshotNo | 
| 980 | + | * @see #getEField | 
| 981 | + | */ | 
| 982 | + | void setEField(const Vector3d& electricField, int snapshotNo) { | 
| 983 | + |  | 
| 984 | + | ((snapshotMan_->getSnapshot(snapshotNo))->*storage_).electricField[localIndex_] = electricField; | 
| 985 | + |  | 
| 986 | + | } | 
| 987 | + |  | 
| 988 | + |  | 
| 989 |  | /** Set the force of this stuntDouble to zero */ | 
| 990 |  | void zeroForcesAndTorques(); | 
| 991 |  | /** |