2D Cartesian multi-echo gradient echo#
- Family:
Gradient echo
- Dimensionality:
2D, multi-slice
- Sampling:
Cartesian
- Readout:
One phase-encode line read at several echo times per repetition
RF-spoiled, multi-slice multi-echo 2D Cartesian gradient echo.
Prescription#
- pypulseqpp.sequences.gre_multiecho2D_sequence()#
RF-spoiled, multi-slice multi-echo 2D Cartesian gradient echo.
One line per repetition, read at
n_echoesecho times: monopolar, with a flyback rewinder after every echo but the last, or bipolar, with even echoes read backwards. Each acquisition carries its echo index asECO. Slices one TR cannot hold are dealt round-robin into packets, played one after another; within a packet the even slices are excited before the odd ones. Every packet starts with its own dummy repetitions, and the last slice of a packet waits out the rest of the TR. Under undersampling the calibration lines are acquired first, markedIMA.- Parameters:
plot (bool, default=False) – Draw the finished sequence in SeqEyes.
test_report (bool, default=False) – Print a report on the finished sequence.
write_seq (bool, default=False) – Write the sequence to a .seq file.
seq_filename (str, default=None) – Where to write it;
<NAME>.seqwhen omitted.system (pypulseqpp.Opts, default=None) – System limits, held under the application’s
MAX_GRADandMAX_SLEW.fov_x (float, default=0.22) – Field of view along the readout and the phase encode (m).
fov_y (float, default=0.22) – Field of view along the readout and the phase encode (m).
n_x (int, default=128) – Readout matrix size.
n_y (int, default=128) – Phase-encode matrix size.
n_slices (int, default=1) – Number of slices.
slice_thickness (float, default=0.005) – Slice thickness (m).
slice_spacing (float, default=0.0) – Gap between adjacent slices (m); zero is contiguous.
flip_angle_deg (float, default=12.0) – Excitation flip angle (degrees).
te (float | None, default=None) – First echo time (s).
Noneis as short as the readout admits.tr (float | None, default=0.25) – Repetition time between successive excitations of one slice (s).
Noneis as short as possible, and puts every slice in one packet.n_echoes (int, default=4) – Echoes per excitation.
readout_bandwidth_hz (float, default=250000.0) – Requested receiver bandwidth (Hz). What was achieved is the readout module’s
bandwidth_hz.ry (int, default=1) – Phase-encode undersampling: one line in every
ryis acquired, the centre line among them.partial_fourier_x (float, default=1.0) – Fraction of the echo acquired, in
[0.75, 1]. Truncates the samples before the echo, which shortens the minimum TE. A bipolar train needs a full echo.partial_fourier_y (float, default=1.0) – Fraction of the phase-encode extent acquired, in
[0.75, 1]. Truncates the lines before the centre.n_dummy (int, default=16) – Non-acquiring repetitions before the first line of each packet.
readout_oversampling (float, default=2.0) – Readout oversampling factor, at least one.
n_acs_y (int, default=24) – Fully sampled calibration lines at the centre of k-space, acquired ahead of the rest when
ry > 1.echo_spacing (float | None, default=None) – Echo spacing (s).
Noneis as short as the readout admits; a longer one adds a delay after every echo but the last, following the flyback rewinder of a monopolar train.flyback (bool, default=True) – Monopolar echo train, rewound after every echo but the last so every echo is read the same way; off, a bipolar train. A bipolar train has a shorter echo spacing and reads even echoes backwards.
- Returns:
The designed sequence.
- Return type:
- Raises:
ValueError – If a partial Fourier fraction is outside
[0.75, 1],ryis below one, the echo spacing is shorter than the readout admits, a bipolar train is given a partial echo or an odd sample count, or the TR cannot hold one slice.
Examples
>>> from pypulseqpp import sequences >>> seq = sequences.gre_multiecho2D_sequence( ... n_x=32, n_y=16, n_echoes=3, tr=None ... ) >>> seq.check_timing()[0] True >>> len(seq.definitions["TE"]), seq.definitions["Name"] (3, 'gre_multiecho_2d')
Designed and drawn#
See also#
Other gradient echo sequences: gre2D_sequence, gre3D_sequence, gre_multiecho3D_sequence, gre_radial2D_sequence, gre_stack_of_stars3D_sequence, gre_spiral2D_sequence, gre_stack_of_spirals3D_sequence, gre_propeller2D_sequence, gre_stack_of_blades3D_sequence.
The same sampling in another family: se2D_sequence, se3D_sequence, fse3D_sequence, mprage3D_sequence, bssfp2D_sequence, bssfp3D_sequence, epi2D_sequence.
Every shipped sequence is listed in the catalogue.