3D Cartesian spin echo

3D Cartesian spin echo#

Family:

Spin echo

Dimensionality:

3D, slab-selective

Sampling:

Cartesian

Readout:

One (line, partition) view per excitation, read at a refocused echo

3D Cartesian spin echo: one (line, partition) view per excitation.

Prescription#

pypulseqpp.sequences.se3D_sequence()#

3D Cartesian spin echo: one (line, partition) view per excitation.

A 90 from the selected excitation, a nonselective 180 between crushers half a TE later, and one line phase-encoded along y and z at the echo. The views are chosen and ordered as gre3D_sequence chooses them.

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>.seq when omitted.

  • system (pypulseqpp.Opts, default=None) – System limits, held under the application’s MAX_GRAD and MAX_SLEW.

  • fov_x (float, default=0.22) – Field of view along the readout, the phase encode and the partition encode (m). The slab excited is fov_z thick.

  • fov_y (float, default=0.22) – Field of view along the readout, the phase encode and the partition encode (m). The slab excited is fov_z thick.

  • fov_z (float, default=0.128) – Field of view along the readout, the phase encode and the partition encode (m). The slab excited is fov_z thick.

  • n_x (int, default=128) – Matrix size along the readout, the phase encode and the partition encode.

  • n_y (int, default=128) – Matrix size along the readout, the phase encode and the partition encode.

  • n_z (int, default=64) – Matrix size along the readout, the phase encode and the partition encode.

  • te (float | None, default=None) – Echo time (s), excitation centre to echo, with the refocusing pulse at its midpoint. None is as short as possible.

  • tr (float | None, default=0.1) – Repetition time (s), one per excitation. None is as short as possible.

  • readout_bandwidth_hz (float, default=250000.0) – Requested receiver bandwidth (Hz).

  • ry (int, default=1) – Undersampling along the phase and the partition encode.

  • rz (int, default=1) – Undersampling along the phase and the partition encode.

  • caipi_shift (int, default=0) – CAIPIRINHA shift: partitions by which the lattice is displaced per acquired line, in [0, rz).

  • partial_fourier_x (float, default=1.0) – Fraction of the echo acquired, in [0.75, 1].

  • partial_fourier_y (float, default=1.0) – Fraction of the phase- and partition-encode extent acquired, in [0.75, 1].

  • partial_fourier_z (float, default=1.0) – Fraction of the phase- and partition-encode extent acquired, in [0.75, 1].

  • n_dummy (int, default=0) – Non-acquiring repetitions before the first view.

  • excitation ({'slab', 'nonselective', 'spsp'}, default='slab') – A slab-selective SLR pulse, a hard pulse, or a slab- and water-selective spectral-spatial pulse.

  • readout_oversampling (float, default=2.0) – Readout oversampling factor, at least one.

  • n_acs_y (int, default=24) – Extent of the fully sampled calibration region along the phase and the partition encode, acquired ahead of the rest when undersampled.

  • n_acs_z (int, default=16) – Extent of the fully sampled calibration region along the phase and the partition encode, acquired ahead of the rest when undersampled.

  • elliptical_sampling (bool, default=True) – Acquire only the views inside the ellipse inscribed in the n_y x n_z grid; off, the whole grid. The calibration region is acquired whole either way.

  • elliptical_acs (bool, default=False) – Make the calibration region the ellipse inscribed in the n_acs_y x n_acs_z rectangle rather than the rectangle.

  • wave ({'phase', 'partition', 'both'}, default='both') – Wave-CAIPI channels: a sine on y, a cosine on z, or both. With wave-encoding gradients the calibration region is acquired again first without them, marked REF, and no wave-encoded view is marked IMA.

  • wave_cycles (int, default=8) – Wave periods across the sampling window; zero plays no wave.

  • wave_amplitude (float, default=0.0) – Requested peak wave-encoding gradient amplitude (T/m); zero, the default, plays no wave. The slew rate may lower it.

Returns:

The designed sequence.

Return type:

pypulseqpp.Sequence

Raises:

ValueError – If excitation is unknown, a partial Fourier fraction is outside [0.75, 1], an undersampling factor is below one, caipi_shift is outside [0, rz), wave names no wave mode, or the TE or TR is shorter than the pulses and the readout take.

Examples

>>> from pypulseqpp import sequences
>>> seq = sequences.se3D_sequence(n_x=32, n_y=8, n_z=4, tr=None)
>>> seq.check_timing()[0]
True

Designed and drawn#

3D Cartesian spin echo

3D Cartesian spin echo

See also#

Other spin echo sequences: se2D_sequence, se_radial2D_sequence, se_stack_of_stars3D_sequence, se_spiral2D_sequence, se_stack_of_spirals3D_sequence, se_propeller2D_sequence, se_epi_propeller2D_sequence, se_stack_of_blades3D_sequence.

The same sampling in another family: gre2D_sequence, gre3D_sequence, gre_multiecho2D_sequence, gre_multiecho3D_sequence, fse3D_sequence, mprage3D_sequence, bssfp2D_sequence, bssfp3D_sequence, epi2D_sequence.

Every shipped sequence is listed in the catalogue.