Merged revisions 11144-11175 via svnmerge from
svn+ssh://michaelbieri@.../svn/relax/1.3
........
r11144 | bugman | 2010-04-28 00:04:51 +1000 (Wed, 28 Apr 2010) | 6 lines
Created some test RDC and PCS data to test the handling of missing data.
This includes entire data sets missing, spins missing from one type of data, and individual spins
missing.
........
r11145 | bugman | 2010-04-28 00:08:02 +1000 (Wed, 28 Apr 2010) | 5 lines
Wrote a script for testing the missing RDC and PCS data.
This uses the N-state model with N=1, so direct testing of the single state to 4 tensors.
........
r11146 | bugman | 2010-04-28 00:17:54 +1000 (Wed, 28 Apr 2010) | 5 lines
Created the test_missing_data N-state model system test.
This should pull out a few hard to find bugs.
........
r11147 | bugman | 2010-04-28 00:20:11 +1000 (Wed, 28 Apr 2010) | 5 lines
Loosened a value check in the test_pcs_fit_zero_pos N-state model system test.
This was sometimes failing, but the value was correct enough.
........
r11148 | bugman | 2010-04-28 00:22:01 +1000 (Wed, 28 Apr 2010) | 5 lines
Created a truncated version of the LE.pdb file for the RDC and PCS system tests.
This contains just the atoms for PCS and RDCs, and will significantly speed up the tests.
........
r11149 | bugman | 2010-04-28 01:05:09 +1000 (Wed, 28 Apr 2010) | 5 lines
Modified the dna_pcs_fit.py N-state model system test script to use the truncated PDB file.
This speeds the system test up by orders of magnitude.
........
r11150 | bugman | 2010-04-28 01:30:47 +1000 (Wed, 28 Apr 2010) | 3 lines
Fixes for the structure.load_spins() user function docstring for RNA/DNA work.
........
r11151 | bugman | 2010-04-28 01:35:45 +1000 (Wed, 28 Apr 2010) | 3 lines
Removed a debugging print statement.
........
r11152 | bugman | 2010-04-28 01:45:01 +1000 (Wed, 28 Apr 2010) | 6 lines
Bug fix for the __det_pdb_element() method.
RNA PDB files with missing element information is now handled properly. The stripping of the "'"
was being ignored.
........
r11153 | bugman | 2010-04-28 01:55:04 +1000 (Wed, 28 Apr 2010) | 7 lines
Big bug fixes for the _minimise_setup_pcs() and _minimise_setup_rdcs() methods.
This allows the missing data PCS and RDC optimisation system test to pass. Many problems were
solved to allow all types of data with anything missing (one spin in one alignment, one spin in all
RDC or all PCS lists, or entire RDC or PCS lists for one alignment).
........
r11154 | bugman | 2010-04-28 01:58:00 +1000 (Wed, 28 Apr 2010) | 7 lines
The n_state_model.select_model() user function can now change the model.
Previously a RelaxError was thrown, but now a warning is given that the model is changing. This
allows the 'population' N-state model to be optimised by first optimising the 'fixed' model and then
switching to 'population'.
........
r11155 | bugman | 2010-04-28 01:59:14 +1000 (Wed, 28 Apr 2010) | 3 lines
Fixed the Q-factor calculating functions to handle missing RDC or PCS lists.
........
r11156 | bugman | 2010-04-28 02:03:40 +1000 (Wed, 28 Apr 2010) | 5 lines
Forked the test_lactose_n_state() system test for both the 'population' and 'fixed' models.
The 2 new system tests are test_lactose_n_state_fixed() and test_lactose_n_state_population().
........
r11157 | bugman | 2010-04-28 02:15:55 +1000 (Wed, 28 Apr 2010) | 6 lines
Implemented dfunc_tensor_opt() and d2func_tensor_opt() allowing all optimisation algorithms to be used.
The 'fixed' N-state model can now be optimised using Newton optimisation. On my machine, the
performance vs. Nelder-Mead simplex for ~20 states is a drop from ~1 hour to less than one minute!
........
r11158 | bugman | 2010-04-28 02:39:26 +1000 (Wed, 28 Apr 2010) | 6 lines
Created a system test for the 'population' N-state model with missing data.
This should thoroughly test out this model! First the 'fixed' model is optimised, and then the
'population' model optimised from that starting point. This is to keep the test fast.
........
r11159 | bugman | 2010-04-28 02:51:21 +1000 (Wed, 28 Apr 2010) | 3 lines
Modified the RDC and PCS read() function to not add align_id to the cdp structures if no data is present.
........
r11160 | bugman | 2010-04-28 02:57:55 +1000 (Wed, 28 Apr 2010) | 5 lines
Removed the calls to rdc.display() and pcs.display().
These were rightfully failing for the empty data lists, so should not be tested.
........
r11161 | bugman | 2010-04-28 04:11:41 +1000 (Wed, 28 Apr 2010) | 3 lines
Added the pymol_macro method to the specific object API.
........
r11162 | bugman | 2010-04-28 19:26:03 +1000 (Wed, 28 Apr 2010) | 5 lines
The weights of each state are now set to equal probability prior to the 'population' opt.
This is in the 'population' N-state model system test script.
........
r11163 | bugman | 2010-04-29 00:35:26 +1000 (Thu, 29 Apr 2010) | 6 lines
Huge bug fix for the 'population' N-state model.
The probabilities of each state was being set to that of the last state. This is fatal for this
model. Earlier code did not have this problem, but it is unknown when this bug was introduced.
........
r11164 | bugman | 2010-04-29 01:04:06 +1000 (Thu, 29 Apr 2010) | 5 lines
Fix for the _update_model() method for handling missing RDC and PCS data.
The alignment tensor initialisation order was being mixed up!
........
r11165 | bugman | 2010-04-29 01:50:40 +1000 (Thu, 29 Apr 2010) | 6 lines
Another fix for _update_model().
This was introduced in the last change. The alignment tensors are only updated if alignment data
is loaded.
........
r11166 | bugman | 2010-04-29 02:53:08 +1000 (Thu, 29 Apr 2010) | 5 lines
Another fix for the huge bug identified in r11163.
This is for the PCS part - this was also using equal weights for all states set to pN!
........
r11167 | bugman | 2010-04-29 03:48:53 +1000 (Thu, 29 Apr 2010) | 5 lines
Bug fix for the 'population' N-state model optimisation.
Constraints must be used at all times for this to work!!!
........
r11168 | bugman | 2010-04-29 22:52:20 +1000 (Thu, 29 Apr 2010) | 7 lines
Bug fix for the N-state model 'fixed' and 'population' models.
If too many tensors are initialised in comparison to PCS and RDC alignments, then the parameter
vector or parameter number was not being correctly assembled. The cdp.align_ids is now being used
to validate all setups.
........
r11169 | bugman | 2010-04-29 23:38:02 +1000 (Thu, 29 Apr 2010) | 3 lines
Updated and corrected all the Hessian method docstrings.
........
r11170 | bugman | 2010-04-30 03:00:51 +1000 (Fri, 30 Apr 2010) | 5 lines
Created the d2func_population() Hessian target function for the N-state model.
This may either be buggy or too sparse to run Newton optimisation well!
........
r11171 | bugman | 2010-04-30 03:06:52 +1000 (Fri, 30 Apr 2010) | 3 lines
Updates to the 'population' N-state model system test script.
........
r11172 | bugman | 2010-05-03 08:52:26 +1000 (Mon, 03 May 2010) | 7 lines
Bug fix for when structural models are loaded out of order.
Now the API generator method model_loop() is being used by the scientific python and internal
structural objects. The bond vectors and atomic positions are now loaded into the spin containers
in correct numerical model order.
........
r11173 | bugman | 2010-05-03 08:54:06 +1000 (Mon, 03 May 2010) | 5 lines
Added 3 system tests for the correct loading of XH bond vectors into the spin containers.
This catches the previously fixed model looping bug.
........
r11174 | bugman | 2010-05-03 08:57:22 +1000 (Mon, 03 May 2010) | 7 lines
Bug fix for a very long standing bug!
This is the 'population' N-state model bug whereby the last probability, which is not a parameter,
has a negative value. The constraint was not being scaled! So the constraint was actually a
probability 0 <= pN <= 100!!!
........
r11175 | bugman | 2010-05-03 09:05:30 +1000 (Mon, 03 May 2010) | 3 lines
Shorted the 'population' N-state model system test and randomise the model loading order.
........