initialize_2D_vds_spiral#

mrinufft.trajectories.inits.spiral.initialize_2D_vds_spiral(Nc: int, oversamp: int = 1, acq: Acquisition | None = None, Rmin: float = 1, Rmax: float = 1, Fcoeffs: list | tuple | ndarray[tuple[int, ...], dtype[_ScalarType_co]] | None = None, krmax: float | None = None, normalize: bool = True, in_out: bool = False)[source]#

Initialize a 2D variable density spiral (VDS) trajectory.

A hardware-constrained spiral trajectory introduced by Lee, Hargreaves & Hu [Lee03], where the undersampling/acceleration factor increases linearly from Rmin at the center to Rmax at the edge of k-space.

Parameters:
  • Nc (int) – Number of interleaves for the spiral

  • oversamp (int, optional) – Oversampling factor for the trajectory calculation, by default 1

  • acq (Acquisition, optional) – Acquisition object defining the hardware constraints and imaging parameters, by default Acquisition.default

  • Rmin (float, optional) – Minimum radial acceleration factor, by default 1

  • Rmax (float, optional) – Maximum radial acceleration factor (reached at krmax), by default 1

  • Fcoeffs (list | tuple | NDArray, optional) – Coefficients of the polynomial describing the radial acceleration factor F(r) = Fcoeffs[0] + Fcoeffs[1]*(r/krmax) + Fcoeffs[2]*(r/krmax)**2 + … If None, it is set to [fov/Rmin, fov/Rmax-fov/Rmin] (linear from Rmin to Rmax)

  • krmax (float, optional) – Maximum radius for the spiral. If normalize is True, this is in arbitrary units, else in 1/m. By default 0.5 when normalize is True.

  • normalize (bool, optional) – Whether to normalize the trajectory to the resolution (True) or return in 1/m (False), by default True

  • in_out (bool, optional) – Whether to start from the center or not, by default False

Returns:

The 2D VDS spiral trajectory of shape (Nc, Ns, 2)

Return type:

NDArray

Notes

Adapted from Brian Hargreaves MATLAB implementation

References

[Lee03]

Lee, Jin Hyung, Brian A. Hargreaves, Bob S. Hu, and Dwight G. Nishimura. “Fast 3D imaging using variable-density spiral trajectories with applications to limb perfusion.” Magnetic Resonance in Medicine 50, no. 6 (2003): 1276-1285.