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 1112 by chuckv, Wed Jan 3 20:47:00 2007 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 69 | Line 70 | namespace oopse{
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) {
73 >                                             currentTime_(0), orthoTolerance_(1e-6), orthoRhombic_(0), chi_(0.0), integralOfChiDt_(0.0), eta_(0.0), id_(-1), hasCOM_(false) {
74  
75      }
76  
77      Snapshot(int nAtoms, int nRigidbodies, int storageLayout)
78        : atomData(nAtoms, storageLayout), rigidbodyData(nRigidbodies, storageLayout),
79 <        currentTime_(0), orthoRhombic_(0), chi_(0.0), integralOfChiDt_(0.0), eta_(0.0), id_(-1) {
79 >        currentTime_(0), orthoTolerance_(1e-6), orthoRhombic_(0), chi_(0.0), integralOfChiDt_(0.0), eta_(0.0), id_(-1), hasCOM_(false)  {
80  
81        }
82              
# Line 111 | Line 112 | namespace oopse{
112      /** Sets the H-Matrix */
113      void setHmat(const Mat3x3d& m);
114              
115 <    double getVolume() {
115 >    RealType getVolume() {
116        return hmat_.determinant();
117      }
118  
# Line 122 | Line 123 | namespace oopse{
123  
124      /** Wrapping the vector according to periodic boundary condition*/
125      void wrapVector(Vector3d& v);
126 <
126 >    Vector3d getCOM();
127 >    Vector3d getCOMvel();
128 >    Vector3d getCOMw();
129              
130 <    double getTime() {
130 >    RealType getTime() {
131        return currentTime_;
132      }
133  
134 <    void increaseTime(double dt) {
134 >    void increaseTime(RealType dt) {
135        setTime(getTime() + dt);
136      }
137  
138 <    void setTime(double time) {
138 >    void setTime(RealType time) {
139        currentTime_ =time;
140        //time at statData is redundant
141        statData[Stats::TIME] = currentTime_;
142      }
143  
144 <    double getChi() {
144 >    RealType getChi() {
145        return chi_;
146      }
147  
148 <    void setChi(double chi) {
148 >    void setChi(RealType chi) {
149        chi_ = chi;
150      }
151  
152 <    double getIntegralOfChiDt() {
152 >    RealType getIntegralOfChiDt() {
153        return integralOfChiDt_;
154      }
155  
156 <    void setIntegralOfChiDt(double integralOfChiDt) {
156 >    void setIntegralOfChiDt(RealType integralOfChiDt) {
157        integralOfChiDt_ = integralOfChiDt;
158      }
159              
160 +
161 +    void setOrthoTolerance(RealType orthoTolerance) {
162 +      orthoTolerance_ = orthoTolerance;
163 +    }
164 +
165      Mat3x3d getEta() {
166        return eta_;
167      }
# Line 161 | Line 169 | namespace oopse{
169      void setEta(const Mat3x3d& eta) {
170        eta_ = eta;
171      }
172 <            
172 >
173 >    bool hasCOM() {
174 >      return hasCOM_;
175 >    }
176 >
177 >    void setCOMprops(const Vector3d& COM, const Vector3d& COMvel, const Vector3d& COMw) {
178 >      COM_ = COM;
179 >      COMvel_ = COMvel;
180 >      COMw_ = COMw;
181 >      hasCOM_ = true;
182 >    }
183 >                  
184      DataStorage atomData;
185      DataStorage rigidbodyData;
186      Stats statData;
187              
188    private:
189 <    double currentTime_;
189 >    RealType currentTime_;
190  
191      Mat3x3d hmat_;
192      Mat3x3d invHmat_;
193 +    RealType orthoTolerance_;
194      int orthoRhombic_;
195  
196 <    double chi_;
197 <    double integralOfChiDt_;
196 >    RealType chi_;
197 >    RealType integralOfChiDt_;
198      Mat3x3d eta_;
199 +    Vector3d COM_;
200 +    Vector3d COMvel_;
201 +    Vector3d COMw_;
202 +    bool hasCOM_;
203              
204      int id_; /**< identification number of the snapshot */
205    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines