mdreg.fit_spgr_vfa#

mdreg.fit_spgr_vfa(signal, FA=None, parallel=True, bounds=([0, 0], [inf, 1]), p0=[1, 0.5], **kwargs)[source]#

Non-linear fit to a variable flip angle model.

\[S(\mathbf{r},\alpha) = S_0(\mathbf{r}) \sin(\alpha) \frac{1 - e^{-T_R/T_1(\mathbf{r})}}{1 - \cos(\alpha) e^{-T_R/T_1(\mathbf{r})}}\]
Parameters:
  • signal (numpy.ndarray | zarr.Array) – Array with signal intensities for different flip angles (FA). Dimensions are (x,y,FA) or (x,y,z,FA)

  • FA (array-like) – Flip angles in degrees (required). This is a 1D array with the same length as the last dimension of the signal array. Defaults to None.

  • parallel (bool) – If True, use parallel processing. Default is False.

  • bounds (tuple) – Bounds for the fit as (lower_bound, upper_bound) where lower_bound and upper_bound are either a scalar or a list of 3 values.

  • p0 (list) – Initial values as a 3-element list.

  • **kwargs – Additional keyword arguments accepted by fit_pixels.

Returns:

  • fit (numpy.ndarray | zarr.Array) – Fit to the signal data, with same dimensions as the signal array.

  • pars (numpy.ndarray | zarr.Array) – Fitted model parameters S0 and E. Dimensions are (x,y,2) or (x,y,z,2).