gigablochs.rf.adiabaticity

Contents

gigablochs.rf.adiabaticity#

gigablochs.rf.adiabaticity(pulse_am, pulse_fm, dt)[source]#

Compute the adiabaticity of an RF pulse.

Parameters:
  • pulse_am (ndarray) – Amplitude modulation waveform in Tesla.

  • pulse_fm (ndarray) – Frequency modulation waveform in Hz, relative to the Larmor frequency.

  • dt (float) – Time step in seconds.

Returns:

Adiabaticity waveform.

Return type:

ndarray

Notes

The adiabaticity of an RF pulse is given by:

\[K = \frac{\left | \gamma B_{\mathrm{effective}} \right |}{\left | \dv{\varphi}{t} \right |} = \frac{\gamma\sqrt{A^2(t) + \left (\frac{f(t)}{\gammabar} \right )^2}}{\left| \dv{}{t}\left ( \arctan(\frac{\gammabar A(t)}{f(t)}) \right ) \right|}\]

where \(A(t)\) and \(f(t)\) are the amplitude and frequency modulation waveforms, respectively. The adiabaticity is a measure of the ability of the pulse to drive the magnetization to follow the instantaneous effective magnetic field in the rotating frame. When the adiabaticity is much greater than 1, for all time, the pulse is considered adiabatic.