# | Line 36 | Line 36 | |
---|---|---|
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 | /** | |
# | Line 254 | Line 255 | namespace OpenMD{ | |
255 | return rotation angle from -PI to PI | |
256 | */ | |
257 | inline Real get_rotation_angle() const{ | |
258 | < | if( w < (Real)0.0 ) |
258 | > | if( w() < (Real)0.0 ) |
259 | return 2.0*atan2(-sqrt( x()*x() + y()*y() + z()*z() ), -w() ); | |
260 | else | |
261 | return 2.0*atan2( sqrt( x()*x() + y()*y() + z()*z() ), w() ); | |
# | Line 312 | Line 313 | namespace OpenMD{ | |
313 | c.z()); | |
314 | ||
315 | this->normalize(); // if "from" or "to" not unit, normalize quat | |
316 | < | w += 1.0f; // reducing angle to halfangle |
317 | < | if( w <= 1e-6 ) { // angle close to PI |
316 | > | w() += 1.0f; // reducing angle to halfangle |
317 | > | if( w() <= 1e-6 ) { // angle close to PI |
318 | if( ( from.z()*from.z() ) > ( from.x()*from.x() ) ) { | |
319 | < | this->data_[0] = w; |
319 | > | this->data_[0] = w(); |
320 | this->data_[1] = 0.0; //cross(from , Vector3d(1,0,0)) | |
321 | this->data_[2] = from.z(); | |
322 | this->data_[3] = -from.y(); | |
323 | } else { | |
324 | < | this->data_[0] = w; |
324 | > | this->data_[0] = w(); |
325 | this->data_[1] = from.y(); //cross(from, Vector3d(0,0,1)) | |
326 | this->data_[2] = -from.x(); | |
327 | this->data_[3] = 0.0; |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |