mailr11015 - /1.3/generic_fns/diffusion_tensor.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on March 16, 2010 - 18:18:
Author: bugman
Date: Tue Mar 16 18:18:35 2010
New Revision: 11015

URL: http://svn.gna.org/viewcvs/relax?rev=11015&view=rev
Log:
Fix for the ellipsoid() function for the new param_types == 3 (Dxx, Dyy, Dzz, 
Dxy, Dxz, Dyz) data.

The ordering Dx <= Dy <= Dz was not being used so the rhombicity was 
incorrectly calculated.


Modified:
    1.3/generic_fns/diffusion_tensor.py

Modified: 1.3/generic_fns/diffusion_tensor.py
URL: 
http://svn.gna.org/viewcvs/relax/1.3/generic_fns/diffusion_tensor.py?rev=11015&r1=11014&r2=11015&view=diff
==============================================================================
--- 1.3/generic_fns/diffusion_tensor.py (original)
+++ 1.3/generic_fns/diffusion_tensor.py Tue Mar 16 18:18:35 2010
@@ -372,11 +372,21 @@
         # Eigenvalues.
         Di, R = eig(tensor)
 
+        # Reordering structure.
+        reorder = zeros(3, int)
+        Di_sort = sorted(Di)
+        Di = Di.tolist()
+        R_sort = zeros((3, 3), float64)
+
+        # Reorder columns.
+        for i in range(3):
+            R_sort[:, i] = R[:, Di.index(Di_sort[i])]
+
         # Euler angles.
-        alpha, beta, gamma = R_to_euler_zyz(R)
+        alpha, beta, gamma = R_to_euler_zyz(R_sort)
 
         # Set the parameters.
-        set(value=[Di[0], Di[1], Di[2]], param=['Dx', 'Dy', 'Dz'])
+        set(value=[Di_sort[0], Di_sort[1], Di_sort[2]], param=['Dx', 'Dy', 
'Dz'])
 
     # Unknown parameter combination.
     else:




Related Messages


Powered by MHonArc, Updated Tue Mar 16 19:00:02 2010