Note
Go to the end to download the full example code.
2D radial spin echo#
A slice-selective excitation and 180-degree refocusing pulse form one spin echo, followed by a radial spoke through k-space centre. Spoilers suppress unwanted coherence before the next TR. TE controls T2 weighting and TR controls longitudinal recovery. Radial spin echo supports motion-robust structural imaging.
Nyquist angular sampling#
ceil(pi / 2 * n) spokes over half a turn, which sample the outer
radius at the Nyquist spacing.
import pypulseqpp as pp
from pypulseqpp.sequences import se_radial2D_sequence
baseline = se_radial2D_sequence(n=192, n_slices=1, te=None, tr=None, n_dummy=0)
print(f"{baseline.num_blocks} blocks, {baseline.duration()[0]:.2f} s")
2114 blocks, 5.90 s
Sequence diagram#

Sampling order#
Colour encodes spoke acquisition order.
pp.plot.plot_kspace(baseline, color_by="shot", plane="xy")

Angular undersampling#
Retaining one spoke angle in three reduces peripheral angular sampling; every acquired spoke still crosses the k-space origin.
alternative = se_radial2D_sequence(n=192, n_slices=1, ry=3, te=None, tr=None, n_dummy=0)
blocks duration (s) acquisitions
Nyquist 2114 5.90 302
ry = 3 707 1.97 101
pp.plot.plot_kspace(alternative, color_by="shot", plane="xy")

Total running time of the script: (0 minutes 2.747 seconds)