mailr21100 - in /branches/relax_disp: ./ pipe_control/minimise.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on October 14, 2013 - 20:18:
Author: bugman
Date: Mon Oct 14 20:18:44 2013
New Revision: 21100

URL: http://svn.gna.org/viewcvs/relax?rev=21100&view=rev
Log:
Merged revisions 21099 via svnmerge from 
svn+ssh://bugman@xxxxxxxxxxx/svn/relax/trunk

........
  r21099 | bugman | 2013-10-14 20:18:11 +0200 (Mon, 14 Oct 2013) | 11 lines
  
  Modified the Monte Carlo simulation printout behaviour for the minimisation 
related user functions.
  
  This is to help in fixing bug #21190 (https://gna.org/bugs/?21190).
  
  This includes the calculate, grid_search, and minimise user functions.  The 
new multi-processor
  is_queued() method is used to determine if the optimisation code of the 
specific analysis has queued
  rather than run the calculations.  If queued, the 'Simulation X' text will 
not be printed out.  This
  avoids printing out all the text at the start before anything has happened. 
 The specific
  multi-processor optimisation code must provide it's own printouts when each 
calculation is complete.
........

Modified:
    branches/relax_disp/   (props changed)
    branches/relax_disp/pipe_control/minimise.py

Propchange: branches/relax_disp/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Mon Oct 14 20:18:44 2013
@@ -1,1 +1,1 @@
-/trunk:1-21097
+/trunk:1-21099

Modified: branches/relax_disp/pipe_control/minimise.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/relax_disp/pipe_control/minimise.py?rev=21100&r1=21099&r2=21100&view=diff
==============================================================================
--- branches/relax_disp/pipe_control/minimise.py (original)
+++ branches/relax_disp/pipe_control/minimise.py Mon Oct 14 20:18:44 2013
@@ -54,14 +54,14 @@
     # Deselect spins lacking data:
     overfit_deselect()
 
+    # Get the Processor box singleton (it contains the Processor instance) 
and alias the Processor.
+    processor_box = Processor_box() 
+    processor = processor_box.processor
+
     # Monte Carlo simulation calculation.
     if hasattr(cdp, 'sim_state') and cdp.sim_state == 1:
         # Loop over the simulations.
         for i in range(cdp.sim_number):
-            # Print out.
-            if verbosity:
-                print("Simulation " + repr(i+1))
-
             # Status.
             if status.current_analysis:
                 status.auto_analysis[status.current_analysis].mc_number = i
@@ -70,6 +70,10 @@
 
             # Calculation.
             calculate(verbosity=verbosity-1, sim_index=i)
+
+            # Print out.
+            if verbosity and not processor.is_queued():
+                print("Simulation " + repr(i+1))
 
         # Unset the status.
         if status.current_analysis:
@@ -80,10 +84,6 @@
     # Minimisation.
     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()
@@ -120,14 +120,14 @@
     # Deselect spins lacking data:
     overfit_deselect()
 
+    # Get the Processor box singleton (it contains the Processor instance) 
and alias the Processor.
+    processor_box = Processor_box() 
+    processor = processor_box.processor
+
     # Monte Carlo simulation grid search.
     if hasattr(cdp, 'sim_state') and cdp.sim_state == 1:
         # Loop over the simulations.
         for i in range(cdp.sim_number):
-            # Print out.
-            if verbosity:
-                print("Simulation " + repr(i+1))
-
             # Status.
             if status.current_analysis:
                 status.auto_analysis[status.current_analysis].mc_number = i
@@ -136,6 +136,10 @@
 
             # Optimisation.
             grid_search(lower=lower, upper=upper, inc=inc, 
constraints=constraints, verbosity=verbosity-1, sim_index=i)
+
+            # Print out.
+            if verbosity and not processor.is_queued():
+                print("Simulation " + repr(i+1))
 
         # Unset the status.
         if status.current_analysis:
@@ -146,10 +150,6 @@
     # 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()
@@ -209,6 +209,10 @@
     # Deselect spins lacking data:
     overfit_deselect()
 
+    # Get the Processor box singleton (it contains the Processor instance) 
and alias the Processor.
+    processor_box = Processor_box() 
+    processor = processor_box.processor
+
     # Single Monte Carlo simulation.
     if sim_index != None:
         minimise(min_algor=min_algor, min_options=min_options, 
func_tol=func_tol, grad_tol=grad_tol, max_iterations=max_iter, 
constraints=constraints, scaling=scaling, verbosity=verbosity, 
sim_index=sim_index)
@@ -216,10 +220,6 @@
     # Monte Carlo simulation minimisation.
     elif hasattr(cdp, 'sim_state') and cdp.sim_state == 1:
         for i in range(cdp.sim_number):
-            # Print out.
-            if verbosity:
-                print("Simulation " + repr(i+1))
-
             # Status.
             if status.current_analysis:
                 status.auto_analysis[status.current_analysis].mc_number = i
@@ -228,6 +228,10 @@
 
             # Optimisation.
             minimise(min_algor=min_algor, min_options=min_options, 
func_tol=func_tol, grad_tol=grad_tol, max_iterations=max_iter, 
constraints=constraints, scaling=scaling, verbosity=verbosity-1, sim_index=i)
+
+            # Print out.
+            if verbosity and not processor.is_queued():
+                print("Simulation " + repr(i+1))
 
         # Unset the status.
         if status.current_analysis:
@@ -238,10 +242,6 @@
     # Standard minimisation.
     else:
         minimise(min_algor=min_algor, min_options=min_options, 
func_tol=func_tol, grad_tol=grad_tol, max_iterations=max_iter, 
constraints=constraints, scaling=scaling, 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()




Related Messages


Powered by MHonArc, Updated Mon Oct 14 20:40:02 2013