mailr18651 - /branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py


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

Header


Content

Posted by edward on March 05, 2013 - 18:29:
Author: bugman
Date: Tue Mar  5 18:29:39 2013
New Revision: 18651

URL: http://svn.gna.org/viewcvs/relax?rev=18651&view=rev
Log:
Changed how the free rotor models are handled in the CaM frame order system 
tests.

As the {a, b, g} -> {0, b', g'} angle conversion is incredibly complex, 
instead of guessing b' and
g' for the tests (via optimisations), the original structure is rotated via 
{a, b, g} to the real
average position and b' and g' set to zero.


Modified:
    
branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py

Modified: 
branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py?rev=18651&r1=18650&r2=18651&view=diff
==============================================================================
--- 
branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py
 (original)
+++ 
branches/frame_order_testing/test_suite/system_tests/scripts/frame_order/cam/base_script.py
 Tue Mar  5 18:29:39 2013
@@ -82,12 +82,13 @@
             self._execute_uf(uf_name='frame_order.num_int_pts', 
num=self.num_int_pts)
 
         # Check the minimum.
-        if hasattr(self, 'ave_pos_alpha'):
-            self._execute_uf(uf_name='value.set', val=self.ave_pos_alpha, 
param='ave_pos_alpha')
-        if hasattr(self, 'ave_pos_beta'):
-            self._execute_uf(uf_name='value.set', val=self.ave_pos_beta, 
param='ave_pos_beta')
-        if hasattr(self, 'ave_pos_gamma'):
-            self._execute_uf(uf_name='value.set', val=self.ave_pos_gamma, 
param='ave_pos_gamma')
+        if self.model not in ['free rotor', 'iso cone, free rotor']:
+            if hasattr(self, 'ave_pos_alpha'):
+                self._execute_uf(uf_name='value.set', 
val=self.ave_pos_alpha, param='ave_pos_alpha')
+            if hasattr(self, 'ave_pos_beta'):
+                self._execute_uf(uf_name='value.set', val=self.ave_pos_beta, 
param='ave_pos_beta')
+            if hasattr(self, 'ave_pos_gamma'):
+                self._execute_uf(uf_name='value.set', 
val=self.ave_pos_gamma, param='ave_pos_gamma')
         if hasattr(self, 'eigen_alpha'):
             self._execute_uf(uf_name='value.set', val=self.eigen_alpha, 
param='eigen_alpha')
         if hasattr(self, 'eigen_beta'):
@@ -171,6 +172,15 @@
         self._execute_uf(uf_name='structure.read_pdb', 
file='1J7O_1st_NH.pdb', dir=BASE_PATH, set_mol_name='N-dom')
         self._execute_uf(uf_name='structure.read_pdb', 
file='1J7P_1st_NH_rot.pdb', dir=BASE_PATH, set_mol_name='C-dom')
 
+        # Solve the {a, b, g} -> {0, b', g'} angle conversion problem in the 
rotor models by pre-rotating the domain!
+        if self.model in ['free rotor', 'iso cone, free rotor']:
+            # The rotation matrix.
+            R = zeros((3, 3), float64)
+            euler_to_R_zyz(self.ave_pos_alpha, self.ave_pos_beta, 
self.ave_pos_gamma, R)
+
+            # Rotate.
+            self._execute_uf(uf_name='structure.rotate', R=R, 
atom_id='#C-dom')
+
         # Set up the 15N and 1H spins.
         self._execute_uf(uf_name='structure.load_spins', spin_id='@N', 
ave_pos=False)
         self._execute_uf(uf_name='structure.load_spins', spin_id='@H', 
ave_pos=False)




Related Messages


Powered by MHonArc, Updated Tue Mar 05 19:00:02 2013