spgr_sim

Contents

spgr_sim#

torchsim.spgr_sim(flip, TE, TR, T1, T2star, diff=None, B0=0.0, chemshift=0.0, M0=1.0, chunk_size=None, device=None)[source]#

SPoiled Gradient Recalled echo simulator wrapper.

Parameters:
  • flip (float | npt.ArrayLike) – Flip angle train in degrees.

  • TE (float | npt.ArrayLike) – Echo time in milliseconds.

  • TR (float | npt.ArrayLike) – Repetition time in milliseconds.

  • T1 (float | npt.ArrayLike) – Longitudinal relaxation time in milliseconds.

  • T2star (float | npt.ArrayLike) – Effective transverse relaxation time in milliseconds.

  • diff (str | tuple[str], optional) – Arguments to get the signal derivative with respect to. The default is None (no differentation).

  • B0 (float | npt.ArrayLike, optional) – Frequency offset map in Hz, default is 0.0.

  • chemshift (float | npt.ArrayLik, optional) – Chemical shift in Hz, default is 0.0.

  • M0 (float or array-like, optional) – Proton density scaling factor, default is 1.0.

  • chunk_size (int, optional) – Number of atoms to be simulated in parallel. The default is None.

  • device (str | torch.device, optional) – Computational device for simulation. The default is None (infer from input).

Returns:

  • sig (npt.ArrayLike) – Signal evolution of shape (..., len(flip)).

  • jac (npt.ArrayLike) – Derivatives of signal wrt diff parameters, of shape (..., len(diff), len(flip)). Not returned if diff is None.