For a proper solution which is portable to all analysis types, the
chi-squared value should be calculated using the target_functions.chi2
module.  All other analyses use this module, and the relaxation
dispersion analysis should too.  Maybe a new function is required in
this module which implements this in the numpy way (i.e. numpy.sum()).

You should also import the functions directly from numpy rather than
importing numpy as np.  I make sure that the math module and numpy
module function name clashes do not occur in relax, so 'import numpy
as np' is not used in relax.

Regards,

Edward



On 8 June 2014 23:56,  <[email protected]> wrote:
> Author: tlinnet
> Date: Sun Jun  8 23:56:36 2014
> New Revision: 23748
>
> URL: http://svn.gna.org/viewcvs/relax?rev=23748&view=rev
> Log:
> Just a tiny little more speed, by removing temporary storage of chi2 
> calculation.
>
> Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion 
> models for Clustered analysis.
>
> Modified:
>     branches/disp_spin_speed/target_functions/relax_disp.py
>
> Modified: branches/disp_spin_speed/target_functions/relax_disp.py
> URL: 
> http://svn.gna.org/viewcvs/relax/branches/disp_spin_speed/target_functions/relax_disp.py?rev=23748&r1=23747&r2=23748&view=diff
> ==============================================================================
> --- branches/disp_spin_speed/target_functions/relax_disp.py     (original)
> +++ branches/disp_spin_speed/target_functions/relax_disp.py     Sun Jun  8 
> 23:56:36 2014
> @@ -553,7 +553,6 @@
>          ## Back calculate the R2eff values.
>          r2eff_CR72(r20a=self.R20A_a, r20b=self.R20B_a, pA=self.pA_a, 
> dw=self.dw_frq_a, kex=self.kex_a, cpmg_frqs=self.cpmg_frqs_a, 
> back_calc=self.back_calc_a, num_points=self.num_disp_points_a)
>
> -
>          ## For all missing data points, set the back-calculated value to the 
> measured values so that it has no effect on the chi-squared value.
>          if self.has_missing:
>              # Loop over the spins.
> @@ -566,14 +565,8 @@
>                              #self.back_calc[0][si][mi][0][di] = 
> self.values[0][si][mi][0][di]
>                              self.back_calc_a[0][si][mi][0][di] = 
> self.values[0][si][mi][0][di]
>
> -                    ## Calculate and return the chi-squared value.
> -                    #chi2_sum += chi2(self.values[0][si][mi][0], 
> self.back_calc[0][si][mi][0], self.errors[0][si][mi][0])
> -
>          ## Calculate the chi-squared statistic.
> -        chi2_sum = np.sum((1.0 / self.errors_a * (self.values_a - 
> self.back_calc_a))**2)
> -
> -        # Return the total chi-squared value.
> -        return chi2_sum
> +        return chi2_sum = np.sum((1.0 / self.errors_a * (self.values_a - 
> self.back_calc_a))**2)
>
>
>      def calc_ns_cpmg_2site_3D_chi2(self, R20A=None, R20B=None, dw=None, 
> pA=None, kex=None):
>
>
> _______________________________________________
> relax (http://www.nmr-relax.com)
>
> This is the relax-commits mailing list
> [email protected]
>
> 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
[email protected]

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