Author: bugman Date: Fri Sep 10 15:53:20 2010 New Revision: 11545 URL: http://svn.gna.org/viewcvs/relax?rev=11545&view=rev Log: Merged revisions 11334-11338,11340-11341,11366-11368,11381-11385,11388-11534 via svnmerge from svn+ssh://bugman@xxxxxxxxxxx/svn/relax/1.3 ........ r11334 | bugman | 2010-07-22 11:09:04 +0200 (Thu, 22 Jul 2010) | 6 lines Bug fix for the func_pseudo_ellipse() target function. The overwriting of the permanent storage data structures was killing the optimisation of the average domain position. Now temporary data structures are used for the functions which return numpy arrays. ........ r11335 | bugman | 2010-07-22 11:12:22 +0200 (Thu, 22 Jul 2010) | 5 lines The same bug fix of r11334 has now been applied to the func_rigid() and func_iso_cone() target fns. The temporary data structures are no longer clobbering the permanent storage structures. ........ r11336 | bugman | 2010-07-22 11:38:26 +0200 (Thu, 22 Jul 2010) | 3 lines Modified the test_compile_2nd_matrix_pseudo_ellipse() unit test to match the new fn syntax. ........ r11337 | bugman | 2010-07-22 15:57:03 +0200 (Thu, 22 Jul 2010) | 3 lines Silenced the scipy.integrate.quad() warnings by setting the full_output arg to 1. ........ r11338 | bugman | 2010-07-22 18:26:42 +0200 (Thu, 22 Jul 2010) | 3 lines Limit arrays are now sent into the minfx generic interface for limiting simulated annealing. ........ r11340 | bugman | 2010-07-23 10:56:51 +0200 (Fri, 23 Jul 2010) | 3 lines Hardcoded the factorial() function using a dictionary to return support for Python 2.4 and 2.5. ........ r11341 | bugman | 2010-07-23 11:20:58 +0200 (Fri, 23 Jul 2010) | 3 lines Converted the dictionary to a list in factorial() for speed. ........ r11366 | bugman | 2010-07-27 10:14:12 +0200 (Tue, 27 Jul 2010) | 3 lines The select.read() and deselect.read() user functions can now accept file handles or dummy file objects. ........ r11367 | bugman | 2010-07-27 14:00:43 +0200 (Tue, 27 Jul 2010) | 3 lines When loading save states, data pipe names are always converted to a string to avoid unicode problems. ........ r11368 | bugman | 2010-07-27 15:13:12 +0200 (Tue, 27 Jul 2010) | 6 lines The loading of RDCs and PCSs for non-existent spins now only throws a RelaxWarning. Rather than throwing a RelaxError, this allows for partial loading of alignment data for certain regions of the molecule. ........ r11381 | bugman | 2010-07-28 11:13:46 +0200 (Wed, 28 Jul 2010) | 6 lines Removed the docstring length check from the code validator script and changed a printout. The docstring length is only 100 characters in the user functions. For all other functions, no length is enforced. ........ r11382 | bugman | 2010-07-28 11:38:32 +0200 (Wed, 28 Jul 2010) | 3 lines The attached proton PDB name is no longer hardcoded to 'H' in the dauvergne_protocol auto analysis. ........ r11383 | bugman | 2010-07-29 14:18:18 +0200 (Thu, 29 Jul 2010) | 3 lines The back-calculated alignments tensors are now being stored in the current data pipe. ........ r11384 | bugman | 2010-07-29 16:11:51 +0200 (Thu, 29 Jul 2010) | 3 lines The align_tensor.display() user function now prints out the generalized degree of order (GDO) value. ........ r11385 | bugman | 2010-07-29 17:58:54 +0200 (Thu, 29 Jul 2010) | 3 lines pipe.display() now places quotation marks around the pipe names and shows which is the current data pipe. ........ r11388 | bugman | 2010-08-03 11:22:53 +0200 (Tue, 03 Aug 2010) | 3 lines Created the torsionless pseudo-ellipse cone model, where the torsion angle simga is zero. ........ r11389 | bugman | 2010-08-03 14:44:56 +0200 (Tue, 03 Aug 2010) | 5 lines Created the pseudo-ellipse, free rotor target function. This model is not yet available. ........ r11390 | bugman | 2010-08-03 15:16:23 +0200 (Tue, 03 Aug 2010) | 3 lines Added the missing hyphen to 'pseudo ellipse' in the docstrings. ........ r11391 | bugman | 2010-08-03 15:17:54 +0200 (Tue, 03 Aug 2010) | 3 lines Added target function aliases for all 12 parameteric restriction models of the pseudo-ellipse. ........ r11392 | bugman | 2010-08-03 16:22:39 +0200 (Tue, 03 Aug 2010) | 3 lines The frame_order.select_model() user fn docstring now describes all 12 parametric restriction models. ........ r11393 | bugman | 2010-08-03 22:18:07 +0200 (Tue, 03 Aug 2010) | 6 lines Partial support for the 12 parametric restriction models of the pseudo-ellipse. All of the specific frame order code can now support these models. The maths_fns code is still missing, so not all models are available. ........ r11394 | bugman | 2010-08-03 22:37:46 +0200 (Tue, 03 Aug 2010) | 5 lines Shifted all of the shared code in the frame order target functions to reduce_and_rot(). This significantly simplifies the code base and removes a large source of bugs. ........ r11395 | bugman | 2010-08-03 22:48:06 +0200 (Tue, 03 Aug 2010) | 5 lines Abstracted the common code in compile_2nd_matrix_*() into rotate_daeg(). This will significantly simplify the addition of all of the 12 models. ........ r11396 | bugman | 2010-08-03 23:02:21 +0200 (Tue, 03 Aug 2010) | 6 lines Simplified compile_2nd_matrix_iso_cone() by using rotate_daeg(). The compile_2nd_matrix_*() functions now build the rotation matrix themselves as this is not shared code. ........ r11397 | bugman | 2010-08-03 23:09:43 +0200 (Tue, 03 Aug 2010) | 3 lines Fix for the reduce_and_rot() method, the self arg was missing. ........ r11398 | bugman | 2010-08-04 09:42:29 +0200 (Wed, 04 Aug 2010) | 3 lines Ordering of the functions. ........ r11399 | bugman | 2010-08-04 09:56:49 +0200 (Wed, 04 Aug 2010) | 6 lines Simplified and sped up the torsionless pseudo ellipse. 6 functions, and hence 6 numerical integrations, have been deleted as they are repetitive of other frame order matrix elements. ........ r11400 | bugman | 2010-08-04 10:53:17 +0200 (Wed, 04 Aug 2010) | 5 lines Renamed to isotropic cone functions to the free rotor isotropic cone. The model name has changed, as the torsion angle was unrestricted in the earlier code. ........ r11401 | bugman | 2010-08-04 11:26:58 +0200 (Wed, 04 Aug 2010) | 3 lines Added support for the isotropic cone model, that is with a torsion angle restriction of sigma_max. ........ r11402 | bugman | 2010-08-04 14:30:13 +0200 (Wed, 04 Aug 2010) | 5 lines Removal of the reduce_alignment_tensor_reverse() frame order function. This is not being used, and is of no use! ........ r11403 | bugman | 2010-08-04 17:07:27 +0200 (Wed, 04 Aug 2010) | 3 lines Modified reduce_alignment_tensor() to be in the Kronecker product notation. ........ r11404 | bugman | 2010-08-04 17:13:47 +0200 (Wed, 04 Aug 2010) | 3 lines Created the reduce_alignment_tensor_symmetric() function for computation efficiency. ........ r11405 | bugman | 2010-08-04 17:14:34 +0200 (Wed, 04 Aug 2010) | 3 lines The frame order target functions now use reduce_alignment_tensor_symmetric(). ........ r11406 | bugman | 2010-08-04 17:17:01 +0200 (Wed, 04 Aug 2010) | 3 lines Modified rotate_daeg() to operate on the Kronecker product form of the frame order matrix. ........ r11407 | bugman | 2010-08-04 17:33:49 +0200 (Wed, 04 Aug 2010) | 3 lines Shifted populate_2nd_eigenframe_iso_cone_free_rotor() to be in the Kronecker product form. ........ r11408 | bugman | 2010-08-04 18:44:25 +0200 (Wed, 04 Aug 2010) | 5 lines Changed the frame order pseudo-ellipse equations. These should be numerically more stable. ........ r11409 | bugman | 2010-08-04 18:50:24 +0200 (Wed, 04 Aug 2010) | 5 lines Fix for all the part_int_daeg2_pseudo_ellipse_*() functions. The variable f should be phi! ........ r11410 | bugman | 2010-08-04 18:53:40 +0200 (Wed, 04 Aug 2010) | 5 lines Commented out unused frame order matrix elements in compile_2nd_matrix_pseudo_ellipse(). These elements are not part of the rotational superoperator. ........ r11411 | bugman | 2010-08-04 19:04:53 +0200 (Wed, 04 Aug 2010) | 6 lines Reverted r11410 as the change did not take into account the rotation of the frame order matrix. The command used was: svn merge -r11410:11409 . ........ r11412 | bugman | 2010-08-04 19:08:38 +0200 (Wed, 04 Aug 2010) | 6 lines Reverted r11405 as the eigenframe rotation of the frame order matrix breaks the symmetry. The command used was: svn merge -r11405:11404 . ........ r11413 | bugman | 2010-08-04 19:17:44 +0200 (Wed, 04 Aug 2010) | 3 lines Bug fix for reduce_alignment_tensor(), some subtractions should have been additions! ........ r11414 | bugman | 2010-08-04 22:42:48 +0200 (Wed, 04 Aug 2010) | 5 lines Fixes for the torsionless frame order matrix equations. The previous equations were plain wrong! ........ r11415 | bugman | 2010-08-04 22:47:56 +0200 (Wed, 04 Aug 2010) | 5 lines Fix for the func_pseudo_ellipse_torsionless() frame order target function. A variable was not fully typed out. ........ r11416 | bugman | 2010-08-04 22:49:14 +0200 (Wed, 04 Aug 2010) | 3 lines Fix for the pseudo-ellipse unit test as the matrix is now in Kronecker product form. ........ r11417 | bugman | 2010-08-04 22:49:52 +0200 (Wed, 04 Aug 2010) | 5 lines Another fix for func_pseudo_ellipse_torsionless(). The average position Euler angles were not correctly named. ........ r11418 | bugman | 2010-08-05 11:12:07 +0200 (Thu, 05 Aug 2010) | 3 lines Added 2 system tests for checking the pseudo-ellipse and torsionless pseudo-ellipse target fns. ........ r11419 | bugman | 2010-08-05 12:36:42 +0200 (Thu, 05 Aug 2010) | 5 lines Fixes for the free rotor pseudo-elliptic frame order matrix equations. The previous equations were plain wrong! ........ r11420 | bugman | 2010-08-05 12:50:23 +0200 (Thu, 05 Aug 2010) | 3 lines Fix for compile_2nd_matrix_pseudo_ellipse(), the pseudo-ellipse has slight asymmetry in daeg. ........ r11421 | bugman | 2010-08-05 13:04:57 +0200 (Thu, 05 Aug 2010) | 6 lines Simplification of compile_2nd_matrix_pseudo_ellipse() by removal of identical numerical integrations. A number of the frame order matrix diagonal elements are equal to each other, so the repetitive calculations were removed for speed. ........ r11422 | bugman | 2010-08-05 13:10:23 +0200 (Thu, 05 Aug 2010) | 5 lines Fix for the pseudo-ellipse frame order system test. The chi2 is different with the corrected equations. ........ r11423 | bugman | 2010-08-05 15:04:08 +0200 (Thu, 05 Aug 2010) | 5 lines Bug fix for compile_2nd_matrix_pseudo_ellipse_free_rotor() - element 04 was incorrectly set. It was set to 11 rather than 00. ........ r11424 | bugman | 2010-08-06 10:42:19 +0200 (Fri, 06 Aug 2010) | 3 lines Bug fixes for populate_2nd_eigenframe_iso_cone() as the frame order equations were incorrect. ........ r11425 | bugman | 2010-08-06 11:08:01 +0200 (Fri, 06 Aug 2010) | 3 lines Fixed a typo in populate_2nd_eigenframe_iso_cone(). ........ r11426 | bugman | 2010-08-06 11:09:09 +0200 (Fri, 06 Aug 2010) | 3 lines Fixed another typo in populate_2nd_eigenframe_iso_cone(). ........ r11427 | bugman | 2010-08-06 11:29:23 +0200 (Fri, 06 Aug 2010) | 5 lines Created a new module for performing coordinate transformations. The new function cartesian_to_spherical() has been added as the first conversion. ........ r11428 | bugman | 2010-08-06 13:47:54 +0200 (Fri, 06 Aug 2010) | 3 lines Switched the theta and phi angles in cartesian_to_spherical() to match the rest of relax. ........ r11429 | bugman | 2010-08-06 14:00:26 +0200 (Fri, 06 Aug 2010) | 5 lines Shifted frame_order_matrix_ops.generate_vector() to coord_transform.spherical_to_cartesian(). The function input has been modified to accept a spherical coordinate vector. ........ r11430 | bugman | 2010-08-06 14:03:28 +0200 (Fri, 06 Aug 2010) | 3 lines The frame order specific module now uses spherical_to_cartesian(). ........ r11431 | bugman | 2010-08-06 15:12:56 +0200 (Fri, 06 Aug 2010) | 5 lines The isotropic cone frame order model now uses the full eigenframe. This is necessary to define the torsion angle restriction. ........ r11432 | bugman | 2010-08-06 15:26:13 +0200 (Fri, 06 Aug 2010) | 5 lines Bug fix for the frame order _update_model() method for the isotropic cone. The cone angle parameter cone_theta was incorrectly referenced. ........ r11433 | bugman | 2010-08-06 15:29:00 +0200 (Fri, 06 Aug 2010) | 3 lines The isotropic cone parameter cone_theta is now being unpacked and stored after optimisation. ........ r11434 | bugman | 2010-08-07 21:31:05 +0200 (Sat, 07 Aug 2010) | 3 lines Created maths_fns.order_parameters.iso_cone_theta_to_S() function for angle to order param conversion. ........ r11435 | bugman | 2010-08-08 17:14:48 +0200 (Sun, 08 Aug 2010) | 5 lines Fixed a bug in populate_2nd_eigenframe_iso_cone(). One of the many trig functions were incorrectly typed out. ........ r11436 | bugman | 2010-08-08 17:21:18 +0200 (Sun, 08 Aug 2010) | 5 lines Fixed another 2 trig typo bugs in populate_2nd_eigenframe_iso_cone(). These are the same issue, sin(2.0*tmax)**2 should have been sin(tmax)**2. ........ r11437 | bugman | 2010-08-09 10:00:36 +0200 (Mon, 09 Aug 2010) | 3 lines Added the maths_fns.coord_transform module to the package __all__ list. ........ r11438 | bugman | 2010-08-09 10:28:53 +0200 (Mon, 09 Aug 2010) | 3 lines Wrote 4 unit tests for the compile_2nd_matrix_iso_cone*() frame order functions. ........ r11439 | bugman | 2010-08-09 10:39:16 +0200 (Mon, 09 Aug 2010) | 3 lines Implemented the sinc() function. ........ r11440 | bugman | 2010-08-09 11:52:09 +0200 (Mon, 09 Aug 2010) | 6 lines Added a second unit test for perfect order in compile_2nd_matrix_iso_cone(). This checks values at and close to zero, as the sinc() function is differently defined at this position. ........ r11441 | bugman | 2010-08-09 11:56:38 +0200 (Mon, 09 Aug 2010) | 5 lines Converted the isotropic cone frame order model to use the sinc() function. This removes much round off error and significantly simplifies the equations. ........ r11442 | bugman | 2010-08-09 12:21:07 +0200 (Mon, 09 Aug 2010) | 3 lines Added 4 more unit tests for the compile_2nd_matrix_*() functions, and modified one of the others. ........ r11443 | bugman | 2010-08-09 13:59:55 +0200 (Mon, 09 Aug 2010) | 3 lines Shifted to using numpy.sinc() for the frame order equations. ........ r11444 | bugman | 2010-08-09 14:02:15 +0200 (Mon, 09 Aug 2010) | 14 lines Reverted r11439 as the sinc function is implemented in numpy. The command used was: svn merge -r11439:11438 . ..... r11439 | bugman | 2010-08-09 10:39:16 +0200 (Mon, 09 Aug 2010) | 3 lines Changed paths: M /1.3/maths_fns/pseudo_ellipse.py Implemented the sinc() function. ..... ........ r11445 | bugman | 2010-08-09 14:09:47 +0200 (Mon, 09 Aug 2010) | 5 lines Properly implemented order_parameters.iso_cone_S_to_theta(). The previous order_parameters.iso_cone_S_to_cos_theta() function did nothing. ........ r11446 | bugman | 2010-08-09 14:10:16 +0200 (Mon, 09 Aug 2010) | 3 lines populate_2nd_eigenframe_iso_cone_free_rotor() now uses the iso_cone_S_to_theta() function. ........ r11447 | bugman | 2010-08-09 14:17:43 +0200 (Mon, 09 Aug 2010) | 3 lines Clean up of the frame order unit tests. ........ r11448 | bugman | 2010-08-09 14:28:45 +0200 (Mon, 09 Aug 2010) | 3 lines Added 4 frame order unit tests checking the half cone frame order matrix. ........ r11449 | bugman | 2010-08-09 14:29:14 +0200 (Mon, 09 Aug 2010) | 3 lines Reactivated test_compile_2nd_matrix_pseudo_ellipse(). ........ r11450 | bugman | 2010-08-09 14:29:45 +0200 (Mon, 09 Aug 2010) | 3 lines Removed an unused data structure. ........ r11451 | bugman | 2010-08-09 14:35:14 +0200 (Mon, 09 Aug 2010) | 3 lines Added a eigenframe rotation to test_compile_2nd_matrix_pseudo_ellipse_free_rotor_half_cone(). ........ r11452 | bugman | 2010-08-09 14:43:51 +0200 (Mon, 09 Aug 2010) | 3 lines Added 4 frame order unit tests for half cones rotated 90 deg about y. ........ r11453 | bugman | 2010-08-09 14:59:43 +0200 (Mon, 09 Aug 2010) | 3 lines Deactivated 2 frame order unit tests as these cannot be satisfied with numerical integration. ........ r11454 | bugman | 2010-08-09 15:58:25 +0200 (Mon, 09 Aug 2010) | 3 lines Added 2 more unit tests of compile_2nd_matrix_pseudo_ellipse(). ........ r11455 | bugman | 2010-08-10 10:28:52 +0200 (Tue, 10 Aug 2010) | 3 lines Added 2 unit tests for the free rotor pseudo-ellipse frame order model. ........ r11456 | bugman | 2010-08-10 10:33:21 +0200 (Tue, 10 Aug 2010) | 3 lines Created a unit test for the collapse of the isotropic cone to the free rotor iso cone. ........ r11457 | bugman | 2010-08-10 10:37:00 +0200 (Tue, 10 Aug 2010) | 5 lines Bug fix for the iso cone frame order model fn populate_2nd_eigenframe_iso_cone(). A few signs were wrong in the {0,4} and {4,0} element. ........ r11458 | bugman | 2010-08-10 11:15:47 +0200 (Tue, 10 Aug 2010) | 3 lines Added 9 unit tests for the parametric restriction collapse of all frame order model compile_2nd_matrix*() fns. ........ r11459 | bugman | 2010-08-10 11:57:02 +0200 (Tue, 10 Aug 2010) | 5 lines Simplified populate_2nd_eigenframe_iso_cone() even further. This should bring some numerical stability. ........ r11460 | bugman | 2010-08-10 13:59:48 +0200 (Tue, 10 Aug 2010) | 3 lines Fix for the test_compile_2nd_matrix_pseudo_ellipse_restriction_test3() frame order unit test. ........ r11461 | bugman | 2010-08-11 00:27:59 +0200 (Wed, 11 Aug 2010) | 5 lines Large simplifications to the equations of the pseudo-ellipse frame order model. This significantly increases the numerical stability and allows parameters to be close to zero. ........ r11462 | bugman | 2010-08-11 00:48:26 +0200 (Wed, 11 Aug 2010) | 3 lines The tmax_pseudo_ellipse() fn now handles the zero points correctly. ........ r11463 | bugman | 2010-08-11 00:59:36 +0200 (Wed, 11 Aug 2010) | 3 lines Reactivated the test_compile_2nd_matrix_pseudo_ellipse_order() frame order unit test. ........ r11464 | bugman | 2010-08-11 01:07:12 +0200 (Wed, 11 Aug 2010) | 3 lines Modified the pseudo-ellipse frame order matrix point unit tests. ........ r11465 | bugman | 2010-08-11 11:36:40 +0200 (Wed, 11 Aug 2010) | 3 lines daeg_to_rotational_superoperator() now operates on the Kronecker product form. ........ r11466 | bugman | 2010-08-11 12:01:10 +0200 (Wed, 11 Aug 2010) | 3 lines Added 3 unit tests for reduce_alignment_tensor(). ........ r11467 | bugman | 2010-08-11 12:31:29 +0200 (Wed, 11 Aug 2010) | 3 lines Another numerical simplification to tmax_pseudo_ellipse(). ........ r11468 | bugman | 2010-08-11 14:31:11 +0200 (Wed, 11 Aug 2010) | 5 lines Big bug fix for the reduce_alignment_tensor() function - the frame order matrix was transposed!!! The indices were back to front, so the non-symmetric frame order models were failing. ........ r11469 | bugman | 2010-08-11 16:30:13 +0200 (Wed, 11 Aug 2010) | 11 lines Added system tests for 5 of the frame order models. These use synthetic alignment data (tensors) to test the model via the calc() user function. The tests models include: iso cone, free rotor iso cone, free rotor (in the eigenframe) iso cone pseudo-ellipse, free rotor (out of frame and in the eigenframe) pseudo-ellipse. ........ [... 463 lines stripped ...]