Skip to content

sigpy.mri.samp.spiral #146

Description

@ZhengguoTan

Dear sigpy developers,

I may have a question regarding the implementation of the spiral function in sigpy.mri.samp. I try a toy example:

from sigpy.mri import samp
import numpy as np

fov = 200E-3
N = 160
f_sampling = 0.1
R = 6
ninterleaves = 1
alpha = 4
gm = 0.054  # T/m
sm = 150    # T/m/s

gamma = 42.577478E6  # Hz/T

k = samp.spiral(fov, N, f_sampling, R, ninterleaves, alpha, gm, sm)

dt = 4.12E-7  # s

grad = (k[1:, :] - k[:-1, :]) / dt / gamma

print(k.shape, grad.shape)

assert np.all(abs(grad) < gm)

Here, dt is the time increment that I got from https://github.com/mikgroup/sigpy/blob/main/sigpy/mri/samp.py#L312. With dt, I then convert the k to gradients grad. In principle, the gradients should not exceed the max gradient amplitude gm. However, the assert does not pass.

Do I miss anything in the spiral trajectory computation function? Any suggestion would be appreciated.

Best Regards,
Zhengguo

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions