mailr26020 - /branches/frame_order_cleanup/auto_analyses/frame_order.py


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

Header


Content

Posted by edward on September 24, 2014 - 17:50:
Author: bugman
Date: Wed Sep 24 17:50:52 2014
New Revision: 26020

URL: http://svn.gna.org/viewcvs/relax?rev=26020&view=rev
Log:
The frame order auto-analysis Optimisation_settings object now supports the 
quad_int flag.

This is for activating the SciPy quadratic integration.  It is accepted as an 
argument for the
add_grid() and add_min() methods, and it returned by the new 
get_grid_quad_int() and
get_min_quad_int() methods.


Modified:
    branches/frame_order_cleanup/auto_analyses/frame_order.py

Modified: branches/frame_order_cleanup/auto_analyses/frame_order.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/frame_order_cleanup/auto_analyses/frame_order.py?rev=26020&r1=26019&r2=26020&view=diff
==============================================================================
--- branches/frame_order_cleanup/auto_analyses/frame_order.py   (original)
+++ branches/frame_order_cleanup/auto_analyses/frame_order.py   Wed Sep 24 
17:50:52 2014
@@ -37,7 +37,7 @@
 
 # relax module imports.
 from data_store import Relax_data_store; ds = Relax_data_store()
-from lib.arg_check import is_float, is_int, is_str
+from lib.arg_check import is_bool, is_float, is_int, is_str
 from lib.errors import RelaxError
 from lib.frame_order.conversions import convert_axis_alpha_to_spherical
 from lib.frame_order.variables import MODEL_DOUBLE_ROTOR, MODEL_FREE_ROTOR, 
MODEL_ISO_CONE, MODEL_ISO_CONE_FREE_ROTOR, MODEL_ISO_CONE_TORSIONLESS, 
MODEL_LIST_FREE_ROTORS, MODEL_LIST_ISO_CONE, MODEL_LIST_NONREDUNDANT, 
MODEL_LIST_PSEUDO_ELLIPSE, MODEL_PSEUDO_ELLIPSE, 
MODEL_PSEUDO_ELLIPSE_FREE_ROTOR, MODEL_PSEUDO_ELLIPSE_TORSIONLESS, 
MODEL_RIGID, MODEL_ROTOR
@@ -957,6 +957,7 @@
         self._grid_zoom = []
         self._grid_sobol_max_points = []
         self._grid_sobol_oversample = []
+        self._grid_quad_int = []
 
         # Initialise some private structures for the minimisation.
         self._min_count = 0
@@ -965,6 +966,7 @@
         self._min_max_iter = []
         self._min_sobol_max_points = []
         self._min_sobol_oversample = []
+        self._min_quad_int = []
 
 
     def _check_index(self, i, iter_type=None):
@@ -987,7 +989,7 @@
             raise RelaxError("The iteration index %i is too high, only %i 
minimisations are set up." % (i, self._min_count))
 
 
-    def add_grid(self, inc=None, zoom=None, sobol_max_points=None, 
sobol_oversample=None):
+    def add_grid(self, inc=None, zoom=None, sobol_max_points=None, 
sobol_oversample=None, quad_int=False):
         """Add a grid search step.
 
         @keyword inc:               The grid search size (the number of 
increments per dimension).
@@ -998,6 +1000,8 @@
         @type sobol_max_points:     None or int
         @keyword sobol_oversample:  The Sobol' oversampling factor.  See the 
frame_order.sobol_setup user function for details.
         @type sobol_oversample:     None or int
+        @keyword quad_int:          The SciPy quadratic integration flag.  
See the frame_order.quad_int user function for details.
+        @type quad_int:             bool
         """
 
         # Value checking, as this will be set up by a user.
@@ -1005,18 +1009,20 @@
         is_int(zoom, name='zoom', can_be_none=True)
         is_int(sobol_max_points, name='sobol_max_points', can_be_none=True)
         is_int(sobol_oversample, name='sobol_oversample', can_be_none=True)
+        is_bool(quad_int, name='quad_int')
 
         # Store the values.
         self._grid_incs.append(inc)
         self._grid_zoom.append(zoom)
         self._grid_sobol_max_points.append(sobol_max_points)
         self._grid_sobol_oversample.append(sobol_oversample)
+        self._grid_quad_int.append(quad_int)
 
         # Increment the count.
         self._grid_count += 1
 
 
-    def add_min(self, min_algor='simplex', func_tol=1e-25, max_iter=1000000, 
sobol_max_points=None, sobol_oversample=None):
+    def add_min(self, min_algor='simplex', func_tol=1e-25, max_iter=1000000, 
sobol_max_points=None, sobol_oversample=None, quad_int=False):
         """Add an optimisation step.
 
         @keyword min_algor:         The optimisation technique.
@@ -1029,6 +1035,8 @@
         @type sobol_max_points:     None or int
         @keyword sobol_oversample:  The Sobol' oversampling factor.  See the 
frame_order.sobol_setup user function for details.
         @type sobol_oversample:     None or int
+        @keyword quad_int:          The SciPy quadratic integration flag.  
See the frame_order.quad_int user function for details.
+        @type quad_int:             bool
         """
 
         # Value checking, as this will be set up by a user.
@@ -1037,6 +1045,7 @@
         is_int(max_iter, name='max_iter', can_be_none=True)
         is_int(sobol_max_points, name='sobol_max_points', can_be_none=True)
         is_int(sobol_oversample, name='sobol_oversample', can_be_none=True)
+        is_bool(quad_int, name='quad_int')
 
         # Store the values.
         self._min_algor.append(min_algor)
@@ -1044,6 +1053,7 @@
         self._min_max_iter.append(max_iter)
         self._min_sobol_max_points.append(sobol_max_points)
         self._min_sobol_oversample.append(sobol_oversample)
+        self._min_quad_int.append(quad_int)
 
         # Increment the count.
         self._min_count += 1
@@ -1065,6 +1075,22 @@
         return self._grid_incs[i]
 
 
+    def get_grid_quad_int(self, i):
+        """Return the SciPy quadratic integration flag for the given 
iteration.
+
+        @param i:   The grid search iteration from the loop_grid() method.
+        @type i:    int
+        @return:    The SciPy quadratic integration flag for the iteration.
+        @rtype:     bool
+        """
+
+        # Check the index.
+        self._check_index(i, iter_type='grid')
+
+        # Return the value.
+        return self._grid_quad_int[i]
+
+
     def get_grid_sobol_info(self, i):
         """Return the number of numerical integration points and 
oversampling factor for the given iteration.
 
@@ -1145,6 +1171,22 @@
         return self._min_max_iter[i]
 
 
+    def get_min_quad_int(self, i):
+        """Return the SciPy quadratic integration flag for the given 
iteration.
+
+        @param i:   The minimisation iteration from the loop_min() method.
+        @type i:    int
+        @return:    The SciPy quadratic integration flag for the iterationor.
+        @rtype:     bool
+        """
+
+        # Check the index.
+        self._check_index(i, iter_type='min')
+
+        # Return the value.
+        return self._min_quad_int[i]
+
+
     def get_min_sobol_info(self, i):
         """Return the number of numerical integration points and 
oversampling factor for the given iteration.
 




Related Messages


Powered by MHonArc, Updated Wed Sep 24 19:00:04 2014