Author: tlinnet Date: Mon Jun 16 22:11:49 2014 New Revision: 24006 URL: http://svn.gna.org/viewcvs/relax?rev=24006&view=rev Log: Changed the reshaping of dw and dwH, since it is not dependent on experiment. 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=24006&r1=24005&r2=24006&view=diff ============================================================================== --- branches/disp_spin_speed/target_functions/relax_disp.py (original) +++ branches/disp_spin_speed/target_functions/relax_disp.py Mon Jun 16 22:11:49 2014 @@ -496,7 +496,7 @@ """ # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20a_struct[:] = multiply.outer( R20A.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -535,7 +535,7 @@ """ # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20a_struct[:] = multiply.outer( R20A.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -574,7 +574,7 @@ """ # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20a_struct[:] = multiply.outer( R20A.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -613,7 +613,7 @@ """ # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20a_struct[:] = multiply.outer( R20A.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -974,7 +974,7 @@ kex = params[self.end_index[1]] # Convert phi_ex from ppm^2 to (rad/s)^2. Use the out argument, to pass directly to structure. - multiply( multiply.outer( phi_ex.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) + multiply( multiply.outer( phi_ex.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1014,7 +1014,7 @@ tex = params[self.end_index[2]] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1108,7 +1108,7 @@ kex = params[self.end_index[1]] # Convert phi_ex from ppm^2 to (rad/s)^2. Use the out argument, to pass directly to structure. - multiply( multiply.outer( phi_ex.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) + multiply( multiply.outer( phi_ex.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1147,7 +1147,7 @@ kex = params[self.end_index[1]] # Convert phi_ex from ppm^2 to (rad/s)^2. Use the out argument, to pass directly to structure. - multiply( multiply.outer( phi_ex.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) + multiply( multiply.outer( phi_ex.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs_squared, out=self.phi_ex_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1187,7 +1187,7 @@ kex = params[self.end_index[1]+1] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1227,7 +1227,7 @@ kex = params[self.end_index[1]+1] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1273,8 +1273,8 @@ k_AB = pB * kex # Convert dw and dwH from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) - multiply( multiply.outer( dwH.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs_H, out=self.dwH_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dwH.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs_H, out=self.dwH_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1418,7 +1418,7 @@ kex = params[self.end_index[1]+1] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1514,9 +1514,8 @@ k_BA = pA * kex k_AB = pB * kex - # Convert dw and dwH from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) - multiply( multiply.outer( dwH.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs_H, out=self.dwH_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dwH.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs_H, out=self.dwH_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1752,7 +1751,7 @@ kex = params[self.end_index[1]+1] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1792,7 +1791,7 @@ kex = params[self.end_index[1]+1] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20 to per experiment, spin and frequency. self.r20_struct[:] = multiply.outer( R20.reshape(self.NE, self.NS, self.NM), self.no_nd_ones ) @@ -1832,7 +1831,7 @@ k_AB = params[self.end_index[1]] # Convert dw from ppm to rad/s. Use the out argument, to pass directly to structure. - multiply( multiply.outer( dw.reshape(self.NE, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) + multiply( multiply.outer( dw.reshape(1, self.NS), self.nm_no_nd_ones ), self.frqs, out=self.dw_struct ) # Reshape R20A and R20B to per experiment, spin and frequency. self.r20a_struct[:] = multiply.outer( R20A.reshape(self.NE, self.NS, self.NM), self.no_nd_ones )