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

Comparing trunk/src/primitives/StuntDouble.cpp (file contents):
Revision 1442 by gezelter, Mon May 10 17:28:26 2010 UTC vs.
Revision 2071 by gezelter, Sat Mar 7 21:41:51 2015 UTC

# Line 35 | Line 35
35   *                                                                      
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).                        
38 > * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008).          
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   /**
# Line 52 | Line 53 | namespace OpenMD {
53  
54    StuntDouble::StuntDouble(ObjectType objType, DataStoragePointer storage) :
55      objType_(objType), storage_(storage), snapshotMan_(NULL),    
56 <    linear_(false), linearAxis_(-1), globalIndex_(-1), localIndex_(-1),
57 <    globalIntegrableObjectIndex_(-1){
57 <    }
56 >    linear_(false), linearAxis_(-1), globalIndex_(-1),
57 >    globalIntegrableObjectIndex_(-1), localIndex_(-1) {}
58  
59 <  StuntDouble::~StuntDouble() {
59 >  StuntDouble::~StuntDouble() {}
60  
61  }
62
61    void StuntDouble::zeroForcesAndTorques() {    
62 <    setFrc(V3Zero);
63 <    setTrq(V3Zero);
64 <    setParticlePot(0.0);
62 >    int sl = (snapshotMan_->getCurrentSnapshot()->*storage_).getStorageLayout();
63 >
64 >    if (sl & DataStorage::dslForce)
65 >      setFrc(V3Zero);
66 >    if (sl & DataStorage::dslTorque)
67 >      setTrq(V3Zero);
68 >    if (sl & DataStorage::dslParticlePot)
69 >      setParticlePot(0.0);
70 >    if (sl & DataStorage::dslFlucQForce)
71 >      setFlucQFrc(0.0);
72 >    if (sl & DataStorage::dslElectricField)
73 >      setElectricField(V3Zero);
74    }
75    void StuntDouble::addProperty(GenericData* genData) {
76      properties_.addProperty(genData);  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines