Author: bugman Date: Mon Oct 24 11:59:51 2011 New Revision: 14892 URL: http://svn.gna.org/viewcvs/relax?rev=14892&view=rev Log: Added a script for optimising the rigid frame order CaM test data. The resultant average position PDB file and relax save file have also been added for reference. Added: 1.3/test_suite/shared_data/frame_order/rigid/ave_pos.pdb 1.3/test_suite/shared_data/frame_order/rigid/frame_order.bz2 (with props) 1.3/test_suite/shared_data/frame_order/rigid/frame_order.py Added: 1.3/test_suite/shared_data/frame_order/rigid/ave_pos.pdb URL: http://svn.gna.org/viewcvs/relax/1.3/test_suite/shared_data/frame_order/rigid/ave_pos.pdb?rev=14892&view=auto ============================================================================== --- 1.3/test_suite/shared_data/frame_order/rigid/ave_pos.pdb (added) +++ 1.3/test_suite/shared_data/frame_order/rigid/ave_pos.pdb Mon Oct 24 11:59:51 2011 @@ -1,0 +1,144 @@ +REMARK 4 THIS FILE COMPLIES WITH FORMAT V. 3.1, 1-AUG-2007 +REMARK 40 CREATED BY RELAX (HTTP://NMR-RELAX.COM) +HET A CA1000 1 +HET A CA1001 1 +HETNAM CA Unknown +FORMUL 1000 CA CA1 +ATOM 1 N GLU A 82 34.183 -0.549 20.134 1.00 0.00 N +ATOM 2 N GLU A 83 36.503 -2.172 20.540 1.00 0.00 N +ATOM 3 H GLU A 83 36.691 -1.295 20.145 1.00 0.00 H +ATOM 4 N GLU A 84 36.514 -2.072 23.306 1.00 0.00 N +ATOM 5 H GLU A 84 36.343 -1.250 22.800 1.00 0.00 H +ATOM 6 N ILE A 85 34.140 -3.403 23.863 1.00 0.00 N +ATOM 7 H ILE A 85 34.133 -2.746 23.137 1.00 0.00 H +ATOM 8 N ARG A 86 34.690 -5.883 22.657 1.00 0.00 N +ATOM 9 H ARG A 86 34.897 -5.077 22.139 1.00 0.00 H +ATOM 10 N GLU A 87 37.073 -6.673 24.032 1.00 0.00 N +ATOM 11 H GLU A 87 37.120 -5.773 23.643 1.00 0.00 H +ATOM 12 N ALA A 88 35.977 -6.728 26.587 1.00 0.00 N +ATOM 13 H ALA A 88 35.799 -5.933 26.042 1.00 0.00 H +ATOM 14 N PHE A 89 34.102 -8.710 26.114 1.00 0.00 N +ATOM 15 H PHE A 89 34.214 -8.017 25.431 1.00 0.00 H +ATOM 16 N ARG A 90 35.818 -10.863 25.666 1.00 0.00 N +ATOM 17 H ARG A 90 36.063 -9.991 25.292 1.00 0.00 H +ATOM 18 N VAL A 91 36.933 -11.005 28.154 1.00 0.00 N +ATOM 19 H VAL A 91 36.693 -10.142 27.753 1.00 0.00 H +ATOM 20 N PHE A 92 34.873 -11.976 29.749 1.00 0.00 N +ATOM 21 H PHE A 92 34.663 -11.373 29.005 1.00 0.00 H +ATOM 22 N ASP A 93 34.526 -14.405 28.598 1.00 0.00 N +ATOM 23 H ASP A 93 34.845 -13.617 28.110 1.00 0.00 H +ATOM 24 N LYS A 94 35.773 -16.823 29.906 1.00 0.00 N +ATOM 25 H LYS A 94 34.907 -16.699 30.346 1.00 0.00 H +ATOM 26 N ASP A 95 36.653 -19.405 29.205 1.00 0.00 N +ATOM 27 H ASP A 95 35.692 -19.214 29.232 1.00 0.00 H +ATOM 28 N GLY A 96 37.295 -18.979 26.619 1.00 0.00 N +ATOM 29 H GLY A 96 36.876 -18.340 27.231 1.00 0.00 H +ATOM 30 N ASN A 97 35.645 -19.760 24.615 1.00 0.00 N +ATOM 31 H ASN A 97 35.368 -19.628 25.545 1.00 0.00 H +ATOM 32 N GLY A 98 34.230 -18.261 22.874 1.00 0.00 N +ATOM 33 H GLY A 98 34.820 -17.917 23.578 1.00 0.00 H +ATOM 34 N TYR A 99 31.685 -17.671 23.447 1.00 0.00 N +ATOM 35 H TYR A 99 32.302 -18.211 23.983 1.00 0.00 H +ATOM 36 N ILE A 100 29.371 -16.423 25.865 1.00 0.00 N +ATOM 37 H ILE A 100 28.815 -15.909 25.245 1.00 0.00 H +ATOM 38 N SER A 101 28.363 -17.858 28.835 1.00 0.00 N +ATOM 39 H SER A 101 29.285 -17.945 29.156 1.00 0.00 H +ATOM 40 N ALA A 102 25.374 -18.312 30.855 1.00 0.00 N +ATOM 41 H ALA A 102 24.966 -19.072 30.389 1.00 0.00 H +ATOM 42 N ALA A 103 25.944 -18.767 33.574 1.00 0.00 N +ATOM 43 H ALA A 103 25.830 -19.560 33.009 1.00 0.00 H +ATOM 44 N GLU A 104 28.522 -17.832 33.550 1.00 0.00 N +ATOM 45 H GLU A 104 28.152 -18.299 32.771 1.00 0.00 H +ATOM 46 N LEU A 105 28.025 -15.193 33.234 1.00 0.00 N +ATOM 47 H LEU A 105 27.478 -15.863 32.769 1.00 0.00 H +ATOM 48 N ARG A 106 26.962 -14.637 35.686 1.00 0.00 N +ATOM 49 H ARG A 106 26.764 -15.489 35.240 1.00 0.00 H +ATOM 50 N HIS A 107 29.211 -14.833 37.246 1.00 0.00 N +ATOM 51 H HIS A 107 29.096 -15.418 36.463 1.00 0.00 H +ATOM 52 N VAL A 108 30.819 -12.639 36.383 1.00 0.00 N +ATOM 53 H VAL A 108 30.483 -13.206 35.656 1.00 0.00 H +ATOM 54 N MET A 109 28.992 -10.494 36.785 1.00 0.00 N +ATOM 55 H MET A 109 28.658 -11.255 36.265 1.00 0.00 H +ATOM 56 N THR A 110 28.369 -10.818 39.522 1.00 0.00 N +ATOM 57 H THR A 110 28.405 -11.622 38.962 1.00 0.00 H +ATOM 58 N ASN A 111 30.893 -10.441 40.813 1.00 0.00 N +ATOM 59 H ASN A 111 30.905 -11.031 40.028 1.00 0.00 H +ATOM 60 N LEU A 112 31.455 -7.988 39.761 1.00 0.00 N +ATOM 61 H LEU A 112 30.991 -8.687 39.253 1.00 0.00 H +ATOM 62 N GLY A 113 29.968 -6.413 41.271 1.00 0.00 N +ATOM 63 H GLY A 113 30.083 -7.383 41.337 1.00 0.00 H +ATOM 64 N GLU A 114 27.318 -6.514 40.924 1.00 0.00 N +ATOM 65 H GLU A 114 28.013 -6.847 40.318 1.00 0.00 H +ATOM 66 N LYS A 115 24.673 -8.394 41.958 1.00 0.00 N +ATOM 67 H LYS A 115 24.256 -7.629 42.408 1.00 0.00 H +ATOM 68 N LEU A 116 22.934 -10.899 40.703 1.00 0.00 N +ATOM 69 H LEU A 116 23.785 -11.228 40.346 1.00 0.00 H +ATOM 70 N THR A 117 20.023 -12.995 40.434 1.00 0.00 N +ATOM 71 H THR A 117 19.358 -12.297 40.263 1.00 0.00 H +ATOM 72 N ASP A 118 19.492 -16.472 39.491 1.00 0.00 N +ATOM 73 H ASP A 118 19.472 -16.920 40.363 1.00 0.00 H +ATOM 74 N GLU A 119 17.224 -16.416 37.941 1.00 0.00 N +ATOM 75 H GLU A 119 17.163 -16.383 38.919 1.00 0.00 H +ATOM 76 N GLU A 120 16.938 -13.715 37.264 1.00 0.00 N +ATOM 77 H GLU A 120 17.170 -13.935 38.190 1.00 0.00 H +ATOM 78 N VAL A 121 19.157 -13.452 35.645 1.00 0.00 N +ATOM 79 H VAL A 121 19.205 -14.015 36.448 1.00 0.00 H +ATOM 80 N ASP A 122 18.416 -15.199 33.722 1.00 0.00 N +ATOM 81 H ASP A 122 18.246 -15.397 34.666 1.00 0.00 H +ATOM 82 N GLU A 123 16.392 -13.752 32.556 1.00 0.00 N +ATOM 83 H GLU A 123 16.456 -13.736 33.534 1.00 0.00 H +ATOM 84 N MET A 124 17.894 -11.638 31.435 1.00 0.00 N +ATOM 85 H MET A 124 18.108 -11.870 32.367 1.00 0.00 H +ATOM 86 N ILE A 125 19.526 -13.141 29.735 1.00 0.00 N +ATOM 87 H ILE A 125 19.406 -13.449 30.655 1.00 0.00 H +ATOM 88 N ARG A 126 17.612 -14.466 28.114 1.00 0.00 N +ATOM 89 H ARG A 126 17.463 -14.540 29.080 1.00 0.00 H +ATOM 90 N GLU A 127 16.483 -12.193 26.974 1.00 0.00 N +ATOM 91 H GLU A 127 16.729 -12.176 27.922 1.00 0.00 H +ATOM 92 N ALA A 128 18.677 -11.026 25.671 1.00 0.00 N +ATOM 93 H ALA A 128 18.812 -11.344 26.587 1.00 0.00 H +ATOM 94 N ASP A 129 19.499 -13.212 24.293 1.00 0.00 N +ATOM 95 H ASP A 129 19.021 -13.245 25.148 1.00 0.00 H +ATOM 96 N ILE A 130 18.957 -14.073 21.174 1.00 0.00 N +ATOM 97 H ILE A 130 19.900 -13.849 21.019 1.00 0.00 H +ATOM 98 N ASP A 131 18.818 -16.210 19.437 1.00 0.00 N +ATOM 99 H ASP A 131 19.653 -15.969 19.889 1.00 0.00 H +ATOM 100 N GLY A 132 17.821 -18.079 21.000 1.00 0.00 N +ATOM 101 H GLY A 132 17.977 -17.133 21.207 1.00 0.00 H +ATOM 102 N ASP A 133 19.520 -19.852 22.162 1.00 0.00 N +ATOM 103 H ASP A 133 19.804 -18.998 21.776 1.00 0.00 H +ATOM 104 N GLY A 134 20.361 -19.892 24.691 1.00 0.00 N +ATOM 105 H GLY A 134 19.920 -19.145 24.233 1.00 0.00 H +ATOM 106 N GLN A 135 22.577 -18.637 25.570 1.00 0.00 N +ATOM 107 H GLN A 135 22.214 -18.620 24.659 1.00 0.00 H +ATOM 108 N VAL A 136 24.902 -15.809 25.454 1.00 0.00 N +ATOM 109 H VAL A 136 25.453 -15.996 26.243 1.00 0.00 H +ATOM 110 N ASN A 137 26.168 -14.353 22.565 1.00 0.00 N +ATOM 111 H ASN A 137 25.275 -14.167 22.208 1.00 0.00 H +ATOM 112 N TYR A 138 28.914 -12.715 20.793 1.00 0.00 N +ATOM 113 H TYR A 138 29.408 -13.478 20.425 1.00 0.00 H +ATOM 114 N GLU A 139 27.709 -10.883 18.920 1.00 0.00 N +ATOM 115 H GLU A 139 27.890 -11.775 18.561 1.00 0.00 H +ATOM 116 N GLU A 140 25.099 -10.636 20.005 1.00 0.00 N +ATOM 117 H GLU A 140 25.456 -11.544 19.904 1.00 0.00 H +ATOM 118 N PHE A 141 25.779 -9.668 22.525 1.00 0.00 N +ATOM 119 H PHE A 141 26.317 -10.387 22.134 1.00 0.00 H +ATOM 120 N VAL A 142 26.847 -7.156 21.885 1.00 0.00 N +ATOM 121 H VAL A 142 27.129 -7.912 21.327 1.00 0.00 H +ATOM 122 N GLN A 143 24.547 -5.833 20.826 1.00 0.00 N +ATOM 123 H GLN A 143 24.717 -6.714 20.428 1.00 0.00 H +ATOM 124 N MET A 144 22.889 -5.962 23.118 1.00 0.00 N +ATOM 125 H MET A 144 23.372 -6.776 22.863 1.00 0.00 H +ATOM 126 N MET A 145 24.354 -4.426 24.998 1.00 0.00 N +ATOM 127 H MET A 145 24.853 -5.052 24.434 1.00 0.00 H +ATOM 128 N THR A 146 24.889 -2.283 23.428 1.00 0.00 N +ATOM 129 H THR A 146 24.779 -3.205 23.110 1.00 0.00 H +ATOM 130 N ALA A 147 22.444 -1.491 22.653 1.00 0.00 N +ATOM 131 H ALA A 147 22.644 -1.901 23.521 1.00 0.00 H +ATOM 132 N LYS A 148 20.904 0.461 20.616 1.00 0.00 N +ATOM 133 H LYS A 148 21.239 -0.171 19.945 1.00 0.00 H +TER 134 CA A1001 +HETATM 135 CA CA A1000 32.559 -19.129 27.777 1.00 0.00 CA +HETATM 136 CA CA A1001 22.609 -16.629 21.588 1.00 0.00 CA +MASTER 0 0 2 0 0 0 0 0 135 1 0 0 +END Added: 1.3/test_suite/shared_data/frame_order/rigid/frame_order.bz2 URL: http://svn.gna.org/viewcvs/relax/1.3/test_suite/shared_data/frame_order/rigid/frame_order.bz2?rev=14892&view=auto ============================================================================== Binary file - no diff available. Propchange: 1.3/test_suite/shared_data/frame_order/rigid/frame_order.bz2 ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: 1.3/test_suite/shared_data/frame_order/rigid/frame_order.py URL: http://svn.gna.org/viewcvs/relax/1.3/test_suite/shared_data/frame_order/rigid/frame_order.py?rev=14892&view=auto ============================================================================== --- 1.3/test_suite/shared_data/frame_order/rigid/frame_order.py (added) +++ 1.3/test_suite/shared_data/frame_order/rigid/frame_order.py Mon Oct 24 11:59:51 2011 @@ -1,0 +1,117 @@ +# Script for optimising the rigid frame order test model of CaM. + +# Python module imports. +from numpy import array, float64, transpose, zeros +from os import sep + +# relax module imports. +from maths_fns.rotation_matrix import euler_to_R_zyz + + +class Analysis: + def __init__(self): + """Execute the frame order analysis.""" + + # Optimise. + self.optimisation() + + # The rotation matrix. + R = zeros((3, 3), float64) + euler_to_R_zyz(cdp.ave_pos_alpha, cdp.ave_pos_beta, cdp.ave_pos_gamma, R) + print("Rotation matrix:\n%s\n" % R) + R = transpose(R) + print("Inverted rotation:\n%s\n" % R) + + # Load the original structure. + self.original_structure() + + # Domain transformation. + self.transform(R, array([ 37.254, 0.5, 16.7465])) + + # Display in pymol. + self.pymol_display() + + # Save the state. + state.save('frame_order', force=True) + + + def optimisation(self): + """Optimise the frame order model.""" + + # The file paths. + PATH_N_DOM = '..' + sep + PATH_C_DOM = '.' + sep + + # Create the data pipe. + pipe.create(pipe_name='frame order', pipe_type='frame order') + + # Load the tensors. + script(PATH_N_DOM + 'tensors.py') + script(PATH_C_DOM + 'tensors.py') + + # The tensor domains and reductions. + full = ['Dy N-dom', 'Tb N-dom', 'Tm N-dom', 'Er N-dom'] + red = ['Dy C-dom', 'Tb C-dom', 'Tm C-dom', 'Er C-dom'] + for i in range(len(full)): + align_tensor.set_domain(tensor=full[i], domain='N') + align_tensor.set_domain(tensor=red[i], domain='C') + align_tensor.reduction(full_tensor=full[i], red_tensor=red[i]) + + # Select the model. + frame_order.select_model('rigid') + + # Set the reference domain. + frame_order.ref_domain('N') + + # Optimise. + grid_search(inc=3) + minimise('simplex', constraints=False) + + + def original_structure(self): + """Load the original structure into a dedicated data pipe.""" + + # Create a special data pipe for the original rigid body position. + pipe.create(pipe_name='orig pos', pipe_type='frame order') + + # Load the structure. + structure.read_pdb('1J7P_1st_NH.pdb', dir='..') + + + def pymol_display(self): + """Display the results in PyMOL.""" + + # A special data pipe for all the structures. + pipe.create('pymol', 'frame order') + + # Load the PDBs. + structure.read_pdb('1J7P_1st_NH.pdb', dir='..') + structure.read_pdb('1J7P_1st_NH_rot.pdb', dir='..') + structure.read_pdb('ave_pos.pdb', dir='.') + + # PyMOL. + pymol.view() + pymol.command('show spheres') + pymol.command('zoom') + pymol.command('color red, 1J7P_1st_NH_rot') + pymol.command('color yellow, ave_pos') + + + def transform(self, R, pivot): + """Transform the domain to the average position.""" + + # Create a special data pipe for the average rigid body position. + pipe.create(pipe_name='ave pos', pipe_type='frame order') + + # Load the structure. + structure.read_pdb('1J7P_1st_NH_rot.pdb', dir='..') + + # Rotate all atoms. + structure.rotate(R=R, origin=pivot) + + # Write out the new PDB. + structure.write_pdb('ave_pos', force=True) + + +# Execute the analysis. +Analysis()