pygrappa.radialgrappaop

Python implementation of Radial GRAPPA operator.

pygrappa.radialgrappaop.radialgrappaop(kx, ky, k, nspokes=None, spoke_axis=-2, coil_axis=-1, spoke_axis_coord=-1, lamda=0.01, ret_lGtheta=False, traj_warn=True)[source]

Non-Cartesian Radial GRAPPA operator.

Parameters:
  • ky (kx,) – k-space coordinates of kspace data, k. kx and ky are 2D arrays containing (sx, nr) : (number of samples along ray, number of rays).
  • k (array_like) – Complex kspace data corresponding to the measurements at locations kx, ky. k has three dimensions: sx, nr, and coil.
  • nspokes (int, optional) – Number of spokes. Used when (kx, ky) and k are given with flattened sample and spoke axes, i.e., (sx*nr, nc).
  • spoke_axis (int, optional) – Axis of k that contains the spoke data. Not for kx, ky: see spoke_axis_coord to specify spoke axis for kx and ky.
  • coil_axis (int, optional) – Axis of k that contains the coil data.
  • spoke_axis_coord (int, optional) – Axis of kx and ky that hold the spoke data.
  • lamda (float, optional) – Tikhonov regularization term used both for fitting Gtheta and log(Gx), log(Gy).
  • ret_lGtheta (bool, optional) – Return log(Gtheta) instead of Gx, Gy.
  • traj_warn (bool, optional) – Warn about potential inconsistencies in trajectory, e.g., not shaped correctly.
Returns:

Gx, Gy – GRAPPA operators along the x and y axes.

Return type:

array_like

Raises:

AssertionError – If kx and ky do not have spokes along spoke_axis_coord or if the standard deviation of distance between spoke points is greater than or equal to 1e-10.

Notes

Implements the radial training scheme for self calibrating GRAPPA operators in [1]. Too many coils could lead to instability of matrix exponents and logarithms – use PCA or other suitable coil combination technique to reduce dimensionality if needed.

References

[1]Seiberlich, Nicole, et al. “Self‐calibrating GRAPPA operator gridding for radial and spiral trajectories.” Magnetic Resonance in Medicine: An Official Journal of the International Society for Magnetic Resonance in Medicine 59.4 (2008): 930-935.