Package lib :: Package dispersion :: Module ns_cpmg_2site_star
[hide private]
[frames] | no frames]

Module ns_cpmg_2site_star

source code

The numerical fit of 2-site Bloch-McConnell equations for CPMG-type experiments, the NS CPMG 2-site star and NS CPMG 2-site star full models.

Description

The function uses an explicit matrix that contains relaxation, exchange and chemical shift terms. It does the 180deg pulses in the CPMG train with conjugate complex matrices. The approach of Bloch-McConnell can be found in chapter 3.1 of Palmer, A. G. 2004 Chem. Rev., 104, 3623-3640. This function was written, initially in MATLAB, in 2010.

Code origin

The code was submitted at http://thread.gmane.org/gmane.science.nmr.relax.devel/4132 by Paul Schanda.

Links

More information on the NS CPMG 2-site star model can be found in the:

More information on the NS CPMG 2-site star full model can be found in the:

Functions [hide private]
 
r2eff_ns_cpmg_2site_star(Rr=None, Rex=None, RCS=None, R=None, M0=None, r20a=None, r20b=None, dw=None, inv_tcpmg=None, tcp=None, back_calc=None, num_points=None, power=None)
The 2-site numerical solution to the Bloch-McConnell equation using complex conjugate matrices.
source code
Variables [hide private]
  __package__ = 'lib.dispersion'

Imports: log, add, complex, conj, dot, isNaN, matrix_exponential, square_matrix_power


Function Details [hide private]

r2eff_ns_cpmg_2site_star(Rr=None, Rex=None, RCS=None, R=None, M0=None, r20a=None, r20b=None, dw=None, inv_tcpmg=None, tcp=None, back_calc=None, num_points=None, power=None)

source code 

The 2-site numerical solution to the Bloch-McConnell equation using complex conjugate matrices.

This function calculates and stores the R2eff values.

Parameters:
  • Rr (numpy complex64, rank-2, 2D array) - The matrix that contains only the R2 relaxation terms ("Redfield relaxation", i.e. non-exchange broadening).
  • Rex (numpy complex64, rank-2, 2D array) - The matrix that contains the exchange terms between the two states A and B.
  • RCS (numpy complex64, rank-2, 2D array) - The matrix that contains the chemical shift evolution. It works here only with X magnetization, and the complex notation allows to evolve in the transverse plane (x, y).
  • R (numpy complex64, rank-2, 2D array) - The matrix that contains all the contributions to the evolution, i.e. relaxation, exchange and chemical shift evolution.
  • M0 (numpy float64, rank-1, 2D array) - This is a vector that contains the initial magnetizations corresponding to the A and B state transverse magnetizations.
  • r20a (float) - The R2 value for state A in the absence of exchange.
  • r20b (float) - The R2 value for state B in the absence of exchange.
  • dw (float) - The chemical exchange difference between states A and B in rad/s.
  • inv_tcpmg (float) - The inverse of the total duration of the CPMG element (in inverse seconds).
  • tcp (numpy rank-1 float array) - The tau_CPMG times (1 / 4.nu1).
  • back_calc (numpy rank-1 float array) - The array for holding the back calculated R2eff values. Each element corresponds to one of the CPMG nu1 frequencies.
  • num_points (int) - The number of points on the dispersion curve, equal to the length of the tcp and back_calc arguments.
  • power (numpy int16, rank-1 array) - The matrix exponential power array.