Author: bugman Date: Mon Oct 7 21:54:45 2013 New Revision: 21015 URL: http://svn.gna.org/viewcvs/relax?rev=21015&view=rev Log: Fix for the Monte Carlo simulation parallisation. The processor.run_queue() method needs to be executed for all the optimisation user function of relax (at the end of both the grid_search() and the calc() functions). Otherwise when removing the processor.run_queue() call from the specific_analyses code results in a failure of the grid search or back-calculation to be run until the minimise() user function call, which will be too late. Modified: trunk/pipe_control/minimise.py Modified: trunk/pipe_control/minimise.py URL: http://svn.gna.org/viewcvs/relax/trunk/pipe_control/minimise.py?rev=21015&r1=21014&r2=21015&view=diff ============================================================================== --- trunk/pipe_control/minimise.py (original) +++ trunk/pipe_control/minimise.py Mon Oct 7 21:54:45 2013 @@ -81,6 +81,13 @@ else: calculate(verbosity=verbosity) + # Get the Processor box singleton (it contains the Processor instance) and alias the Processor. + processor_box = Processor_box() + processor = processor_box.processor + + # Execute any queued commands. + processor.run_queue() + def grid_search(lower=None, upper=None, inc=None, constraints=True, verbosity=1): """The grid search function. @@ -139,6 +146,13 @@ # Grid search. else: grid_search(lower=lower, upper=upper, inc=inc, constraints=constraints, verbosity=verbosity) + + # Get the Processor box singleton (it contains the Processor instance) and alias the Processor. + processor_box = Processor_box() + processor = processor_box.processor + + # Execute any queued commands. + processor.run_queue() def minimise(min_algor=None, line_search=None, hessian_mod=None, hessian_type=None, func_tol=None, grad_tol=None, max_iter=None, constraints=True, scaling=True, verbosity=1, sim_index=None):