initialize_3D_wave_caipi

initialize_3D_wave_caipi#

mrinufft.trajectories.trajectory3D.initialize_3D_wave_caipi(Nc, Ns, nb_revolutions=5, width=1, packing='triangular', shape='square', spacing=(1, 1))[source]#

Initialize 3D trajectories with Wave-CAIPI.

This implementation is based on the work from [Bil+15].

Parameters:
  • Nc (int) – Number of shots

  • Ns (int) – Number of samples per shot

  • nb_revolutions (float, optional) – Number of revolutions, by default 5

  • width (float, optional) – Diameter of the helices normalized such that width=1 densely covers the k-space without overlap for square packing, by default 1.

  • packing (str, optional) – Packing method used to position the helices: “triangular”/”hexagonal”, “square”, “circular” or “random”/”uniform”, by default “triangular”.

  • shape (str or float, optional) – Shape over the 2D \(k_x-k_y\) plane to pack with shots, either defined as str (“circle”, “square”, “diamond”) or as float through p-norms following the conventions of the ord parameter from numpy.linalg.norm, by default “circle”.

  • spacing (tuple(int, int)) – Spacing between helices over the 2D \(k_x-k_y\) plane normalized similarly to width to correspond to helix diameters, by default (1, 1).

Returns:

3D wave-CAIPI trajectory

Return type:

array_like

References

[Bil+15]

Bilgic, Berkin, Borjan A. Gagoski, Stephen F. Cauley, Audrey P. Fan, Jonathan R. Polimeni, P. Ellen Grant, Lawrence L. Wald, and Kawin Setsompop. “Wave‐CAIPI for highly accelerated 3D imaging.” Magnetic resonance in medicine 73, no. 6 (2015): 2152-2162.