Menu

SVN archive Commit Log


Commit Date  
[r25238] by tlinnet

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.

2014-08-24 23:32:13 Tree
[r25237] by tlinnet

Split up of systemtest test_r1rho_kjaergaard_missing_r1, into a verification part.

This is to test the new r2eff estimation, which should get the parameter values, as a
this 2000 monto carlo simulation.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:09:02 Tree
[r25236] by tlinnet

Small changes to verification scripts, to use chi2 function and use the scaling matrix correct.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:09:00 Tree
[r25235] by tlinnet

Documentation fix for new exponential target function.

Also added new function to estimate R2eff and i0 parameters, before minimisation.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:58 Tree
[r25234] by tlinnet

Implemented back end for estimating r2eff and errors by exponential curve fitting with scipy.optimize.leastsq.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:57 Tree
[r25233] by tlinnet

Modified check for model, to accept model as input, for error printing.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:55 Tree
[r25232] by tlinnet

Added front end user function relax_disp.r2eff_estimate() to estimate R2eff and errors by exponential curve fitting in scipy.optimize.leastsq.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:53 Tree
[r25231] by tlinnet

Implemented initial systemtest Relax_disp.test_estimate_r2eff for setting up the new user function to estimate R2eff and errors by scipy.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:50 Tree
[r25230] by tlinnet

Moved the target function for minimisation of exponential fit into the target functions folder.

task #7822(https://gna.org/task/index.php?7822): Implement user function to estimate R2eff and associated errors for exponential curve fitting.

2014-08-24 23:08:48 Tree
[r25229] by tlinnet

Added verification script, that shows that using scipy.optimize.leastsq reaches the exact same parameters as minfx for exponential curve fitting.

The profiling shows that scipy.optimize.leastsq is 10X as fast as using minfx (with no linear constraints.)
scipy.optimize.leastsq is a wrapper around wrapper around MINPACK's lmdif and lmder algorithms.

MINPACK is a FORTRAN90 library which solves systems of nonlinear equations, or carries out the least squares minimization of the residual of a set of linear or nonlinear equations.

The verification script also shows, that a very heavy and time consuming monte carlo simulation of 2000 steps, reaches the same
errors as the errors reported by scipy.optimize.leastsq.

The return from scipy.optimize.leastsq, gives the estimated co-variance.
Taking the square root of the co-variance corresponds with 2X error reported by minfx.

This could be an extremely time saving step, when performing model fitting in R1rho, where
the errors of the R2eff values, are estimited by Monte-Carlo simulations.

The following setup illustrates the problem.
This was analysed on a: MacBook Pro, 13-inch, Late 2011.
Witn no multi-core setup.

Script running is:
test_suite/shared_data/dispersion/Kjaergaard_et_al_2013/2_pre_run_r2eff.py

This script analyses just the R2eff values for 15 residues.
It estimates the errors of R2eff based on 2000 Monte Carlo simulations.
For each residues, there is 14 exponential graphs.

The script was broken after 35 simulations.
This was measured to 20 minutes.
So 500 simulations would take about 4.8 Hours.
The R2eff values and errors can by scipy.optimize.leastsq can instead be calculated in: 15 residues * 0.02 seconds = 0.3 seconds.

2014-08-24 23:08:46 Tree
Older >
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.