Hi Troels,

Actually, a better name might be chi2_rankN(), as this is for multiple
rank rather than multiple dimensions.  The rank of A would be
len(A.shape), whereas the dimensions for each rank would be
A.shape[0], A.shape[1], etc.  What do you think?  Would you have an
idea for a better name?

Regards,

Edward



On 10 June 2014 18:54,  <[email protected]> wrote:
> Author: tlinnet
> Date: Tue Jun 10 18:54:28 2014
> New Revision: 23799
>
> URL: http://svn.gna.org/viewcvs/relax?rev=23799&view=rev
> Log:
> Added a multi-dimensional numpy array chi2 value calculation function.
>
> Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion 
> models for Clustered analysis.
>
> Modified:
>     branches/disp_spin_speed/target_functions/chi2.py
>
> Modified: branches/disp_spin_speed/target_functions/chi2.py
> URL: 
> http://svn.gna.org/viewcvs/relax/branches/disp_spin_speed/target_functions/chi2.py?rev=23799&r1=23798&r2=23799&view=diff
> ==============================================================================
> --- branches/disp_spin_speed/target_functions/chi2.py   (original)
> +++ branches/disp_spin_speed/target_functions/chi2.py   Tue Jun 10 18:54:28 
> 2014
> @@ -63,6 +63,46 @@
>
>      # Calculate the chi-squared statistic.
>      return sum((1.0 / errors * (data - back_calc_vals))**2, axis=0)
> +
> +
> +# Chi-squared value for multi-dimensional axis.
> +####################
> +
> +
> +def chi2_ND(data, back_calc_vals, errors):
> +    """Function to calculate the chi-squared value for multiple numpy array 
> axis.
> +
> +    The chi-squared equation
> +    ========================
> +
> +    The equation is::
> +
> +                        _n_
> +                        \    (yi - yi(theta)) ** 2
> +        chi^2(theta)  =  >   ---------------------
> +                        /__      sigma_i ** 2
> +                        i=1
> +
> +    where
> +        - i is the index over data sets.
> +        - theta is the parameter vector.
> +        - yi are the values of the measured data set.
> +        - yi(theta) are the values of the back calculated data set.
> +        - sigma_i are the values of the error set.
> +
> +
> +    @param data:            The multi dimensional vectors of yi values.
> +    @type data:             numpy multi dimensional array
> +    @param back_calc_vals:  The multi dimensional vectors of yi(theta) 
> values.
> +    @type back_calc_vals:   numpy multi dimensional array
> +    @param errors:          The multi dimensional vectors of sigma_i values.
> +    @type errors:           numpy multi dimensional array
> +    @return:                The chi-squared value.
> +    @rtype:                 float
> +    """
> +
> +    # Calculate the chi-squared statistic.
> +    return sum((1.0 / errors * (data - back_calc_vals))**2)
>
>
>  # Chi-squared gradient.
>
>
> _______________________________________________
> 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