Author: bugman
Date: Tue Dec 16 09:26:34 2014
New Revision: 27117
URL: http://svn.gna.org/viewcvs/relax?rev=27117&view=rev
Log:
Merged revisions 27044,27052-27116 via svnmerge from
svn+ssh://[email protected]/svn/relax/trunk
........
r27044 | bugman | 2014-12-09 14:59:51 +0100 (Tue, 09 Dec 2014) | 12 lines
Improvements for all of the tables of the relaxation dispersion chapter of
the manual.
The captions are now the full width (or height for rotated tables) of the
page in the PDF version of
the manual. The \latex{} command from the latex2html package has been used
to improve the HTML
versions of the tables by deactivating the landscape environment, the
cmidrule command, and the
caption width commands. This results in properly HTML formatted tables,
rather than creating a PNG
image for the whole table. These should significantly improve the tables in
the webpages
http://www.nmr-relax.com/manual/Comparison_of_dispersion_analysis_software.html,
http://www.nmr-relax.com/manual/The_relaxation_dispersion_auto_analysis.html,
and
http://www.nmr-relax.com/manual/Dispersion_model_summary.html.
........
r27052 | bugman | 2014-12-10 13:58:30 +0100 (Wed, 10 Dec 2014) | 7 lines
Created the Structure.test_align_molecules system test.
This will be used to extend the functionality of the structure.align user
function to be able to
align different molecules in the same data pipe, rather than requiring either
models or identically
named structures in different data pipes.
........
r27053 | bugman | 2014-12-10 14:05:33 +0100 (Wed, 10 Dec 2014) | 6 lines
Modified the Structure.test_align_molecules system test.
This now simultaneously checks both the pipes and molecules arguments to the
structure.align user
function.
........
r27054 | bugman | 2014-12-10 14:11:11 +0100 (Wed, 10 Dec 2014) | 3 lines
More changes for the new Structure.test_align_molecules system test.
........
r27055 | bugman | 2014-12-10 14:12:18 +0100 (Wed, 10 Dec 2014) | 3 lines
Some more fixes for the Structure.test_align_molecules system test.
........
r27056 | bugman | 2014-12-10 15:53:34 +0100 (Wed, 10 Dec 2014) | 7 lines
Change to the Structure.test_align system test.
The molecules argument for the structure.align user function has been changed
to match the models
argument, in that it now needs to be a list of lists with the first dimension
matching the pipes
argument. This change is to help with the implementation of the new
structure.align functionality.
........
r27057 | bugman | 2014-12-10 15:56:46 +0100 (Wed, 10 Dec 2014) | 9 lines
Implemented the new molecules argument for the structure.align user function.
In addition to accepting the new argument, the user function backend has been
redesigned for
flexibility. The assembly of coordinates and final rotations and
translations now consist of three
loops over desired data pipes, all models, and all molecules. If the models
or molecules arguments
are supplied, then the models or molecules in the loop which do not match are
skipped. This logic
simplifies and cleans up the backend.
........
r27058 | bugman | 2014-12-10 16:37:18 +0100 (Wed, 10 Dec 2014) | 6 lines
Created the Structure.test_rmsd_molecules system test.
This will be used to implement a new molecules argument for the
structure.rmsd user function so that
the RMSD between different molecules rather than different models can be
calculated.
........
r27059 | bugman | 2014-12-10 17:03:24 +0100 (Wed, 10 Dec 2014) | 6 lines
Implemented the new molecules argument for the structure.rmsd user function.
This allows the RMSD between different molecules rather than different models
to be calculated,
extending the functionality of this user function.
........
r27060 | bugman | 2014-12-10 17:07:08 +0100 (Wed, 10 Dec 2014) | 3 lines
Removed some temporary printouts from the structure.align user function.
........
r27061 | bugman | 2014-12-10 17:20:19 +0100 (Wed, 10 Dec 2014) | 6 lines
Created the Structure.test_displacement_molecules system test.
This will be used to implement the new molecules argument for the
structure.displacement user
function.
........
r27062 | bugman | 2014-12-10 17:34:55 +0100 (Wed, 10 Dec 2014) | 7 lines
Implemented the molecules argument for the structure.displacement user
function.
This allows the displacements (translations and rotations) to be calculated
between different
molecules rather than different models. This information is stored in the
dictionaries of the
cdp.structure.displacement object with the keys set to the molecule list
indices.
........
r27063 | bugman | 2014-12-10 18:53:48 +0100 (Wed, 10 Dec 2014) | 6 lines
Created the Structure.test_find_pivot system test.
This is to check the structure.find_pivot user function as this algorithm is
currently not being
checked in the test suite.
........
r27064 | bugman | 2014-12-10 18:57:14 +0100 (Wed, 10 Dec 2014) | 6 lines
Created the Structure.test_find_pivot_molecules system test.
This will be used to implement support for a molecules argument in the
structure.find_pivot user
function so that different molecules rather than different models can be used
in the analysis.
........
r27065 | bugman | 2014-12-11 08:37:45 +0100 (Thu, 11 Dec 2014) | 3 lines
Increased the precision of pivot optimisation in the
Structure.test_find_pivot_molecules system test.
........
r27066 | bugman | 2014-12-11 08:41:07 +0100 (Thu, 11 Dec 2014) | 6 lines
Implemented the molecules argument for the structure.find_pivot user function.
This allows the motional pivot optimisation between different molecules
rather than different
models.
........
r27067 | bugman | 2014-12-11 08:58:36 +0100 (Thu, 11 Dec 2014) | 8 lines
Shifted the atomic assembly code from the structure.align user function into
its own function.
The new function assemble_coordinates() of the pipe_control.structure.main
module will be used to
standardise the process of assembling atomic coordinates for all of the
structure user functions.
This will improve the support for comparing different molecules rather than
different models as
missing atoms or divergent primary sequence are properly handled, and it has
multi-pipe support.
........
r27068 | bugman | 2014-12-11 09:04:35 +0100 (Thu, 11 Dec 2014) | 5 lines
Changed the argument order for the structure.align user function.
The standardised order will now be pipes, models, molecules, atom_id, etc.
........
r27069 | bugman | 2014-12-11 09:25:06 +0100 (Thu, 11 Dec 2014) | 12 lines
Converted the structure.find_pivot user function to the new
pipes/models/molecules/atom_id design.
This allows the motional pivot algorithm to work on atomic coordinates from
different data pipes,
different structural models, and different molecules. The change allows the
Structure.test_find_pivot_molecules system test to now pass, as missing
atomic data is now correctly
handled. The user function backend uses the new
pipe_control.structure.main.assemble_coordinates()
function.
The Structure.test_find_pivot and Structure.test_find_pivot_molecules system
tests have been updated
for the user function argument changes.
........
r27070 | bugman | 2014-12-11 09:44:53 +0100 (Thu, 11 Dec 2014) | 12 lines
Shift of the atomic coordinate assembly code into the relax library.
Most of the pipe_control.structure.main.assemble_coordinates() function has
been shifted into the
assemble_coord_array() function of the new lib.structure.internal.coordinates
module. The
pipe_control function now only checks the arguments and assembles the
structural objects from the
relax data store, and then calls assemble_coord_array() to do all of the work.
This code abstraction increases the usefulness of the atomic coordinate
assembly and allows it to be
significantly expanded in the future, for example by being able to take
sequence alignments into
consideration.
........
r27071 | bugman | 2014-12-11 09:49:08 +0100 (Thu, 11 Dec 2014) | 3 lines
Tooltip standardisation for the structure.align and structure.find_pivot user
functions.
........
r27072 | bugman | 2014-12-11 10:02:23 +0100 (Thu, 11 Dec 2014) | 3 lines
Comment fix.
........
r27073 | bugman | 2014-12-11 10:20:56 +0100 (Thu, 11 Dec 2014) | 5 lines
The coordinate assembly function now returns list of unique IDs.
This is for each structural object, model and molecule.
........
r27074 | bugman | 2014-12-11 10:33:05 +0100 (Thu, 11 Dec 2014) | 6 lines
Changed the structure ID strings returned by the assemble_coord_array()
function.
This is from the lib.structure.internal.coordinates module. The structural
object name is only
included if more than one structural object has been supplied.
........
r27075 | bugman | 2014-12-11 10:38:43 +0100 (Thu, 11 Dec 2014) | 3 lines
More improvements for the structure ID strings returned by the
assemble_coord_array() function.
........
r27076 | bugman | 2014-12-11 10:43:48 +0100 (Thu, 11 Dec 2014) | 3 lines
More improvements for the structure ID strings returned by the
assemble_coord_array() function.
........
r27077 | bugman | 2014-12-11 10:48:26 +0100 (Thu, 11 Dec 2014) | 6 lines
Converted the internal structural displacement object to use unique IDs
rather than model numbers.
This allows the object to be much more flexible in what types of structures
it can handle. This is
in preparation for a change in the structure.displacement user function.
........
r27078 | bugman | 2014-12-11 10:50:16 +0100 (Thu, 11 Dec 2014) | 9 lines
Converted the structure.displacement user function to the new
pipes/models/molecules/atom_id design.
This allows the displacements to be calculated between atomic coordinates
from different data pipes,
different structural models, and different molecules. The user function
backend has been hugely
simplified as it now uses the new
pipe_control.structure.main.assemble_coordinates() function.
The Structure.test_displacement system test has been updated for the user
function argument changes.
........
r27079 | bugman | 2014-12-11 10:55:24 +0100 (Thu, 11 Dec 2014) | 3 lines
Another refinement for the structure ID strings returned by the
assemble_coord_array() function.
........
r27080 | bugman | 2014-12-11 10:55:53 +0100 (Thu, 11 Dec 2014) | 5 lines
Updated the Structure.test_displacement_molecules system test.
This is for the changes to the structure.displacement user function.
........
r27081 | bugman | 2014-12-11 11:03:54 +0100 (Thu, 11 Dec 2014) | 3 lines
Docstring spelling fixes for the steady-state NOE and relaxation
curve-fitting auto-analyses.
........
r27082 | bugman | 2014-12-11 11:20:03 +0100 (Thu, 11 Dec 2014) | 10 lines
Converted the structure.rmsd user function to the new
pipes/models/molecules/atom_id design.
This allows the RMSD calculation to work on atomic coordinates from different
data pipes, different
structural models, and different molecules. The user function backend uses
the new
pipe_control.structure.main.assemble_coordinates() function.
The Structure.test_rmsd_molecules system test has been updated for the user
function argument
changes.
........
r27083 | bugman | 2014-12-11 11:34:24 +0100 (Thu, 11 Dec 2014) | 5 lines
Created the internal structural object model_list() method.
This is to simplify the assembly of a list of all current models in the
structural object.
........
r27084 | bugman | 2014-12-11 11:37:33 +0100 (Thu, 11 Dec 2014) | 8 lines
Converted the structure.superimpose user function to the new
pipes/models/molecules/atom_id design.
The user function arguments have not changed, however the backend now uses
the new
pipe_control.structure.main.assemble_coordinates() function. This is to
simply decrease the number
of failure points possible in the structure user functions. The change has
no effect on the user
function use or results.
........
r27085 | bugman | 2014-12-11 11:42:40 +0100 (Thu, 11 Dec 2014) | 6 lines
Documentation fix for the assemble_coord_array() function.
The return values for
lib.structure.internal.coordinates.assemble_coord_array() were incorrectly
documented.
........
r27086 | bugman | 2014-12-11 11:46:04 +0100 (Thu, 11 Dec 2014) | 6 lines
Modified the Structure.test_bug_22070_structure_superimpose_after_deletion
system test.
This now calls the structure.align user function after calling the
structure.superimpose user
function to better test a condition that can trigger bugs.
........
r27087 | bugman | 2014-12-11 11:49:26 +0100 (Thu, 11 Dec 2014) | 6 lines
Fixes for the structure.superimpose and structure.align user functions.
The fit_to_mean() and fit_to_first() functions of lib.structure.superimpose
where being incorrectly
called, in that they expect a list of elements and not lists of lists.
........
r27088 | bugman | 2014-12-11 12:25:03 +0100 (Thu, 11 Dec 2014) | 9 lines
Code refactorisation for the structure.align user function backend.
The looping over data pipes, model numbers, and molecule names, skipping
those that don't match the
function arguments, has been shifted into the new structure_loop() generator
function of the
pipe_control.structure.main module. This function assembles the data from
the data store and then
calls the new loop_coord_structures() generator function of the
lib.structure.internal.coordinates
module which does all of the work.
........
r27089 | bugman | 2014-12-11 13:13:19 +0100 (Thu, 11 Dec 2014) | 3 lines
Some docstring expansions for the pipe_control.structure.main module
functions.
........
r27090 | bugman | 2014-12-11 13:40:41 +0100 (Thu, 11 Dec 2014) | 9 lines
Refactored the descriptions of a number of structure user functions.
This includes the structure.align, structure.displacement,
structure.find_pivot, structure.rmsd and
structure.superimpose user functions. The paragraph_multi_struct and
paragraph_atom_id module
strings have been created and are shared as two paragraphs for each of these
user function
descriptions. This standardises the pipe/model/molecule/atom_id
descriptions. The user function
wizard page sizes have been updated for these changes.
........
r27091 | bugman | 2014-12-11 16:00:21 +0100 (Thu, 11 Dec 2014) | 10 lines
Changed the design of the
lib.structure.internal.coordinates.assemble_coord_array() function.
The elements_flag argument has been renamed to seq_info_flag. If this is
set, then in addition to
the atomic elements, the molecule name, residue name, residue number, and
atom name is now assembled
and returned. This information is now the common information between the
structures, hence the
return values for the elements are a list of str rather than list of lists.
All of the code in pipe_control.structure.main has been updated for the
change.
........
r27092 | bugman | 2014-12-11 16:03:42 +0100 (Thu, 11 Dec 2014) | 6 lines
Fix for the structure.align user function if no data pipes are supplied.
The pipes list was no longer being created as it was shifted to the
assemble_coordinates() function,
however it is required for the translation and rotation function calls.
........
r27093 | bugman | 2014-12-11 16:23:46 +0100 (Thu, 11 Dec 2014) | 7 lines
Bug fix for the lib.arg_check.is_int_list() function for checking a list of
lists.
This is used to check user function arguments, but was causing a RelaxError
to be raised for all
integer list of lists user function arguments when a valid value is supplied.
The function has been
updated to match the is_str_list() function which does not suffer from this
bug.
........
r27094 | bugman | 2014-12-11 17:13:55 +0100 (Thu, 11 Dec 2014) | 17 lines
Converted the structure.web_of_motion user function to the new
pipe/model/molecule/atom_id design.
This allows the web of motion representation to work on atomic coordinates
from different data
pipes, different structural models, and different molecules. The user
function backend uses the new
pipe_control.structure.main.assemble_coordinates() function to assemble the
common atom coordinates,
molecule names, residue names, residue numbers, atom names and elements. All
this information is
then used to construct the new web of motion PDB file. Therefore the entire
backend has been
rewritten.
The Structure.test_web_of_motion_12, Structure.test_web_of_motion_13, and
Structure.test_web_of_motion_all system tests have all been updated for the
changed
structure.web_of_motion user function arguments. In addition, the system
tests
Structure.test_web_of_motion_12_molecules,
Structure.test_web_of_motion_13_molecules and
Structure.test_web_of_motion_all_molecules have been created as a copy of the
other tests but with
the 3 structures loaded as different molecules.
........
r27095 | bugman | 2014-12-11 17:27:20 +0100 (Thu, 11 Dec 2014) | 7 lines
Fix for the IDs returned by
lib.structure.internal.coordinates.assemble_coord_array().
The list of unique structure IDs was being incorrectly constructed if
multiple molecules are present
but the molecules argument was not supplied. It would be of a different size
to the coordinate data
structure.
........
r27096 | bugman | 2014-12-11 17:27:46 +0100 (Thu, 11 Dec 2014) | 3 lines
Fix for the Structure.test_displacement system test for the
assemble_coord_array() function bugfix.
........
r27097 | bugman | 2014-12-11 17:28:11 +0100 (Thu, 11 Dec 2014) | 3 lines
Removed a debugging printout.
........
r27098 | bugman | 2014-12-11 18:55:25 +0100 (Thu, 11 Dec 2014) | 6 lines
Modified the Structure.test_align system test to show a failure of the
structure.align user function.
The alignment causes all atoms in the structural object to be translated and
rotated, whereas it
should only operate on the atoms of the atom_id argument.
........
r27099 | bugman | 2014-12-11 19:01:54 +0100 (Thu, 11 Dec 2014) | 7 lines
Modified the Structure.test_superimpose_fit_to_mean system test.
This is also to demonstrate a bug, this time in the structure.superimpose
user function, in which
the algorithm causes a translation and rotation of all atoms rather than just
those selected by the
atom_id argument.
........
r27100 | bugman | 2014-12-11 19:10:37 +0100 (Thu, 11 Dec 2014) | 8 lines
Modified some system tests of the structure.align and structure.superimpose
user functions.
The displace_id argument has been introduced for both of these user functions
for finer control over
which atoms are translated and rotated by the algorithm. This allows, for
example, to align
structures based on a set of backbone heavy atoms while the protons and side
chains are displaced by
default. Or if a domain is aligned, then just that domain can be displaced.
........
r27101 | bugman | 2014-12-11 19:37:46 +0100 (Thu, 11 Dec 2014) | 8 lines
Added the displace_id argument to the structure.align and
structure.superimpose user functions.
This gives both of these user functions finer control over which atoms are
translated and rotated by
the algorithm. This allows, for example, to align structures based on a set
of backbone heavy atoms
while the protons and side chains are displaced by default. Or if a domain
is aligned, then just
that domain can be displaced.
........
r27102 | bugman | 2014-12-11 19:38:25 +0100 (Thu, 11 Dec 2014) | 3 lines
Fixes for the Structure.test_superimpose_fit_to_mean system test for the
displace_id argument.
........
r27103 | bugman | 2014-12-12 10:48:40 +0100 (Fri, 12 Dec 2014) | 6 lines
Modified the Structure.test_align_molecules system test to catch a bug.
[... 152 lines stripped ...]
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-commits mailing list
[email protected]
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits