mailRe: r25429 - /trunk/specific_analyses/relax_disp/estimate_r2eff.py


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

Header


Content

Posted by Troels Emtekær Linnet on August 29, 2014 - 21:22:
Cheers.

2014-08-29 17:15 GMT+02:00 Edward d'Auvergne <edward@xxxxxxxxxxxxx>:
Hi,

I've now reintroduced the old C module
target_function.relax_fit.jacobian() function.  See r25429
(http://article.gmane.org/gmane.science.nmr.relax.scm/23188).  I also
renamed target_function.relax_fit.jacobian() to
target_function.relax_fit.jacobian_chi2().

Regards,

Edward


On 29 August 2014 12:40,  <tlinnet@xxxxxxxxxxxxx> wrote:
Author: tlinnet
Date: Fri Aug 29 12:40:07 2014
New Revision: 25429

URL: http://svn.gna.org/viewcvs/relax?rev=25429&view=rev
Log:
Swithced in estimate_r2eff_err() to use the chi2 Jacobian from C code, and 
Jacobian from python code.

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

Modified:
    trunk/specific_analyses/relax_disp/estimate_r2eff.py

Modified: trunk/specific_analyses/relax_disp/estimate_r2eff.py
URL: 
http://svn.gna.org/viewcvs/relax/trunk/specific_analyses/relax_disp/estimate_r2eff.py?rev=25429&r1=25428&r2=25429&view=diff
==============================================================================
--- trunk/specific_analyses/relax_disp/estimate_r2eff.py        (original)
+++ trunk/specific_analyses/relax_disp/estimate_r2eff.py        Fri Aug 29 
12:40:07 2014
@@ -175,7 +175,7 @@
             i0 = getattr(cur_spin, 'i0')[param_key]

             # Pack data
-            params = [r2eff, i0]
+            param_vector = [r2eff, i0]

             # The peak intensities, errors and times.
             values = []
@@ -193,15 +193,18 @@

             # Initialise data in C code.
             scaling_list = [1.0, 1.0]
-            setup(num_params=len(params), num_times=len(times), 
values=values, sd=errors, relax_times=times, scaling_matrix=scaling_list)
-
+            setup(num_params=len(param_vector), num_times=len(times), 
values=values, sd=errors, relax_times=times, scaling_matrix=scaling_list)
+
+            # Determine Jacobian and weights.
             if chi2_jacobian:
-                jacobian_matrix_exp = func_exp_chi2_grad(params=params, 
times=times, values=values, errors=errors)
+                # Calculate the direct exponential Jacobian matrix from C 
code.
+                jacobian_matrix_exp = transpose(asarray( 
jacobian(param_vector) ) )
+
+                # The Jacobian in the C-code is from chi2 function, and 
is already weighted.
                 weights = ones(errors.shape)
             else:
-                # Calculate the direct exponential Jacobian matrix from C 
code.
-                #jacobian_matrix_exp = transpose(asarray( 
jacobian(params) ) )
-                jacobian_matrix_exp = func_exp_grad(params=params, 
times=times, values=values, errors=errors)
+                # Use the direct Jacobian from python Code
+                jacobian_matrix_exp = func_exp_grad(params=param_vector, 
times=times, values=values, errors=errors)
                 weights = 1. / errors**2

             # Get the co-variance


_______________________________________________
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

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

This is the relax-devel mailing list
relax-devel@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-devel



Related Messages


Powered by MHonArc, Updated Sat Aug 30 00:20:31 2014