mailr23531 - /branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py


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

Header


Content

Posted by tlinnet on May 28, 2014 - 16:49:
Author: tlinnet
Date: Wed May 28 16:49:08 2014
New Revision: 23531

URL: http://svn.gna.org/viewcvs/relax?rev=23531&view=rev
Log:
Added 9th and 10th unit test case for model B14.

These tests are setup, to check how the function behaves under conditions of 
the grid-seach.

Two tests are setup, which either use the default lower or upper bound of the 
parameters for the grid search.

The return of the values are not checked, but the behaving of the function 
can be found when adding the --numpy-raise to run relax.

This is related to: task #7793: (https://gna.org/task/?7793) Speed-up of 
dispersion models.

These tests are implemented to show bug cases related to:
Bug #22032: (bug #22032: Minimisation explodes when using Grid_INC=None) 
Minimisation explodes when using Grid_INC=None

The function can return nan or inf values, which are not handled by the 
minimisation algorithm, causing it to stop.
There needs to be mechanism to catch these cases.

Modified:
    branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py

Modified: 
branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py?rev=23531&r1=23530&r2=23531&view=diff
==============================================================================
--- branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py    
  (original)
+++ branches/disp_speed/test_suite/unit_tests/_lib/_dispersion/test_b14.py    
  Wed May 28 16:49:08 2014
@@ -25,6 +25,7 @@
 
 # relax module imports.
 from lib.dispersion.b14 import r2eff_B14
+from specific_analyses.relax_disp.parameter_object import Relax_disp_params
 
 
 class Test_b14(TestCase):
@@ -51,6 +52,9 @@
         # The spin Larmor frequencies.
         self.sfrq = 200. * 1E6
 
+        # This is to test the default grid values.
+        self.test_val = True
+
 
     def calc_r2eff(self):
         """Calculate and check the R2eff values."""
@@ -62,8 +66,9 @@
         R2eff = r2eff_B14(r20a=self.r20a, r20b=self.r20b, pA=self.pA, pB=pB, 
dw=dw_frq, kex=self.kex, k_AB=k_AB, k_BA=k_BA, ncyc=self.ncyc, 
inv_tcpmg=self.inv_relax_times, tcp=self.tau_cpmg, num_points=self.num_points)
 
         # Check all R2eff values.
-        for i in range(self.num_points):
-            self.assertAlmostEqual(R2eff[i], self.r20a)
+        if self.test_val:
+            for i in range(self.num_points):
+                self.assertAlmostEqual(R2eff[i], self.r20a)
 
 
     def param_conversion(self, pA=None, kex=None, dw=None, sfrq=None):
@@ -180,3 +185,38 @@
 
         # Calculate and check the R2eff values.
         self.calc_r2eff()
+
+
+    def test_b14_no_rex9(self):
+        """Test the r2eff_b14() function for the default lower grid values.  
This is to catch un-discovered numpy-raises in calculations. """
+
+        PARAMS = Relax_disp_params()
+
+        # Parameter reset.
+        self.r20a = PARAMS.grid_lower('r2a')
+        self.r20b = PARAMS.grid_lower('r2b')
+        self.pA =  PARAMS.grid_lower('pA')
+        self.kex = PARAMS.grid_lower('kex')
+
+        self.test_val = False
+
+        # Calculate and check the R2eff values.
+        self.calc_r2eff()
+
+
+    def test_b14_no_rex10(self):
+        """Test the r2eff_b14() function for the default lower grid values.  
This is to catch un-discovered numpy-raises in calculations. """
+
+        PARAMS = Relax_disp_params()
+
+        # Parameter reset.
+        self.r20a = PARAMS.grid_upper('r2a')
+        self.r20b = PARAMS.grid_upper('r2b')
+        self.dw = PARAMS.grid_upper('dw')
+        self.pA =  PARAMS.grid_upper('pA')
+        self.kex = PARAMS.grid_upper('kex')
+
+        self.test_val = False
+
+        # Calculate and check the R2eff values.
+        self.calc_r2eff()




Related Messages


Powered by MHonArc, Updated Wed May 28 17:20:03 2014