deepmr.fft.plan_toeplitz_nufft

deepmr.fft.plan_toeplitz_nufft#

deepmr.fft.plan_toeplitz_nufft(coord, shape, basis=None, dcf=None, width=4, device='cpu')[source]#

Compute spatio-temporal kernel for fast self-adjoint operation.

Parameters:
  • coord (torch.Tensor) – K-space coordinates of shape (ncontrasts, nviews, nsamples, ndims). Coordinates must be normalized between (-0.5 * shape[i], 0.5 * shape[i]), with i = (z, y, x).

  • shape (int | Iterable[int]) – Oversampled grid size of shape (ndim,). If scalar, isotropic matrix is assumed.

  • basis (torch.Tensor, optional) – Low rank subspace projection operator of shape (ncontrasts, ncoeffs); can be None. The default is None.

  • dcf (torch.Tensor, optional) – Density compensation function of shape (ncontrasts, nviews, nsamples). The default is a tensor of 1.0.

  • width (int | Iterable[int], optional) – Interpolation kernel full-width of shape (ndim,). If scalar, isotropic kernel is assumed. The default is 3.

  • device (str, optional) – Computational device (cpu or cuda:n, with n=0, 1,...nGPUs). The default is cpu.

Returns:

toeplitz_kernel – Structure containing Toeplitz kernel (i.e., Fourier transform of system tPSF).

Return type:

GramMatrix