Hi Edward.

This post continues from:
http://thread.gmane.org/gmane.science.nmr.relax.devel/6814

As I wrote in this post, the new user function:
"relax_disp.r2eff_estimate()"

gives freedom to the user to try other algorithms.
Here scipy.optimize.leastsq which should be (or is) a well known
option in the python community for minimisation.

Did you find errors in MINPACK or in scipy ?

Best
Troels


2014-08-25 10:13 GMT+02:00 Edward d'Auvergne <edw...@nmr-relax.com>:
> Hi Troels,
>
> You should note that the 20x speed up is due to the change in
> optimisation algorithm rather than scipy vs. minfx vs. MINPACK.  The
> reason I wrote minfx is that I started with scipy optimisation but
> found all implemented algorithms contained fatal bugs.  This was not
> fixed for years after I reported it, and I don't know if the code had
> changed since 2003 when I looked into it.  Anyway a scipy optimisation
> solution is incompatible with the minfx optimisation solution in
> relax.  If you derive and code the gradients into relax, then you can
> use the minfx LM algorithm as a solution.
>
> Regards,
>
> Edward
>
>
>
>
>
>
>
> On 25 August 2014 01:08,  <tlin...@nmr-relax.com> wrote:
>> Author: tlinnet
>> Date: Mon Aug 25 01:08:44 2014
>> New Revision: 25228
>>
>> URL: http://svn.gna.org/viewcvs/relax?rev=25228&view=rev
>> Log:
>> Further improved the profiling of relax curve fit.
>>
>> This profiling shows, that Python code is about twice as slow as the C code 
>> implemented.
>>
>> But it also shows that optimising with scipy.optimize.leastsq is 20 X faster.
>> It also gives reasonable error values.
>>
>> Combining a function for a linear fit to guess the initial values, together
>> with scipy optimise, will be an extreme time win for estimating R2eff values 
>> fast.
>>
>> A further test would be to use relax Monte-Carlo simulations for say 
>> 1000-2000 iterations,
>> and compare to the errors extracted from estimated covariance.
>>
>> Added:
>>     trunk/test_suite/shared_data/curve_fitting/profiling/relax_fit.py
>> Modified:
>>     
>> trunk/test_suite/shared_data/curve_fitting/profiling/profiling_relax_fit.py
>>
>> [This mail would be too long, it was shortened to contain the URLs only.]
>>
>> Modified: 
>> trunk/test_suite/shared_data/curve_fitting/profiling/profiling_relax_fit.py
>> URL: 
>> http://svn.gna.org/viewcvs/relax/trunk/test_suite/shared_data/curve_fitting/profiling/profiling_relax_fit.py?rev=25228&r1=25227&r2=25228&view=diff
>>
>> Added: trunk/test_suite/shared_data/curve_fitting/profiling/relax_fit.py
>> URL: 
>> http://svn.gna.org/viewcvs/relax/trunk/test_suite/shared_data/curve_fitting/profiling/relax_fit.py?rev=25228&view=auto
>>
>>
>> _______________________________________________
>> relax (http://www.nmr-relax.com)
>>
>> This is the relax-commits mailing list
>> relax-comm...@gna.org
>>
>> 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
>
> _______________________________________________
> relax (http://www.nmr-relax.com)
>
> This is the relax-devel mailing list
> relax-devel@gna.org
>
> 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-devel

_______________________________________________
relax (http://www.nmr-relax.com)

This is the relax-devel mailing list
relax-devel@gna.org

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-devel

Reply via email to