mailr25124 - /trunk/test_suite/system_tests/relax_disp.py


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

Header


Content

Posted by tlinnet on August 20, 2014 - 21:06:
Author: tlinnet
Date: Wed Aug 20 21:06:37 2014
New Revision: 25124

URL: http://svn.gna.org/viewcvs/relax?rev=25124&view=rev
Log:
Inserted systemtest Relax_disp.test_model_nesting_and_param() which will
go through all models, and then through all it nested models, testing that 
all parameters have a conversion.

Modified:
    trunk/test_suite/system_tests/relax_disp.py

Modified: trunk/test_suite/system_tests/relax_disp.py
URL: 
http://svn.gna.org/viewcvs/relax/trunk/test_suite/system_tests/relax_disp.py?rev=25124&r1=25123&r2=25124&view=diff
==============================================================================
--- trunk/test_suite/system_tests/relax_disp.py (original)
+++ trunk/test_suite/system_tests/relax_disp.py Wed Aug 20 21:06:37 2014
@@ -37,7 +37,8 @@
 from specific_analyses.relax_disp.checks import check_missing_r1
 from specific_analyses.relax_disp.data import generate_r20_key, 
get_curve_type, has_r1rho_exp_type, loop_exp_frq, loop_exp_frq_offset_point, 
return_grace_file_name_ini, return_param_key_from_data
 from specific_analyses.relax_disp.data import INTERPOLATE_DISP, 
INTERPOLATE_OFFSET, X_AXIS_DISP, X_AXIS_W_EFF, X_AXIS_THETA, Y_AXIS_R2_R1RHO, 
Y_AXIS_R2_EFF
-from specific_analyses.relax_disp.variables import EXP_TYPE_CPMG_DQ, 
EXP_TYPE_CPMG_MQ, EXP_TYPE_CPMG_PROTON_MQ, EXP_TYPE_CPMG_PROTON_SQ, 
EXP_TYPE_CPMG_SQ, EXP_TYPE_CPMG_ZQ, EXP_TYPE_R1RHO, MODEL_B14_FULL, 
MODEL_CR72, MODEL_CR72_FULL, MODEL_DPL94, MODEL_DPL94_FIT_R1, MODEL_IT99, 
MODEL_LIST_ANALYTIC_CPMG, MODEL_LIST_NUMERIC_CPMG, MODEL_LM63, MODEL_M61, 
MODEL_M61B, MODEL_MP05, MODEL_MP05_FIT_R1, MODEL_NOREX, MODEL_NOREX_R1RHO, 
MODEL_NOREX_R1RHO_FIT_R1, MODEL_NS_CPMG_2SITE_3D_FULL, 
MODEL_NS_CPMG_2SITE_EXPANDED, MODEL_NS_CPMG_2SITE_STAR_FULL, 
MODEL_NS_R1RHO_2SITE, MODEL_NS_R1RHO_2SITE_FIT_R1, MODEL_NS_R1RHO_3SITE, 
MODEL_NS_R1RHO_3SITE_LINEAR, MODEL_PARAMS, MODEL_R2EFF, MODEL_TP02, 
MODEL_TP02_FIT_R1, MODEL_TAP03, MODEL_TAP03_FIT_R1
+from specific_analyses.relax_disp.model import models_info, nesting_param
+from specific_analyses.relax_disp.variables import EXP_TYPE_CPMG_DQ, 
EXP_TYPE_CPMG_MQ, EXP_TYPE_CPMG_PROTON_MQ, EXP_TYPE_CPMG_PROTON_SQ, 
EXP_TYPE_CPMG_SQ, EXP_TYPE_CPMG_ZQ, EXP_TYPE_R1RHO, MODEL_B14_FULL, 
MODEL_CR72, MODEL_CR72_FULL, MODEL_DPL94, MODEL_DPL94_FIT_R1, MODEL_IT99, 
MODEL_LIST_ANALYTIC_CPMG, MODEL_LIST_NUMERIC_CPMG, MODEL_LIST_FULL, 
MODEL_LM63, MODEL_M61, MODEL_M61B, MODEL_MP05, MODEL_MP05_FIT_R1, 
MODEL_NOREX, MODEL_NOREX_R1RHO, MODEL_NOREX_R1RHO_FIT_R1, 
MODEL_NS_CPMG_2SITE_3D_FULL, MODEL_NS_CPMG_2SITE_EXPANDED, 
MODEL_NS_CPMG_2SITE_STAR_FULL, MODEL_NS_R1RHO_2SITE, 
MODEL_NS_R1RHO_2SITE_FIT_R1, MODEL_NS_R1RHO_3SITE, 
MODEL_NS_R1RHO_3SITE_LINEAR, MODEL_PARAMS, MODEL_R2EFF, MODEL_TP02, 
MODEL_TP02_FIT_R1, MODEL_TAP03, MODEL_TAP03_FIT_R1
 from specific_analyses.relax_disp.model import convert_no_rex_fit_r1
 from status import Status; status = Status()
 from test_suite.system_tests.base_classes import SystemTestCase
@@ -5033,6 +5034,47 @@
             spin_index += 1
 
 
+    def test_model_nesting_and_param(self):
+        """Test that all models which can nest, have all their parameters 
converted."""
+
+        # Get info for all models.
+        all_models_info = models_info(models=MODEL_LIST_FULL)
+
+        # Loop over all models.
+        print("Printing the listed of nested models for each model.")
+        print("#########################################")
+        for model_info in all_models_info:
+            print("%s"%model_info.model),
+            print("<-"),
+            nest_list = model_info.nest_list
+            if nest_list == None:
+                nest_list = ["None"]
+            print(', '.join(map(str, nest_list)))
+
+            # Skip if there is no model to nest from.
+            if nest_list == ["None"]:
+                continue
+
+            # Assign params to variable.
+            model_params = model_info.params
+
+            # Now loop over the nested models.
+            for nested_model in nest_list:
+                # Get the params for the nested model.
+                nested_model_params = MODEL_PARAMS[nested_model]
+
+                # Get the dictionary of parameter conversion.
+                par_dic = nesting_param(model_params=model_params, 
nested_model_params=nested_model_params)
+
+                # Test the number of elements in the dictionary.
+                self.assertEqual(len(par_dic), len(model_params))
+
+                # Loop over dictionary.
+                for param, param_conv in par_dic.iteritems():
+                        print("Model:'%s', Nested model:'%s', from parameter 
'%s' to '%s'." % (model_info.model, nested_model, param_conv, param))
+                        self.assertNotEqual(param_conv, None)
+
+
     def test_ns_mmq_3site(self):
         """Compare the 'NS MMQ 3-site' dispersion model to synthetic data 
from cpmg_fit."""
 




Related Messages


Powered by MHonArc, Updated Wed Aug 20 21:40:02 2014