svn+ssh://bugman@.../svn/relax/branches/frame_order_cleanup
........
r25901 | bugman | 2014-09-18 17:53:33 +0200 (Thu, 18 Sep 2014) | 5 lines
Fix for the frame order system test optimisation printouts.
The cdp.num_int_pts variable is now called cdp.sobol_max_points.
........
r25905 | bugman | 2014-09-19 09:07:19 +0200 (Fri, 19 Sep 2014) | 6 lines
The starting time of the axis permutation model optimisations is now output.
This is in the frame order auto-analysis. This call to the time user function occurred for the
normal models, so extending it to the permuted axes models makes the output more consistent.
........
r25909 | bugman | 2014-09-19 09:56:34 +0200 (Fri, 19 Sep 2014) | 6 lines
Simplified the atomic position averaging warning in the frame order analysis.
Instead of throwing a warning for each spin, one warning for all spins is now given. This should
make the output a lot less verbose.
........
r25918 | bugman | 2014-09-19 11:55:07 +0200 (Fri, 19 Sep 2014) | 5 lines
The frame order minimise_setup_atomic_pos() function now accepts the verbosity argument.
This is used to silence the warnings in user functions such as frame_order.sobol_setup.
........
r25919 | bugman | 2014-09-19 12:04:28 +0200 (Fri, 19 Sep 2014) | 8 lines
Improvements for the frame order overfit_deselect() API method.
Three changes have been made: The print statements have been converted to RelaxWarnings; the spin
IDs or spin ID pairs are now stored in a list and one RelaxWarning for the missing PCS data and one
for the missing RDC data is now given; and the verbose flag is now used to determine if a
RelaxWarning will be given.
........
r25920 | bugman | 2014-09-19 12:06:32 +0200 (Fri, 19 Sep 2014) | 3 lines
Fix for the previous commit - a bracket was missing preventing relax from starting.
........
r25921 | bugman | 2014-09-19 12:08:36 +0200 (Fri, 19 Sep 2014) | 3 lines
Change to the position averaging warning in the minimise_setup_atomic_pos() frame order function.
........
r25922 | bugman | 2014-09-19 12:18:57 +0200 (Fri, 19 Sep 2014) | 6 lines
Improvements for the printout from the update_model() frame order function.
A list of updated parameters is now created and everything is printed on a single line at the end.
The printout is therefore much more compact.
........
r25926 | bugman | 2014-09-19 18:26:26 +0200 (Fri, 19 Sep 2014) | 9 lines
Spun out part of the frame_order.pdb_model user function into the new frame_order.simulate.
The new user function arguments required for properly creating the pseudo-Brownian dynamics
simulation would have made the frame_order.pdb_model user function too complicated. Therefore this
part has been spun out into the new frame_order.simulate user function. The frame_order.simulate
frontend fully describes the algorithm that will be used to simulate the dynamic content of the PCS
and RDC data, and warns that not all modes of motion are visible and present.
........
r25929 | bugman | 2014-09-19 18:33:01 +0200 (Fri, 19 Sep 2014) | 6 lines
Updated the frame order auto-analysis to call the new frame_order.simulate user function.
Although not implemented yet, this allows the user function to create the simulation PDB file in the
future.
........
r25930 | bugman | 2014-09-19 18:41:29 +0200 (Fri, 19 Sep 2014) | 3 lines
Small fix for the new frame_order.simulate user function backend.
........
r25931 | bugman | 2014-09-19 18:43:15 +0200 (Fri, 19 Sep 2014) | 6 lines
Updated the base script for the Frame_order.test_cam_* system tests.
The frame_order.simulate user function is now called directly after the frame_order.pdb_model user
function.
........
r25948 | bugman | 2014-09-22 11:52:24 +0200 (Mon, 22 Sep 2014) | 17 lines
Created the backend framework for the frame_order.simulate user function.
The backend specific_analyses.frame_order.uf.simulate() function performs all data checks required,
prepares the output file object, assembles the frame order parameter values and pivot point, and
creates a copy of the structural object object with the ensemble collapsed into a single model.
All this data is then passed into the new lib.frame_order.simulation.brownian() function. This
initialises all required data structures and the structural object. The main loop of the simulation
is also implemented, taking snapshots at every fixed number of steps and terminating the loop once
the total number of snapshots are reached. The snapshot consists of copying the original unrotated
structural model and rotating it into the new position. The rotation is currently the identity
matrix.
The old specific_analyses.frame_order.geometric.create_distribution() stub function has been
deleted.
........
r25949 | bugman | 2014-09-22 12:04:58 +0200 (Mon, 22 Sep 2014) | 5 lines
Decreased the time required for the Frame_order.test_cam_* system tests.
The frame_order.simulate user function now only creates a total of 20 snapshots rather than 1000.
........
r25950 | bugman | 2014-09-22 12:19:36 +0200 (Mon, 22 Sep 2014) | 7 lines
Added new arguments to the frame order auto-analysis for the frame_order.simulate user function.
These are the brownian_step_size, brownian_snapshot and brownian_total arguments which are passed
directly into the frame_order.simulate user function. This gives the user more control, as well as
allowing the test suite to speed up this part of the analysis.
........
r25951 | bugman | 2014-09-22 12:21:31 +0200 (Mon, 22 Sep 2014) | 6 lines
Huge speed up for the Frame_order.test_auto_analysis user function.
The pseudo-Brownian dynamics simulation via the frame_order.simulate user function has been
massively speed up to allow the test to be almost as fast as before.
........
r25952 | bugman | 2014-09-22 12:26:32 +0200 (Mon, 22 Sep 2014) | 7 lines
Spun out the code for shifting to the average frame order position into a new function.
The old code of the create_ave_pos() of the specific_analyses.frame_order.geometric module has been
shifted into the new average_position() function. This will allow the code to be reused by other
parts of relax to obtain the average frame order structures.
........
r25953 | bugman | 2014-09-22 12:28:49 +0200 (Mon, 22 Sep 2014) | 6 lines
Implemented the shifting to the average position for the frame_order.simulate user function backend.
This simply sends the structural object into the new average_position() function of the
specific_analyses.frame_order.geometric module.
........
r25954 | bugman | 2014-09-22 13:50:37 +0200 (Mon, 22 Sep 2014) | 6 lines
Improvements for the frame_order.simulate user function.
The rigid model is now skipped, the PDB file closed, and some printouts for better user feedback
have been added.
........
r25955 | bugman | 2014-09-22 13:52:54 +0200 (Mon, 22 Sep 2014) | 6 lines
Changed the default PDB file name for the frame_order.simulate user function to 'simulate.pdb'.
The '*.bz2' extension has been dropped so that the file is quicker to create and does not need to be
decompressed for loading into molecular viewers.
........
r25956 | bugman | 2014-09-22 15:08:06 +0200 (Mon, 22 Sep 2014) | 7 lines
Created the specific_analyses.frame_order.geometric.generate_axis_system() function.
This is now used by most parts of the frame order analysis to generate the full 3D eigenframe of the
motions. Previously this was implemented each time the frame or major axis was required. This
replicated and highly inconsistent code has been eliminated.
........
r25960 | bugman | 2014-09-22 17:00:37 +0200 (Mon, 22 Sep 2014) | 6 lines
Fix for the new specific_analyses.frame_order.geometric.generate_axis_system() function.
The rotor and free rotor models were not correctly handled and the returned eigenframe was the zero
matrix.
........
r25961 | bugman | 2014-09-23 09:26:08 +0200 (Tue, 23 Sep 2014) | 11 lines
Implemented the pseudo-Brownian frame order dynamics simulation for the single motion models.
This uses the same logic as in the test_suite/shared_data/frame_order/cam/*/generate_distribution.py
scripts which were used to generate all of the test suite data. However rather than using a random
rotation matrix, a random 3D vector is used to rotate a fixed angle. And the rotation is used to
rotate the current state to state i+1. The rotation for the state is decomposed into torsion-tilt
angles once shifted into the motional eigenframe, the violations checked for as the state shifted to
the boundary, then the new state reconstructed from the corrected torsion-tilt angles, and then it
is shifted from the motional eigenframe to the PDB frame.
........