Author: tlinnet Date: Tue Jun 10 18:41:03 2014 New Revision: 23794 URL: http://svn.gna.org/viewcvs/relax?rev=23794&view=rev Log: Removed the multi dimensional structure of kex. kex is not multi-dimensional, and can just be multiplied with numpy arrays. 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=23794&r1=23793&r2=23794&view=diff ============================================================================== --- branches/disp_spin_speed/target_functions/relax_disp.py (original) +++ branches/disp_spin_speed/target_functions/relax_disp.py Tue Jun 10 18:41:03 2014 @@ -552,9 +552,6 @@ # Convert dw from ppm to rad/s. dw_frq_a = dw_axis*self.spins_a*self.frqs_a - # To kex, add 1 at end of array to prevent math errors. - kex_arr = kex*self.spins_a + self.not_spins_a - # Reshape R20A and R20B to per experiment, spin and frequency. R20A_axis = R20A.reshape(self.numpy_array_shape[0], self.numpy_array_shape[1], self.numpy_array_shape[2]) R20B_axis = R20B.reshape(self.numpy_array_shape[0], self.numpy_array_shape[1], self.numpy_array_shape[2]) @@ -568,7 +565,7 @@ R20B_axis = np.tile(R20B_axis, (1, 1, 1, self.numpy_array_shape[3], self.numpy_array_shape[4])) * self.spins_a ## Back calculate the R2eff values. - r2eff_CR72(r20a=R20A_axis, r20b=R20B_axis, pA=pA, dw=dw_frq_a, kex=kex_arr, cpmg_frqs=self.cpmg_frqs_a, back_calc=self.back_calc_a, num_points=self.num_disp_points_a) + r2eff_CR72(r20a=R20A_axis, r20b=R20B_axis, pA=pA, dw=dw_frq_a, kex=kex, cpmg_frqs=self.cpmg_frqs_a, back_calc=self.back_calc_a, num_points=self.num_disp_points_a) # Clean the data for all values, which is left over at the end of arrays. self.back_calc_a = self.back_calc_a*self.spins_a