ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/brains/Snapshot.hpp
(Generate patch)

Comparing trunk/src/brains/Snapshot.hpp (file contents):
Revision 665 by tim, Thu Oct 13 22:26:47 2005 UTC vs.
Revision 1277 by gezelter, Mon Jul 14 12:35:58 2008 UTC

# Line 56 | Line 56
56   #include "brains/Stats.hpp"
57   #include "UseTheForce/DarkSide/simulation_interface.h"
58  
59 +
60   namespace oopse{
61  
62    /**
# Line 68 | Line 69 | namespace oopse{
69    class Snapshot {
70    public:
71              
72 <    Snapshot(int nAtoms, int nRigidbodies) : atomData(nAtoms), rigidbodyData(nRigidbodies),
73 <                                             currentTime_(0), orthoRhombic_(0), chi_(0.0), integralOfChiDt_(0.0), eta_(0.0), id_(-1) {
72 >    Snapshot(int nAtoms, int nRigidbodies) : atomData(nAtoms),
73 >                                             rigidbodyData(nRigidbodies),
74 >                                             currentTime_(0),
75 >                                             orthoTolerance_(1e-6),
76 >                                             orthoRhombic_(0),
77 >                                             chi_(0.0),
78 >                                             integralOfChiDt_(0.0),
79 >                                             eta_(0.0), id_(-1),
80 >                                             hasCOM_(false) {
81  
82      }
83  
84      Snapshot(int nAtoms, int nRigidbodies, int storageLayout)
85 <      : atomData(nAtoms, storageLayout), rigidbodyData(nRigidbodies, storageLayout),
86 <        currentTime_(0), orthoRhombic_(0), chi_(0.0), integralOfChiDt_(0.0), eta_(0.0), id_(-1) {
85 >      : atomData(nAtoms, storageLayout),
86 >        rigidbodyData(nRigidbodies, storageLayout),
87 >        currentTime_(0), orthoTolerance_(1e-6), orthoRhombic_(0), chi_(0.0),
88 >        integralOfChiDt_(0.0), eta_(0.0), id_(-1), hasCOM_(false)  {
89  
90        }
91              
# Line 111 | Line 121 | namespace oopse{
121      /** Sets the H-Matrix */
122      void setHmat(const Mat3x3d& m);
123              
124 <    double getVolume() {
124 >    RealType getVolume() {
125        return hmat_.determinant();
126      }
127  
# Line 122 | Line 132 | namespace oopse{
132  
133      /** Wrapping the vector according to periodic boundary condition*/
134      void wrapVector(Vector3d& v);
135 <
135 >    Vector3d getCOM();
136 >    Vector3d getCOMvel();
137 >    Vector3d getCOMw();
138              
139 <    double getTime() {
139 >    RealType getTime() {
140        return currentTime_;
141      }
142  
143 <    void increaseTime(double dt) {
143 >    void increaseTime(RealType dt) {
144        setTime(getTime() + dt);
145      }
146  
147 <    void setTime(double time) {
147 >    void setTime(RealType time) {
148        currentTime_ =time;
149        //time at statData is redundant
150        statData[Stats::TIME] = currentTime_;
151      }
152  
153 <    double getChi() {
153 >    RealType getChi() {
154        return chi_;
155      }
156  
157 <    void setChi(double chi) {
157 >    void setChi(RealType chi) {
158        chi_ = chi;
159      }
160  
161 <    double getIntegralOfChiDt() {
161 >    RealType getIntegralOfChiDt() {
162        return integralOfChiDt_;
163      }
164  
165 <    void setIntegralOfChiDt(double integralOfChiDt) {
165 >    void setIntegralOfChiDt(RealType integralOfChiDt) {
166        integralOfChiDt_ = integralOfChiDt;
167      }
168              
169 +
170 +    void setOrthoTolerance(RealType orthoTolerance) {
171 +      orthoTolerance_ = orthoTolerance;
172 +    }
173 +
174      Mat3x3d getEta() {
175        return eta_;
176      }
# Line 161 | Line 178 | namespace oopse{
178      void setEta(const Mat3x3d& eta) {
179        eta_ = eta;
180      }
181 <            
181 >
182 >    bool hasCOM() {
183 >      return hasCOM_;
184 >    }
185 >
186 >    void setCOMprops(const Vector3d& COM, const Vector3d& COMvel, const Vector3d& COMw) {
187 >      COM_ = COM;
188 >      COMvel_ = COMvel;
189 >      COMw_ = COMw;
190 >      hasCOM_ = true;
191 >    }
192 >                  
193      DataStorage atomData;
194      DataStorage rigidbodyData;
195      Stats statData;
196              
197    private:
198 <    double currentTime_;
198 >    RealType currentTime_;
199  
200      Mat3x3d hmat_;
201      Mat3x3d invHmat_;
202 +    RealType orthoTolerance_;
203      int orthoRhombic_;
204  
205 <    double chi_;
206 <    double integralOfChiDt_;
205 >    RealType chi_;
206 >    RealType integralOfChiDt_;
207      Mat3x3d eta_;
208 +    Vector3d COM_;
209 +    Vector3d COMvel_;
210 +    Vector3d COMw_;
211 +    bool hasCOM_;
212              
213      int id_; /**< identification number of the snapshot */
214    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines