calc_frtm_tac ============================================================= .. py:function:: petpal.kinetic_modeling.reference_tissue_models.calc_frtm_tac(tac_times_in_minutes: numpy.ndarray, ref_tac_vals: numpy.ndarray, r1: float, k2: float, k3: float, k4: float) -> numpy.ndarray Calculate the Time Activity Curve (TAC) using the Full Reference Tissue Model (SRTM) with the given reference TAC and kinetic parameters. .. important:: This function assumes that the reference TAC is uniformly sampled with respect to time since we perform convolutions. The FRTM TAC can be calculated as: .. math:: C(t) = R_{1}C_\mathrm{R}(t) + \left[ A_{1}e^{-\alpha_{1}t} + A_{2}e^{-\alpha_{2}t} \right] \otimes C_\mathrm{R}(t), where additionally we have: .. math:: \alpha_{1} &= \frac{k_{2} + k_{3} + k_{4} - \sqrt{\left( k_{2} + k_{3} + k_{4} \right)^2 - 4k_{2}k_{4}}}{2}\\ \alpha_{2} &= \frac{k_{2} + k_{3} + k_{4} + \sqrt{\left( k_{2} + k_{3} + k_{4} \right)^2 - 4k_{2}k_{4}}}{2}\\ A_{1} &= \left( \frac{k_{3} + k_{4} -\alpha_{2}}{\alpha_{1} - \alpha_{2}} \right)\left( \frac{k_{2}}{R_{1}} - \alpha_{2} \right)\\ A_{2} &= \left( \frac{\alpha_{1}-k_{3} - k_{4} }{\alpha_{1} - \alpha_{2}} \right)\left( \frac{k_{2}}{R_{1}} - \alpha_{1} \right) :param tac_times_in_minutes: The array representing the time-points for both TACs. :type tac_times_in_minutes: np.ndarray :param r1: The ratio of the clearance rate of tracer from plasma to the reference to the transfer rate of the tracer from plasma to the tissue; :math:`R_{1}\equiv\frac{k_1^\prime}{k_1}`. :type r1: float :param k2: The rate of tracer transfer from the first tissue compartment to plasma. :type k2: float :param k3: The rate of tracer transfer from the first tissue compartment to the second tissue compartment. :type k3: float :param k4: The rate of tracer transfer from the second tissue compartment to the first tissue compartment. :type k4: float :param ref_tac_vals: The values of the reference TAC. :type ref_tac_vals: np.ndarray :returns: *np.ndarray* -- TAC values calculated using FRTM. :raises AssertionError: If the reference TAC and times are different dimensions. .. seealso:: * :func:`_calc_simplified_frtm` * :func:`_calc_frtm_params_from_kinetic_params`