mailr9163 - /branches/frame_order/maths_fns/frame_order_matrix_ops.py


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

Header


Content

Posted by edward on June 29, 2009 - 10:25:
Author: bugman
Date: Mon Jun 29 10:25:13 2009
New Revision: 9163

URL: http://svn.gna.org/viewcvs/relax?rev=9163&view=rev
Log:
Expansion of frame order to both the forward and reverse rotations.

reduce_alignment_tensor() was renamed to reduce_alignment_tensor_reverse(), 
and the new function
reduce_alignment_tensor() added.


Modified:
    branches/frame_order/maths_fns/frame_order_matrix_ops.py

Modified: branches/frame_order/maths_fns/frame_order_matrix_ops.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/frame_order/maths_fns/frame_order_matrix_ops.py?rev=9163&r1=9162&r2=9163&view=diff
==============================================================================
--- branches/frame_order/maths_fns/frame_order_matrix_ops.py (original)
+++ branches/frame_order/maths_fns/frame_order_matrix_ops.py Mon Jun 29 
10:25:13 2009
@@ -161,6 +161,8 @@
 def reduce_alignment_tensor(D, A, red_tensor):
     """Calculate the reduction in the alignment tensor caused by the Frame 
Order matrix.
 
+    This is the forward rotation notation.
+
     @param D:           The Frame Order matrix, 2nd degree to be populated.
     @type D:            numpy 9D, rank-2 array
     @param A:           The full alignment tensor in {Axx, Ayy, Axy, Axz, 
Ayz} notation.
@@ -171,6 +173,56 @@
     """
 
     # The reduced tensor element A0.
+    red_tensor[0] =                 (D[0,0] - D[2,2])*A[0]
+    red_tensor[0] = red_tensor[0] + (D[1,1] - D[2,2])*A[1]
+    red_tensor[0] = red_tensor[0] + 2.0*D[0,1]*A[2]
+    red_tensor[0] = red_tensor[0] + 2.0*D[0,2]*A[3]
+    red_tensor[0] = red_tensor[0] + 2.0*D[1,2]*A[4]
+
+    # The reduced tensor element A1.
+    red_tensor[1] =                 (D[3,3] - D[5,5])*A[0]
+    red_tensor[1] = red_tensor[1] + (D[4,4] - D[5,5])*A[1]
+    red_tensor[1] = red_tensor[1] + 2.0*D[3,4]*A[2]
+    red_tensor[1] = red_tensor[1] + 2.0*D[3,5]*A[3]
+    red_tensor[1] = red_tensor[1] + 2.0*D[4,5]*A[4]
+
+    # The reduced tensor element A2.
+    red_tensor[2] =                 (D[0,3] - D[2,5])*A[0] 
+    red_tensor[2] = red_tensor[2] + (D[1,4] - D[2,5])*A[1] 
+    red_tensor[2] = red_tensor[2] + (D[0,4] + D[1,3])*A[2] 
+    red_tensor[2] = red_tensor[2] + (D[0,5] + D[2,3])*A[3] 
+    red_tensor[2] = red_tensor[2] + (D[1,5] + D[2,4])*A[4]
+
+    # The reduced tensor element A3.
+    red_tensor[3] =                 (D[0,6] - D[2,8])*A[0] 
+    red_tensor[3] = red_tensor[3] + (D[1,7] - D[2,8])*A[1] 
+    red_tensor[3] = red_tensor[3] + (D[0,7] + D[1,6])*A[2] 
+    red_tensor[3] = red_tensor[3] + (D[0,8] + D[2,6])*A[3] 
+    red_tensor[3] = red_tensor[3] + (D[1,8] + D[2,7])*A[4]
+
+    # The reduced tensor element A4.
+    red_tensor[4] =                 (D[3,6] - D[5,8])*A[0] 
+    red_tensor[4] = red_tensor[4] + (D[4,7] - D[5,8])*A[1] 
+    red_tensor[4] = red_tensor[4] + (D[3,7] + D[4,6])*A[2] 
+    red_tensor[4] = red_tensor[4] + (D[3,8] + D[5,6])*A[3] 
+    red_tensor[4] = red_tensor[4] + (D[4,8] + D[5,7])*A[4]
+
+
+def reduce_alignment_tensor_reverse(D, A, red_tensor):
+    """Calculate the reduction in the alignment tensor caused by the Frame 
Order matrix.
+
+    This is the reverse rotation notation.
+
+    @param D:           The Frame Order matrix, 2nd degree to be populated.
+    @type D:            numpy 9D, rank-2 array
+    @param A:           The full alignment tensor in {Axx, Ayy, Axy, Axz, 
Ayz} notation.
+    @type A:            numpy 5D, rank-1 array
+    @param red_tensor:  The structure in {Axx, Ayy, Axy, Axz, Ayz} notation 
to place the reduced
+                        alignment tensor.
+    @type red_tensor:   numpy 5D, rank-1 array
+    """
+
+    # The reduced tensor element A0.
     red_tensor[0] =                 (D[0,0] - D[6,6])*A[0]
     red_tensor[0] = red_tensor[0] + (D[3,3] - D[6,6])*A[1]
     red_tensor[0] = red_tensor[0] + 2.0*D[0,3]*A[2]




Related Messages


Powered by MHonArc, Updated Tue Jun 30 11:40:02 2009