Merged revisions 26096-26127 via svnmerge from
svn+ssh://bugman@.../svn/relax/trunk
........
r26096 | bugman | 2014-09-30 15:32:36 +0200 (Tue, 30 Sep 2014) | 6 lines
Created the Structure.test_mean system test.
This is to test the functionality of a planned new feature, the structure.mean user function. This
is an analysis aid that will calculate the mean structure from all loaded models.
........
r26097 | bugman | 2014-09-30 15:50:08 +0200 (Tue, 30 Sep 2014) | 5 lines
Implemented the structure.mean user function frontend.
The backend is currently just a stub function.
........
r26098 | bugman | 2014-09-30 16:56:28 +0200 (Tue, 30 Sep 2014) | 5 lines
Fixes and simplifications for the pipe_control.pipes.check_pipe() checking object.
One of the RelaxError classes were not initialised and the docstring was incorrect.
........
r26099 | bugman | 2014-09-30 17:26:24 +0200 (Tue, 30 Sep 2014) | 6 lines
Created the pipe_control.structure.main.check_structure() checking object.
This will be used for providing much more detailed feedback for when structural information is
missing.
........
r26100 | bugman | 2014-09-30 17:31:30 +0200 (Tue, 30 Sep 2014) | 5 lines
Converted all of the pipe_control.strucuture.main functions to use the check_structure() object.
This standardises and improves all of the checks.
........
r26101 | bugman | 2014-09-30 17:32:11 +0200 (Tue, 30 Sep 2014) | 3 lines
Import fix for r26099.
........
r26102 | bugman | 2014-09-30 18:07:02 +0200 (Tue, 30 Sep 2014) | 3 lines
Some fixes and additional checks for the Structure.test_mean system test.
........
r26103 | bugman | 2014-09-30 18:08:57 +0200 (Tue, 30 Sep 2014) | 7 lines
Implemented the backend of the structure.mean user function.
This primarily occurs within the internal structural object in the new mean() method. The
pipe_control.structure.main.mean() function simply checks if the current data pipe is correctly set
up and then calls the structural object mean() method.
........
r26104 | bugman | 2014-10-01 19:44:08 +0200 (Wed, 01 Oct 2014) | 5 lines
Created the Structure.test_align system test.
This will be used to test the yet to be implemented structure.align user function. This user
function will be similar to the structure.superimpose user function but will be designed so that
structures with different primary and atomic sequences can be superimposed.
........
r26105 | bugman | 2014-10-01 19:44:10 +0200 (Wed, 01 Oct 2014) | 4 lines
Created the frontend of the structure.align user function.
This is almost the same as that of the structure.superimpose user function except that the pipes
argument has been added and the titles and description changed to indicate the differences.
........
r26106 | bugman | 2014-10-01 19:44:12 +0200 (Wed, 01 Oct 2014) | 4 lines
Registered the new user function argument type 'int_list_of_lists' in the prompt UI.
This is to allow for lists of lists of integers, as used for the model argument in the new
structure.align user function.
........
r26107 | bugman | 2014-10-01 19:44:13 +0200 (Wed, 01 Oct 2014) | 4 lines
Modified the lib.arg_check.is_int_list() function to accept the list_of_lists Boolean argument.
This updates the function to have the same functionality as is_str_list(), allows for lists of lists
of int to be checked.
........
r26108 | bugman | 2014-10-01 19:44:15 +0200 (Wed, 01 Oct 2014) | 1 line
Whitespace fixes for the lib.arg_check module.
........
r26109 | bugman | 2014-10-01 19:44:16 +0200 (Wed, 01 Oct 2014) | 1 line
Fix for the pipes argument for the structure.align user function in the GUI.
........
r26110 | bugman | 2014-10-01 19:44:20 +0200 (Wed, 01 Oct 2014) | 4 lines
Extended the Structure.test_align system test to throughly check the structural data.
This includes changing the structure.align user function call to use 'fit to first' and carefully
checking the new atomic coordinates.
........
r26111 | bugman | 2014-10-01 19:44:22 +0200 (Wed, 01 Oct 2014) | 4 lines
Modified the Structure.test_align system test so that translations and rotations match the algorithm.
This allows the output of the structure.align user function to be checked to see if the rotation
matrix and translation vector found match that used to shift the original structures.
........
r26112 | bugman | 2014-10-01 19:44:24 +0200 (Wed, 01 Oct 2014) | 4 lines
Implemented the structure.align user function backend.
This is similar to the structure.superimpose user function, however the coordinate data structure
only contains atoms which are in common to all structures.
........
r26113 | bugman | 2014-10-01 19:44:25 +0200 (Wed, 01 Oct 2014) | 4 lines
The pipe_control.structure.main functions translate() and rotate() now accept the pipe_name argument.
This is used to translate and rotate structures in different data pipes, as required by the
structure.align user function.
........
r26114 | bugman | 2014-10-01 19:44:27 +0200 (Wed, 01 Oct 2014) | 4 lines
The pipe_control.structure.main.check_structure() checking object now accepts the pipe_name argument.
This allows structural data to be checked for in different data pipes without having to switch to
them.
........
r26115 | bugman | 2014-10-01 19:44:29 +0200 (Wed, 01 Oct 2014) | 1 line
Small whitespace fix.
........
r26116 | bugman | 2014-10-01 19:44:30 +0200 (Wed, 01 Oct 2014) | 4 lines
Modified the Structure.test_align system test to call the structure.write_pdb user function.
This sets the file name to sys.stdout so that the original structure and the final aligned
structures are output to STDOUT for debugging purposes.
........
r26117 | bugman | 2014-10-01 19:44:32 +0200 (Wed, 01 Oct 2014) | 4 lines
Bug fix for the structure.delete user function.
When individual atoms are deleted, the bonded atom data structure is no correctly updated to remove
the now non-existent atom.
........
r26118 | bugman | 2014-10-01 19:44:34 +0200 (Wed, 01 Oct 2014) | 3 lines
Created the Structure.test_delete_atom system test.
This is used to test the deletion of a single atom using the structure.delete user function.
........
r26119 | bugman | 2014-10-01 19:44:35 +0200 (Wed, 01 Oct 2014) | 4 lines
Expanded the Structure.test_delete_atom system test.
This is to show that the structure.write_pdb user function fails after a call to the
structure.delete user function to delete individual atoms.
........
r26120 | bugman | 2014-10-01 19:44:37 +0200 (Wed, 01 Oct 2014) | 4 lines
Another bug fix for the structure.delete user function when deleting individual atoms.
The bonded atom data structure consisting of indices requires all indices after the deleted atom to
be decremented by 1.
........
r26121 | bugman | 2014-10-01 19:44:39 +0200 (Wed, 01 Oct 2014) | 4 lines
Bug fix for the CONECT records created by the structure.write_pdb user function.
The atom numbers inside the structural object were being used for the CONECT records rather than the
atom numbers used within the PDB file.
........
r26122 | bugman | 2014-10-01 19:44:41 +0200 (Wed, 01 Oct 2014) | 4 lines
Fix for the new structure.align user function.
The translation and rotation of the structures at the end to the aligned positions was being
incorrectly performed.
........
r26123 | bugman | 2014-10-01 19:44:43 +0200 (Wed, 01 Oct 2014) | 4 lines
Loosened some checks in the Structure.test_align system test to allow it to pass.
Some self.assertEqual() checks for the atomic coordinates have been replaced by
self.assertAlmostEqual() to allow for small machine precision differences.
........
r26124 | bugman | 2014-10-01 19:44:45 +0200 (Wed, 01 Oct 2014) | 3 lines
Modified the lib.arg_check.is_str_or_inst() to handle cStringIO objects.
This allows sys.stdout to be used as a file object in the relax test suite.
........
r26125 | bugman | 2014-10-01 19:50:20 +0200 (Wed, 01 Oct 2014) | 3 lines
Removed a debugging printout fatal for Python3.
........
r26126 | bugman | 2014-10-01 19:55:36 +0200 (Wed, 01 Oct 2014) | 3 lines
Removal of another temporary debugging printout.
........
r26127 | bugman | 2014-10-01 19:56:54 +0200 (Wed, 01 Oct 2014) | 6 lines
Modified the lib.arg_check.is_str_or_inst() function to work with Python 3.
Instead of checking for cStringIO.OutputType, which does not exist in Python 3, the argument is
simply checked to see if it has a write() method.
........