fit_mrtm_2003_to_tac#

petpal.kinetic_modeling.reference_tissue_models.fit_mrtm_2003_to_tac(tac_times_in_minutes: numpy.ndarray, tgt_tac_vals: numpy.ndarray, ref_tac_vals: numpy.ndarray, t_thresh_in_mins: float, weights: numpy.ndarray = None)#

Fit the 2003 Multilinear Reference Tissue Model (MRTM) to the provided target Time Activity Curve (TAC) values given the reference TAC, times, and threshold time (in minutes). The data are fit for all values beyond the threshold. We assume that the target TAC and reference TAC are sampled at the same times.

Important

This function assumes that both TACs are sampled at the same time, and that the time is in minutes.

We have the following multilinear regression:

\[C(T)=-\frac{V}{V^{\prime}b} \int_{0}^{T}C^{\prime}(t)\mathrm{d}t + \frac{1}{b} \int_{0}^{T}C(t)\mathrm{d}t - \frac{V}{V^{\prime}k_{2}^{\prime}b}C^{\prime}(T)\]
Parameters:
  • tac_times_in_minutes (np.ndarray) – The array representing the time-points for both TACs.

  • tgt_tac_vals (np.ndarray) – Target TAC values to fit the MRTM.

  • ref_tac_vals (np.ndarray) – Reference TAC values.

  • t_thresh_in_mins (float) – Threshold time in minutes.

  • weights (np.ndarray) – Weights applied to each frame. Default None.

Returns:

np.ndarray – Array containing fit results. (\(-\frac{V}{V^{\prime}b}\), \(\frac{1}{b}\), \(-\frac{V}{V^{\prime}k_{2}^{\prime}b}\))

Note

This function is implemented with numba for improved performance.