Author: tlinnet
Date: Mon Aug 25 01:32:13 2014
New Revision: 25238
URL: http://svn.gna.org/viewcvs/relax?rev=25238&view=rev
Log:
Modified systemtest Relax_disp.test_estimate_r2eff.
This is to compare against errors simulated with 2000 MC.
The paramaters are comparable, but not equal.
Mostly, it seems that the errors from scipy.optimize.leastsq, are twice
as high than the Monte Carlo simulations.
This affect model fitting, and the calculated chi2 value.
Left column is 2000 Monte Carlo, right column is scipy.optimize.leastsq.
Optimised parameters for spin: 52V @N
Model: No Rex
Parameter: r1 Value: 1.46138806 - 1.46328102
Parameter: r2 Value: 11.48392438 - 11.48040934
Parameter: chi2 Value: 848.42015672 - 3363.95829122
Model: DPL94
Parameter: r1 Value: 1.44845743 - 1.45019848
Parameter: r2 Value: 10.15688373 - 10.16304892
Parameter: phi_ex Value: 0.07599563 - 0.07561937
Parameter: kex Value: 4460.43707304 - 4419.03906628
Parameter: chi2 Value: 179.47041255 - 710.24767560
Model: TP02
Parameter: r1 Value: 1.54354392 - 1.54352369
Parameter: r2 Value: 9.72654895 - 9.72772727
Parameter: pA Value: 0.88827039 - 0.88807488
Parameter: dw Value: 1.08875836 - 1.08765645
Parameter: kex Value: 4921.28597928 - 4904.70134941
Parameter: chi2 Value: 29.33882481 - 114.47142772
Model: TAP03
Parameter: r1 Value: 1.54356410 - 1.54354368
Parameter: r2 Value: 9.72641885 - 9.72759371
Parameter: pA Value: 0.88828925 - 0.88809317
Parameter: dw Value: 1.08837248 - 1.08726695
Parameter: kex Value: 4926.42974479 - 4909.86896567
Parameter: chi2 Value: 29.29050624 - 114.27987534
Model: MP05
Parameter: r1 Value: 1.54356415 - 1.54354372
Parameter: r2 Value: 9.72641730 - 9.72759220
Parameter: pA Value: 0.88828927 - 0.88809322
Parameter: dw Value: 1.08837250 - 1.08726707
Parameter: kex Value: 4926.44228958 - 4909.88128236
Parameter: chi2 Value: 29.29054252 - 114.28002272
Model: NS R1rho 2-site
Parameter: r1 Value: 1.41359226 - 1.41321968
Parameter: r2 Value: 9.34531364 - 9.34602793
Parameter: pA Value: 0.94504369 - 0.94496541
Parameter: dw Value: 1.56001843 - 1.55833321
Parameter: kex Value: 5628.66529504 - 5610.20221435
Parameter: chi2 Value: 34.44010458 - 134.14368365
task #7822(https://gna.org/task/index.php?7822): Implement user function
to estimate R2eff and associated errors for exponential curve fitting.
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=25238&r1=25237&r2=25238&view=diff
==============================================================================
--- trunk/test_suite/system_tests/relax_disp.py (original)
+++ trunk/test_suite/system_tests/relax_disp.py Mon Aug 25 01:32:13 2014
@@ -2679,7 +2679,7 @@
self.setup_r1rho_kjaergaard(cluster_ids=cluster_ids,
read_R1=False)
# The dispersion models.
- MODELS = [MODEL_NOREX, MODEL_DPL94]
+ MODELS = [MODEL_NOREX, MODEL_DPL94, MODEL_TP02, MODEL_TAP03,
MODEL_MP05, MODEL_NS_R1RHO_2SITE]
# The grid search size (the number of increments per dimension).
GRID_INC = None
@@ -2723,6 +2723,9 @@
# Run the analysis.
relax_disp.Relax_disp(pipe_name=ds.pipe_name,
pipe_bundle=ds.pipe_bundle, results_dir=result_dir_name, models=MODELS,
grid_inc=GRID_INC, mc_sim_num=MC_NUM, modsel=MODSEL)
+
+ # Verify the data.
+ self.verify_r1rho_kjaergaard_missing_r1(models=MODELS,
result_dir_name=result_dir_name, do_assert=False)
def test_exp_fit(self):
@@ -7343,7 +7346,7 @@
w_eff_file.close()
- def verify_r1rho_kjaergaard_missing_r1(self, models=None,
result_dir_name=None):
+ def verify_r1rho_kjaergaard_missing_r1(self, models=None,
result_dir_name=None, do_assert=True):
"""Verification of test_r1rho_kjaergaard_missing_r1."""
# Check the kex value of residue 52
@@ -7382,35 +7385,36 @@
# Print value.
print("%-10s %-6s %-6s %3.8f" %
("Parameter:", param, "Value:", value))
- # Compare values.
- if spin_id == ':52@N':
- if param == 'r1':
- if model == MODEL_NOREX:
- self.assertAlmostEqual(value,
1.46328102)
- elif model == MODEL_DPL94:
- self.assertAlmostEqual(value,
1.45019848)
- elif model == MODEL_TP02:
- self.assertAlmostEqual(value,
1.54352369)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
1.54354367)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
1.54354372)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
1.41321968, 6)
-
- elif param == 'r2':
- if model == MODEL_NOREX:
- self.assertAlmostEqual(value,
11.48040934)
- elif model == MODEL_DPL94:
- self.assertAlmostEqual(value,
10.16304887, 6)
- elif model == MODEL_TP02:
- self.assertAlmostEqual(value,
9.72772726, 6)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
9.72759374, 6)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
9.72759220, 6)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
9.34602793, 5)
+ if do_assert:
+ # Compare values.
+ if spin_id == ':52@N':
+ if param == 'r1':
+ if model == MODEL_NOREX:
+
self.assertAlmostEqual(value, 1.46328102)
+ elif model == MODEL_DPL94:
+
self.assertAlmostEqual(value, 1.45019848)
+ elif model == MODEL_TP02:
+
self.assertAlmostEqual(value, 1.54352369)
+ elif model == MODEL_TAP03:
+
self.assertAlmostEqual(value, 1.54354367)
+ elif model == MODEL_MP05:
+
self.assertAlmostEqual(value, 1.54354372)
+ elif model ==
MODEL_NS_R1RHO_2SITE:
+
self.assertAlmostEqual(value, 1.41321968, 6)
+
+ elif param == 'r2':
+ if model == MODEL_NOREX:
+
self.assertAlmostEqual(value, 11.48040934)
+ elif model == MODEL_DPL94:
+
self.assertAlmostEqual(value, 10.16304887, 6)
+ elif model == MODEL_TP02:
+
self.assertAlmostEqual(value, 9.72772726, 6)
+ elif model == MODEL_TAP03:
+
self.assertAlmostEqual(value, 9.72759374, 6)
+ elif model == MODEL_MP05:
+
self.assertAlmostEqual(value, 9.72759220, 6)
+ elif model ==
MODEL_NS_R1RHO_2SITE:
+
self.assertAlmostEqual(value, 9.34602793, 5)
# For all other parameters.
else:
@@ -7420,57 +7424,58 @@
# Print value.
print("%-10s %-6s %-6s %3.8f" % ("Parameter:",
param, "Value:", value))
- # Compare values.
- if spin_id == ':52@N':
- if param == 'phi_ex':
- if model == MODEL_DPL94:
- self.assertAlmostEqual(value,
0.07561937)
-
- elif param == 'pA':
- if model == MODEL_TP02:
- self.assertAlmostEqual(value,
0.88807487)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
0.88809318)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
0.88809321)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
0.94496541, 6)
-
- elif param == 'dw':
- if model == MODEL_TP02:
- self.assertAlmostEqual(value,
1.08765638, 6)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
1.08726698, 6)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
1.08726706, 6)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
1.55833321, 5)
-
- elif param == 'kex':
- if model == MODEL_DPL94:
- self.assertAlmostEqual(value,
4419.03917195, 2)
- elif model == MODEL_TP02:
- self.assertAlmostEqual(value,
4904.70144883, 3)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
4909.86877150, 3)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
4909.88110195, 3)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
5610.20221435, 2)
-
- elif param == 'chi2':
- if model == MODEL_NOREX:
- self.assertAlmostEqual(value,
3363.95829122)
- elif model == MODEL_DPL94:
- self.assertAlmostEqual(value,
710.24767560)
- elif model == MODEL_TP02:
- self.assertAlmostEqual(value,
114.47142772)
- elif model == MODEL_TAP03:
- self.assertAlmostEqual(value,
114.27987534)
- elif model == MODEL_MP05:
- self.assertAlmostEqual(value,
114.28002272)
- elif model == MODEL_NS_R1RHO_2SITE:
- self.assertAlmostEqual(value,
134.14368365)
+ if do_assert:
+ # Compare values.
+ if spin_id == ':52@N':
+ if param == 'phi_ex':
+ if model == MODEL_DPL94:
+ self.assertAlmostEqual(value,
0.07561937)
+
+ elif param == 'pA':
+ if model == MODEL_TP02:
+ self.assertAlmostEqual(value,
0.88807487)
+ elif model == MODEL_TAP03:
+ self.assertAlmostEqual(value,
0.88809318)
+ elif model == MODEL_MP05:
+ self.assertAlmostEqual(value,
0.88809321)
+ elif model == MODEL_NS_R1RHO_2SITE:
+ self.assertAlmostEqual(value,
0.94496541, 6)
+
+ elif param == 'dw':
+ if model == MODEL_TP02:
+ self.assertAlmostEqual(value,
1.08765638, 6)
+ elif model == MODEL_TAP03:
+ self.assertAlmostEqual(value,
1.08726698, 6)
+ elif model == MODEL_MP05:
+ self.assertAlmostEqual(value,
1.08726706, 6)
+ elif model == MODEL_NS_R1RHO_2SITE:
+ self.assertAlmostEqual(value,
1.55833321, 5)
+
+ elif param == 'kex':
+ if model == MODEL_DPL94:
+ self.assertAlmostEqual(value,
4419.03917195, 2)
+ elif model == MODEL_TP02:
+ self.assertAlmostEqual(value,
4904.70144883, 3)
+ elif model == MODEL_TAP03:
+ self.assertAlmostEqual(value,
4909.86877150, 3)
+ elif model == MODEL_MP05:
+ self.assertAlmostEqual(value,
4909.88110195, 3)
+ elif model == MODEL_NS_R1RHO_2SITE:
+ self.assertAlmostEqual(value,
5610.20221435, 2)
+
+ elif param == 'chi2':
+ if model == MODEL_NOREX:
+ self.assertAlmostEqual(value,
3363.95829122)
+ elif model == MODEL_DPL94:
+ self.assertAlmostEqual(value,
710.24767560)
+ elif model == MODEL_TP02:
+ self.assertAlmostEqual(value,
114.47142772)
+ elif model == MODEL_TAP03:
+ self.assertAlmostEqual(value,
114.27987534)
+ elif model == MODEL_MP05:
+ self.assertAlmostEqual(value,
114.28002272)
+ elif model == MODEL_NS_R1RHO_2SITE:
+ self.assertAlmostEqual(value,
134.14368365)
# Print the final pipe.
@@ -7524,7 +7529,7 @@
# Assign the split of the line.
mol_name, res_num, res_name, spin_num, spin_name, val,
sd_error = line_split
- print mol_name, res_num, res_name, spin_num, spin_name,
val, sd_error
+ print(mol_name, res_num, res_name, spin_num, spin_name,
val, sd_error)
if res_num == '52':
# Assert that the value is not None.
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-commits mailing list
relax-commits@xxxxxxx
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits