Have you thought of adding profiling scripts for the 3-site dispersion
models as well?  This could just be the same as the 2-site models and
where states B and C are identical.  It should be easy and quick to
duplicate one of the 2-site model scripts, duplicate all structures
for both B and C states, and then call the 3-site target function
instead.  This would then test the speed of these changes as well, and
complete the table of speed ups for all dispersion models.

Regards,

Edward


On 20 June 2014 17:42,  <[email protected]> wrote:
> Author: tlinnet
> Date: Fri Jun 20 17:42:54 2014
> New Revision: 24211
>
> URL: http://svn.gna.org/viewcvs/relax?rev=24211&view=rev
> Log:
> Started using the newly created highher dimensional Bloch-McConnell matrix 
> for 3-site exchange.
>
> 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_3site.py
>
> Modified: branches/disp_spin_speed/lib/dispersion/ns_mmq_3site.py
> URL: 
> http://svn.gna.org/viewcvs/relax/branches/disp_spin_speed/lib/dispersion/ns_mmq_3site.py?rev=24211&r1=24210&r2=24211&view=diff
> ==============================================================================
> --- branches/disp_spin_speed/lib/dispersion/ns_mmq_3site.py     (original)
> +++ branches/disp_spin_speed/lib/dispersion/ns_mmq_3site.py     Fri Jun 20 
> 17:42:54 2014
> @@ -157,39 +157,13 @@
>              # Loop over offsets:
>              for oi in range(NO):
>                  # Extract parameters from array.
> -                r20a_i = R20A[si, mi, oi, 0]
> -                r20b_i = R20B[si, mi, oi, 0]
> -                r20c_i = R20C[si, mi, oi, 0]
> -
> -                dw_AB_i = dw_AB[si, mi, oi, 0]
> -                dw_AC_i = dw_AC[si, mi, oi, 0]
> -                dwH_AB_i = dwH_AB[si, mi, oi, 0]
> -                dwH_AC_i = dwH_AC[si, mi, oi, 0]
>                  num_points_i = num_points[si, mi, oi]
> -
> -                # Populate the m1 and m2 matrices (only once per function 
> call for speed).
> -                rmmq_3site(matrix=m1, R20A=r20a_i, R20B=r20b_i, R20C=r20c_i, 
> dw_AB=-dw_AB_i - dwH_AB_i, dw_AC=-dw_AC_i - dwH_AC_i, k_AB=k_AB, k_BA=k_BA, 
> k_BC=k_BC, k_CB=k_CB, k_AC=k_AC, k_CA=k_CA)     # D+ matrix component.
> -                rmmq_3site(matrix=m2, R20A=r20a_i, R20B=r20b_i, R20C=r20c_i, 
> dw_AB=dw_AB_i - dwH_AB_i, dw_AC=dw_AC_i - dwH_AC_i, k_AB=k_AB, k_BA=k_BA, 
> k_BC=k_BC, k_CB=k_CB, k_AC=k_AC, k_CA=k_CA)    # Z- matrix component.
>
>                  # Loop over the time points, back calculating the R2eff 
> values.
>                  for i in range(num_points_i):
> -                    m1_mat_i = m1_mat[si, mi, oi, i]
> -                    diff_m1 = m1*tcp[si, mi, oi, i] - m1_mat_i
> -                    if abs(sum(diff_m1)) > 1e-5:
> -                        print abs(sum(diff_m1))
> -                        print diff_m1
> -                        print asd
> -
> -                    m2_mat_i = m2_mat[si, mi, oi, i]
> -                    diff_m2 = m2*tcp[si, mi, oi, i] - m2_mat_i
> -                    if abs(sum(diff_m2)) > 1e-5:
> -                        print abs(sum(diff_m2))
> -                        print diff_m2
> -                        print asd
> -
>                      # The M1 and M2 matrices.
> -                    M1 = matrix_exponential(m1*tcp[si, mi, oi, i])    # 
> Equivalent to D+.
> -                    M2 = matrix_exponential(m2*tcp[si, mi, oi, i])    # 
> Equivalent to Z-.
> +                    M1 = matrix_exponential(m1_mat[si, mi, oi, i])    # 
> Equivalent to D+.
> +                    M2 = matrix_exponential(m2_mat[si, mi, oi, i])    # 
> Equivalent to Z-.
>
>                      # The complex conjugates M1* and M2*
>                      M1_star = conj(M1)    # Equivalent to D+*.
>
>
> _______________________________________________
> 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