slr_pulse.m
Shinnar-Le Roux linear-phase selective excitation pulse.
The 90-degree excitation ripple targets are first converted into beta-polynomial targets, sqrt(pass_rip/2) and stop_rip/sqrt(2), and the transition width is estimated from them using the Pauly relation; the passband and stopband edges follow from the time-bandwidth product and the slice count, and specifications that do not leave a valid transition band below Nyquist are rejected. The beta polynomial is obtained by continuous weighted least squares in a half-integer cosine basis, with the Gram matrix and the moment vector evaluated by numerical integration over the passband and the stopband and the stopband weighted by the ratio of the two beta targets; the normal equations are solved through a Cholesky decomposition, and the resulting symmetric coefficient set is rescaled so that the centre response equals sin(flip_angle/2). The beta response is then sampled on an oversampled Fourier grid, the complementary magnitude sqrt(1-|B|^2) is turned into the minimum-phase alpha polynomial by cepstral factorisation, and one Cayley-Klein rotation per slice is removed by the inverse SLR recursion. The per-slice rotation angles are divided by the slice duration to give the control amplitudes, which are returned in both Cartesian and polar form.
Syntax
[Cx,Cy,durs,amps,phis]=slr_pulse(npts,dur,tbw,flip_angle,pass_rip,stop_rip)
Parameters
npts - even number of piecewise-constant pulse slices
dur - total pulse duration, seconds
tbw - time-bandwidth product, defined as the pulse
duration times the nominal full passband width
flip_angle - on-resonance flip angle between zero and pi/2,
radians
pass_rip - 90-degree excitation passband ripple target used
in the prototype design, dimensionless
stop_rip - 90-degree excitation stopband ripple target used
in the prototype design, dimensionless
Outputs
Cx - X control amplitudes, rad/s, 1 x npts row vector
Cy - Y control amplitudes, rad/s, 1 x npts row vector
durs - pulse slice durations, seconds, 1 x npts row vector
amps - RF amplitudes, rad/s, 1 x npts row vector
phis - RF phases, radians, 1 x npts row vector
Notes
The beta polynomial is obtained by continuous weighted least squares in a linear-phase cosine basis. The complementary minimum-phase alpha polynomial and the RF waveform are then obtained by the inverse SLR transform. The ripple arguments enter the excitation-pulse transform and the transition-width estimate of Pauly et al.; they are design targets rather than guaranteed minimax error bounds. For flip angles below pi/2, they do not specify angle-independent magnetisation error bounds.
The output controls are calibrated for Spinach propagation under exp(-1i*H*t) and may be passed directly to shaped_pulse_xy.m.
J. Pauly, P. Le Roux, D. Nishimura, and A. Macovski, IEEE Transactions on Medical Imaging 10(1), 53-65 (1991), https://doi.org/10.1109/42.75611
See also
shaped_pulse_xy.m, shaped_pulse_af.m, sech_pulse.m, chirp_pulse.m, pulse_shape.m, Kernel functions
Version 2.13, authors: Ilya Kuprov