dcmri.conc_kidney_cortex_medulla#

dcmri.conc_kidney_cortex_medulla(ca: ndarray, *params, t=None, dt=1.0, sum=True, kinetics='7C')[source]#

Concentration in kidney cortex and medulla tissues.

Parameters:
  • ca (array-like) – concentration in the arterial input.

  • params (tuple) – free model parameters.

  • t (array_like, optional) – the time points in sec of the input function ca. If t is not provided, the time points are assumed to be uniformly spaced with spacing dt. Defaults to None.

  • dt (float, optional) – spacing in seconds between time points for uniformly spaced time points. This parameter is ignored if t is explicity provided. Defaults to 1.0.

  • sum (bool, optional) – For two-compartment tissues, set to True to return the total tissue concentration. Defaults to True.

  • kinetics (str, optional) – Kinetics of the tissue, currently only ‘7C’ available - see below for detail. Defaults to ‘7F’.

Returns:

If sum=True, each return value is a 1D array with the total concentration at each time point, in cortex and medulla, respectively. If sum=False each return value is the concentration in each compartment, and at each time point, of cortex and medulla as a 2D array with dimensions (n,k), where n is the number of compartments and k is the number of time points in ca. The concentration is returned in units of M.

Return type:

tuple[numpy.ndarray, numpy.ndarray]

Notes

Currently implemented kinetic models are:

  • ‘7CF’: 7-compartment model. params = (Fp, Eg, fc, Tg, Tv, Tpt, Tlh, Tdt, Tcd,). Cortico-medullary model with 4 cortical compartments (glomeruli, peritubular capillaries & veins, proximal tubuli and distal tubuli) and 3 medullary compartments (peritubular capillaries & veins, list of Henle and collecting ducts).

The 9 model parameters are:

  • Fp (float): Plasma flow into the tissue, in units of mL plasma per sec and per mL tissue (mL/sec/mL).

  • Eg (float): Glomerular extraction fraction

  • fc (float): Cortical flow fraction

  • Tg (float): Glomerular mean transit time in sec

  • Tv (float): Peritubular & venous mean transit time in sec

  • Tpt (float): Proximal tubuli mean transit time in sec

  • Tlh (float): Lis of Henle mean transit time in sec

  • Tdt (float): Distal tubuli mean transit time in sec

  • Tcd (float): Collecting duct mean transit time in sec

Example

Plot concentration in cortex and medulla for typical values:

>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> import dcmri as dc

Generate a population-average input function:

>>> t = np.arange(0, 300, 1.5)
>>> ca = dc.aif_parker(t, BAT=20)

Use the function to generate total cortex and medulla tissue concentrations:

>>> Fp, Eg, fc, Tg, Tv, Tpt, Tlh, Tdt, Tcd = 0.03, 0.15, 0.8, 4, 10, 60, 60, 30, 30
>>> Cc, Cm = dc.conc_kidney_cortex_medulla(ca, Fp, Eg, fc, Tg, Tv, Tpt, Tlh, Tdt, Tcd, t=t, kinetics='7C')

Plot all concentrations:

>>> fig, ax = plt.subplots(1,1,figsize=(6,5))
>>> ax.set_title('Kidney concentrations')
>>> ax.plot(t/60, 1000*Cc, linestyle='-', linewidth=3.0, color='darkblue', label='Cortex')
>>> ax.plot(t/60, 1000*Cm, linestyle='-', linewidth=3.0, color='darkgreen', label='Medulla')
>>> ax.plot(t/60, 1000*(Cc+Cm), linestyle='-', linewidth=3.0, color='darkgrey', label='Whole kidney')
>>> ax.set_xlabel('Time (min)')
>>> ax.set_ylabel('Tissue concentration (mM)')
>>> ax.legend()
>>> plt.show()

(Source code, png, hires.png, pdf)

../../_images/dcmri-conc_kidney_cortex_medulla-1.png