View source: R/solve_fetal_pbtk.R
solve_fetal_pbtk | R Documentation |
This function solves for the amounts or concentrations in uM of a chemical
in different tissues of a maternofetal system as functions of time based on
the dose and dosing frequency.
In this PBTK formulation. C_{tissue}
is the concentration in tissue at
time t. Since the perfusion limited partition coefficients describe
instantaneous equilibrium between the tissue and the free fraction in
plasma, the whole plasma concentration is
C_{tissue,plasma} = \frac{1}{f_{up}*K_{tissue2fup}}*C_{tissue}
.
Note that we use a single,
constant value of f_{up}
across all tissues. Corespondingly the free
plasma
concentration is modeled as
C_{tissue,free plasma} = \frac{1}{K_{tissue2fup}}*C_tissue
.
The amount of blood flowing from tissue x is Q_{tissue}
(L/h) at a
concentration
C_{x,blood} = \frac{R_{b2p}}{f_{up}*K_{tissue2fup}}*C_{tissue}
, where
we use a
single R_{b2p}
value throughout the body.
Metabolic clearance is modelled as being from the total plasma
concentration here, though it is restricted to the free fraction in
calc_hep_clearance
by default. Renal clearance via
glomerulsr filtration is from the free plasma concentration.
The maternal compartments used in this model are the gut lumen, gut, liver,
venous blood, arterial blood, lung, adipose tissue, kidney, thyroid,
and rest of body. A placenta is modeled as a joint organ shared by mother
and fetus, through which chemical exchange can occur with the fetus. Fetal
compartments include arterial blood, venous blood, kidney, thyroid, liver,
lung, gut, brain, and rest of body.
The extra compartments include the amounts or concentrations metabolized by
the liver and excreted by the kidneys through the tubules.
AUC is the area under the curve of the plasma concentration.
solve_fetal_pbtk(
chem.name = NULL,
chem.cas = NULL,
dtxsid = NULL,
times = seq(13 * 7, 40 * 7, 1),
parameters = NULL,
days = NULL,
species = "human",
tsteps = 4,
dose = NULL,
dosing.matrix = NULL,
daily.dose = NULL,
doses.per.day = NULL,
initial.values = NULL,
plots = FALSE,
suppress.messages = FALSE,
iv.dose = FALSE,
input.units = "mg/kg",
output.units = NULL,
default.to.human = FALSE,
recalc.blood2plasma = FALSE,
recalc.clearance = FALSE,
adjusted.Funbound.plasma = TRUE,
regression = TRUE,
restrictive.clearance = TRUE,
minimum.Funbound.plasma = 1e-04,
monitor.vars = NULL,
atol = 1e-08,
rtol = 1e-08,
...
)
chem.name |
Either the chemical name, CAS number, or the parameters must be specified. |
chem.cas |
Either the chemical name, CAS number, or the parameters must be specified. |
dtxsid |
EPA's DSSTox Structure ID (https://comptox.epa.gov/dashboard) the chemical must be identified by either CAS, name, or DTXSIDs |
times |
Optional time sequence in days. Dosing sequence begins at the beginning of times. Default is from 13th week of pregnancy to 40th due to data constraints. |
parameters |
Chemical parameters from parameterize_fetal_pbtk function, overrides chem.name and chem.cas. |
days |
Length of the simulation. |
species |
Included for compatibility with other functions, but the model will not run for non-human species (default "Human"). |
tsteps |
The number time steps per hour. Default of 4. |
dose |
Amount of a single, initial oral dose in mg/kg BW. |
dosing.matrix |
A matrix of either one column (or row) with a set of dosing times or with two columns (or rows) correspondingly named "dose" and "time" containing the time and amount, in mg/kg BW, of each dose. |
daily.dose |
Total daily dose, mg/kg BW. |
doses.per.day |
Number of doses per day. |
initial.values |
Vector containing the initial concentrations or amounts of the chemical in specified tissues with units corresponding to compartment.units. Defaults are zero. |
plots |
Plots all outputs if true. |
suppress.messages |
Whether or not the output message is suppressed. |
iv.dose |
Simulates a single i.v. dose if true. |
input.units |
Input units of interest assigned to dosing, defaults to mg/kg BW |
output.units |
A named vector of output units expected for the model results. Default, NULL, returns model results in units specified in the 'modelinfo' file. See table below for details. |
default.to.human |
Substitutes missing animal values with human values if true (hepatic intrinsic clearance or fraction of unbound plasma). |
recalc.blood2plasma |
Recalculates the ratio of the amount of chemical in the blood to plasma using the input parameters, calculated with hematocrit, Funbound.plasma, and Krbc2pu. |
recalc.clearance |
Recalculates the the hepatic clearance (Clmetabolism) with new million.cells.per.gliver parameter. |
adjusted.Funbound.plasma |
Uses adjusted Funbound.plasma when set to TRUE along with partition coefficients calculated with this value. |
regression |
Whether or not to use the regressions in calculating partition coefficients. |
restrictive.clearance |
Protein binding not taken into account (set to 1) in liver clearance if FALSE. |
minimum.Funbound.plasma |
Monte Carlo draws less than this value are set equal to this value (default is 0.0001 – half the lowest measured Fup in our dataset). |
monitor.vars |
Which variables to track by default |
atol |
Absolute tolerance used by integrator (deSolve) to determine numerical precision– defaults to 1e-8. |
rtol |
Relative tolerance used by integrator (deSolve) to determine numerical precision – defaults to 1e-8. |
... |
Additional arguments passed to the integrator. |
The stage of pregnancy simulated here begins by default at the 13th week due to a relative lack of data to support parameterization prior, in line with the recommendations of Kapraun et al. 2019 ("Empirical models for anatomical and physiological..."), and ends at the 40th week of pregnancy.
Note that the model parameters have units of hours while the model output is in days. Dose is in mg, not scaled for body weight.
Default NULL value for doses.per.day solves for a single dose.
This gestational model is only parameterized for humans.
A matrix of class deSolve with a column for time(in days), each compartment, the area under the curve, and plasma concentration and a row for each time point.
John Wambaugh, Mark Sfeir, and Dustin Kapraun
solve_model
parameterize_fetal_pbtk
out = solve_fetal_pbtk(chem.name = 'bisphenol a', daily.dose = 1,
doses.per.day = 3)
# With adjustement to fraction unbound plasma for fetus:
fetal_parms_fup_adjusted <-
parameterize_fetal_pbtk(chem.name = "triclosan")
head(solve_fetal_pbtk(parameters = fetal_parms_fup_adjusted))
# Without adjustement to fraction unbound plasma for fetus:
fetal_parms_fup_unadjusted <-
parameterize_fetal_pbtk(chem.name = "triclosan",
fetal_fup_adjustment = FALSE)
head(solve_fetal_pbtk(parameters = fetal_parms_fup_unadjusted))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.