I should also comment the matrices, in addition to the other comments. Edward, I also have a question to line 75: where does the factor 2 come from? that was not in the original version. I don't see what it does. I think it should not be there. 
 
 
 
 | 70 | 
    # Initialise some structures.
 | 
 
| 71 | 
    Rr  = -1.0 * matrix([[r20b, 0.0],[0.0, r20a]])	# This is the matrix that contains only the R2 relaxation terms ("Redfield relaxation", i.e. non-exchange broadening) | 
 
| 72 | 
    Rex = -1.0 * matrix([[kge, -keg],[-kge, keg]])	# This matrix contains the exchange terms between the two states G and G | 
 
| 73 | 
    RCS = complex(0.0, -1.0) * matrix([[0.0, 0.0],[0.0, fg]])	# This matrix 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) | 
 
| 74 | 
    R = Rr + Rex + RCS	# This is the matrix that contains all the contributions to the evolution, i.e. relaxation, exchange and chemical shift evolution | 
 
| 75 | 
    cR2 = conj(R) * 2.0	# This is the complex conjugate of the above. It allows the chemical shift to run in the other direction, i.e. it is used to evolve the shift AFTER a 180deg pulse. | 
 
  | 
  |  
 
  |