Note
Go to the end to download the full example code.
2D Cartesian multi-echo gradient echo#
A spoiled low-flip-angle excitation is followed by several Cartesian gradient echoes of the same phase-encode line. Gradient and RF spoiling suppress residual transverse coherence before the next TR. The echo train samples T2* decay while TR and flip angle determine the T1 weighting. Multi-echo GRE is used for T2*/R2* mapping, susceptibility mapping, and structural imaging.
Four-echo train#
Four echoes after each excitation, with readout gradients of alternating polarity.
import pypulseqpp as pp
from pypulseqpp.sequences import gre_multiecho2D_sequence
baseline = gre_multiecho2D_sequence(
n_x=192, n_y=192, n_slices=1, n_echoes=4, te=None, tr=None, n_dummy=0
)
print(f"{baseline.num_blocks} blocks, {baseline.duration()[0]:.2f} s")
print("TE", [round(t * 1e3, 2) for t in baseline.get_definition("TE")], "ms")
2112 blocks, 4.54 s
TE [4.02, 8.7, 13.38, 18.06] ms
Sequence diagram#

Sampling order#
Colour encodes acquisition order. The echoes of one excitation sample the same phase-encode line.
pp.plot.plot_kspace(baseline, color_by="order", plane="xy", show_trajectory=False)

A longer echo train#
Additional echoes extend the sampled decay curve and increase the minimum repetition time and final echo time.
alternative = gre_multiecho2D_sequence(
n_x=192, n_y=192, n_slices=1, n_echoes=8, te=None, tr=None, n_dummy=0
)
blocks duration (s) acquisitions
4 echoes 2112 4.54 768
8 echoes 3648 8.13 1536
pp.plot.plot_kspace(alternative, color_by="order", plane="xy", show_trajectory=False)

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