dcmri.flux_aorta#
- dcmri.flux_aorta(J_vena: ndarray, t=None, dt=1.0, E=0.1, FFkl=0.0, FFk=0.5, heartlung=['pfcomp', (10, 0.2)], organs=['2cxm', ([20, 120], 0.15)], kidneys=['comp', (10,)], liver=['pfcomp', (10, 0.2)], tol=0.001)[source]#
Whole-body model for indicator flux through the aorta.
See section Whole body for a more detailed description of this model.
- Parameters:
J_vena (np.ndarray) – Indicator influx (mmol/sec) into the veins.
t (np.ndarray, optional) – Array of time points (sec), must be of equal size as J_vena. If not provided, the time points are uniformly sampled with interval dt. Defaults to None.
dt (float, optional) – Sampling interval in sec. Defaults to 1.0.
E (float, optional) – Body extraction fraction. Defaults to 0.1.
FFkl (float, optional) – Fraction of the cardiac output that passes through kidney and liver. Set FFkl=0 for a whole body model without explicit kidney and liver spaces. Defaults to 0.0.
FFk (float, optional) – Kidney fraction of the flow to kidney and liver. With FFk=0, only the liver is modelled. With FFk=1, only the kidneys are modelled. Defaults to 0.5.
heartlung (list) – 3-element list specifying the model to use for the heart-lung system (see notes for detail).
organs (list) – 3-element list specifying the model to use for the organs (see notes for detail).
kidneys (list) – 3-element list specifying the model to use for the kidneys (see notes for detail). This keyword is ignored if FFkl=0 or FFk=0.
liver (list) – 3-element list specifying the model to use for the liver (see notes for detail). This keyword is ignored if FFkl=0 or FFk=1.
tol (float, optional) – Dose tolerance in the solution. The solution propagates the input through the system, until the dose that is left in the system is given by tol*dose0, where dose0 is the initial dose. Defaults to 0.001.
- Returns:
Indicator fluxes (mmol/sec) through the vena cava and aorta.
- Return type:
Notes
The lists specifying each organ system consist of 3 elements: the model (str), its parameters (tuple) and any keyword parameters (dict). Any of the basic pharmacokinetic blocks can be used. For instance, chain, plug-flow compartment, and compartment would be specified as follows:
chain: [‘chain’, (Thl, Dhl), {‘solver’:’step’}]
plug-flow compartment: [‘pfcomp’, (Thl, Dhl), {‘solver’:’interp’}}
compartment: [‘comp’, Thl]
2cxm: [‘2cxm’, ([To, Te], Eo)]
Example
Generate flux through aorta:
import matplotlib.pyplot as plt import dcmri as dc # Generate a stepwise injection: t = np.arange(0, 120, 2.0) Ji = dc.ca_injection(t, 70, 0.5, 0.2, 3, 30) # Calculate the fluxes in mmol/sec: Ja = dc.flux_aorta(Ji, t) # Plot the fluxes: plt.plot(t/60, Ja, 'r-', label='Aorta') plt.xlabel('Time (min)') plt.ylabel('Indicator flux (mmol/sec)') plt.legend() plt.show()
(
Source code
,png
,hires.png
,pdf
)