Author: tlinnet Date: Tue Jul 22 16:51:46 2014 New Revision: 24630 URL: http://svn.gna.org/viewcvs/relax?rev=24630&view=rev Log: Code validation of lib/dispersion/ns_mmq_2site.py. Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis. Modified: branches/disp_spin_speed/lib/dispersion/ns_mmq_2site.py Modified: branches/disp_spin_speed/lib/dispersion/ns_mmq_2site.py URL: http://svn.gna.org/viewcvs/relax/branches/disp_spin_speed/lib/dispersion/ns_mmq_2site.py?rev=24630&r1=24629&r2=24630&view=diff ============================================================================== --- branches/disp_spin_speed/lib/dispersion/ns_mmq_2site.py (original) +++ branches/disp_spin_speed/lib/dispersion/ns_mmq_2site.py Tue Jul 22 16:51:46 2014 @@ -126,7 +126,7 @@ # Collect matrix. matrix = (m_r20a_tcp + m_r20b_tcp + m_k_AB_tcp + m_k_BA_tcp + m_dw_tcp_C) - + return matrix @@ -203,14 +203,14 @@ M2_star_mat = conj(M2_mat) # Repetitive dot products (minimised for speed). - M1_M2_mat = einsum('...ij,...jk', M1_mat, M2_mat) - M2_M1_mat = einsum('...ij,...jk', M2_mat, M1_mat) - M1_M2_M2_M1_mat = einsum('...ij,...jk', M1_M2_mat, M2_M1_mat) - M2_M1_M1_M2_mat = einsum('...ij,...jk', M2_M1_mat, M1_M2_mat) - M1_M2_star_mat = einsum('...ij,...jk', M1_star_mat, M2_star_mat) - M2_M1_star_mat = einsum('...ij,...jk', M2_star_mat, M1_star_mat) - M1_M2_M2_M1_star_mat = einsum('...ij,...jk', M1_M2_star_mat, M2_M1_star_mat) - M2_M1_M1_M2_star_mat = einsum('...ij,...jk', M2_M1_star_mat, M1_M2_star_mat) + M1_M2_mat = einsum('...ij, ...jk', M1_mat, M2_mat) + M2_M1_mat = einsum('...ij, ...jk', M2_mat, M1_mat) + M1_M2_M2_M1_mat = einsum('...ij, ...jk', M1_M2_mat, M2_M1_mat) + M2_M1_M1_M2_mat = einsum('...ij, ...jk', M2_M1_mat, M1_M2_mat) + M1_M2_star_mat = einsum('...ij, ...jk', M1_star_mat, M2_star_mat) + M2_M1_star_mat = einsum('...ij, ...jk', M2_star_mat, M1_star_mat) + M1_M2_M2_M1_star_mat = einsum('...ij, ...jk', M1_M2_star_mat, M2_M1_star_mat) + M2_M1_M1_M2_star_mat = einsum('...ij, ...jk', M2_M1_star_mat, M1_M2_star_mat) # Loop over spins. for si in range(NS): @@ -351,13 +351,13 @@ m2_mat = rmmq_2site_rankN(R20A=R20A, R20B=R20B, dw=-dw, k_AB=k_AB, k_BA=k_BA, tcp=tcp) # The A+/- matrices. - A_pos_mat = matrix_exponential_rank_NS_NM_NO_ND_x_x(m1_mat, dtype=complex64) - A_neg_mat = matrix_exponential_rank_NS_NM_NO_ND_x_x(m2_mat, dtype=complex64) + A_pos_mat = matrix_exponential_rank_NS_NM_NO_ND_x_x(m1_mat, dtype=complex64) + A_neg_mat = matrix_exponential_rank_NS_NM_NO_ND_x_x(m2_mat, dtype=complex64) # The evolution for one n. - evol_block_mat = einsum('...ij,...jk', A_neg_mat, A_pos_mat) - evol_block_mat = einsum('...ij,...jk', A_neg_mat, evol_block_mat) - evol_block_mat = einsum('...ij,...jk', A_pos_mat, evol_block_mat) + evol_block_mat = einsum('...ij, ...jk', A_neg_mat, A_pos_mat) + evol_block_mat = einsum('...ij, ...jk', A_neg_mat, evol_block_mat) + evol_block_mat = einsum('...ij, ...jk', A_pos_mat, evol_block_mat) # Loop over spins. for si in range(NS):