Note
Go to the end to download the full example code.
2D PROPELLER spin echo with echo-planar blades#
A slice-selective excitation and 180-degree refocusing pulse form a spin echo, followed by an echo-planar readout of one rotating PROPELLER blade. Spoilers suppress unwanted coherence between shots. TE controls T2 weighting, while the EPI train introduces off-resonance sensitivity. This sequence supports rapid, motion-robust structural imaging.
Sixteen-line blades#
Sixteen lines per blade, each blade acquired after one excitation.
import pypulseqpp as pp
from pypulseqpp.sequences import se_epi_propeller2D_sequence
baseline = se_epi_propeller2D_sequence(
n_x=192, blade_width=16, n_slices=1, te=60e-3, tr=None, n_dummy=0
)
print(f"{baseline.num_blocks} blocks, {baseline.duration()[0]:.2f} s")
437 blocks, 1.46 s
Sequence diagram#

Sampling order#
Colour encodes blade acquisition order. All lines within one blade are acquired in a single echo train.
pp.plot.plot_kspace(baseline, color_by="shot", plane="xy")

Wider blades#
A wider blade requires a longer echo-planar train. Each blade covers more of the k-space disc, and more off-resonance phase accumulates across the blade’s phase-encode direction.
alternative = se_epi_propeller2D_sequence(
n_x=192, blade_width=24, n_slices=1, te=60e-3, tr=None, n_dummy=0
)
blocks duration (s) acquisitions
16 lines 437 1.46 304
24 lines 403 1.11 312
pp.plot.plot_kspace(alternative, color_by="shot", plane="xy")

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