Menu

SVN archive Commit Log


Commit Date  
[r24523] by bugman

Fixes for the parallelised grid search for the frame order analysis.

A chi-squared value check was added to the Frame_order_result_command.run() method to check if the
value is lower than the current when the result is returned to the master. Without this check, each
grid subdivision result will be stored as they are returned rather than storing the results from the
global minimum of the entire grid search.

2014-07-11 10:01:20 Tree
[r24522] by bugman

Parallelised the frame order grid search to run on clusters or multi-core systems via OpenMPI.

This involved the creation of the Frame_order_grid_command class which is the multi-processor
Slave_command for performing the grid search. This was created by duplicating the
Frame_order_minimise_command class and then differentiating both classes.

For the subdivision of the grid search, the new minfx grid.grid_split_array() function is used in
the frame order grid() API method. The grid() method no longer calls the minimise() method but
instead obtains the processor box itself and adds the subdivided grid slaves to the processor. The
relax grid_search user function takes care of the rest.

2014-07-11 08:46:21 Tree
[r24521] by bugman

Updated the minfx version in the release checklist document to 1.0.8.

This version has not been released yet, but it will include important fixes and additions for
constrained parallelised grid searches.

2014-07-11 08:39:52 Tree
[r24520] by bugman

Improvements for the printout at the start of optimisation of the frame order models.

This is in the target_fn_setup() frame order method. All the printouts are now in one place and
they are now better formatted and better controlled.

2014-07-11 08:33:48 Tree
[r24519] by bugman

The frame order linear_constraints() function now returns None if no constraints are present.

This allows the code using this to be simplified with respect to turning off the constraints.

2014-07-11 08:14:45 Tree
[r24518] by bugman

Reverted r24495 as this is rubbish.

The pivot point needs to be initially guessed to centre the grid search for the pivot to a
reasonable 20 Angstrom box in the PDB space.

The command used was:
svn merge -r24495:r24494 .

.....
r24495 | bugman | 2014-07-09 15:31:21 +0200 (Wed, 09 Jul 2014) | 7 lines
Changed paths:
M /branches/frame_order_cleanup/specific_analyses/frame_order/parameters.py

Modified the specific_analyses.frame_order.parameters.update_model() function.

The pivot parameters are now set to 0.0 if they do not currently exist. They were previously
excluded from this initialisation, but this is required for the frame order models if the pivot is
not initially fixed at a give location in the PDB space.
.....

2014-07-11 07:07:01 Tree
[r24517] by bugman

Parallelised the frame order optimisation code to run on clusters or multi-core systems via OpenMPI.

The optimisation code has been split into the three standard parts of the multi-processor:

- Frame_order_memo is the new Memo object used to store data on the master for use when data is
returned from the slaves.

- Frame_order_minimise_command is the Slave_command which stored all required data for the
optimisation, is pickled and sent to a slave, sets up the target function, and then performs
optimisation.

- Frame_order_result_command is the Result_command initialised by the Slave_command on the slave for
pickling and returning results to the master.

To avoid pickling the target function class, which is not possible, the store_bc_data() and
target_fn_setup() functions of the specific_analyses.frame_order.optimisation module have been
redesigned to work with basic data structures rather than the target function class directly. The
target_fn_setup() function no longer returns an initialised target function class, but rather all
the data assembled prior to the initialisation. And the target function class was itself modified
so that pcs_theta and rdc_theta are always defined to allow the store_bc_data() function to be used
successfully.

This parallelisation currently only allows the Monte Carlo simulations to be run on slave
processors.

2014-07-10 17:04:37 Tree
[r24516] by bugman

Constraints are now properly turned off in the minimise user function for the frame order analysis.

The A and b matrices from linear_constraints() are now set to None if they are returned as empty
arrays.

2014-07-10 16:27:10 Tree
[r24515] by bugman

Turned on the optimisation flag for the Frame_order.test_cam_free_rotor system test.

This is to activate code paths currently not tested by the test suite.

2014-07-10 16:13:09 Tree
[r24514] by bugman

Changed the minimisation in the frame order system tests where optimisation is activated.

The number of iterations is now set to 1 for speed testing, and the constraints are turned on.

2014-07-10 16:12:07 Tree
Older >
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.