Find the monte carlo steady state concentration.
This function finds the analytical steady state plasma concentration(from calc_analytic_css) using a monte carlo simulation (monte_carlo).
calc_mc_css( chem.cas = NULL, chem.name = NULL, dtxsid = NULL, parameters = NULL, samples = 1000, which.quantile = 0.95, species = "Human", suppress.messages = FALSE, model = "3compartmentss", httkpop = TRUE, invitrouv = TRUE, calcrb2p = TRUE, censored.params = list(), vary.params = list(), return.samples = FALSE, tissue = NULL, output.units = "mg/L", invitro.mc.arg.list = list(adjusted.Funbound.plasma = TRUE, poormetab = TRUE, fup.censored.dist = FALSE, fup.lod = 0.01, fup.meas.cv = 0.4, clint.meas.cv = 0.3, fup.pop.cv = 0.3, clint.pop.cv = 0.3), httkpop.generate.arg.list = list(method = "direct resampling", gendernum = NULL, agelim_years = NULL, agelim_months = NULL, weight_category = c("Underweight", "Normal", "Overweight", "Obese"), gfr_category = c("Normal", "Kidney Disease", "Kidney Failure"), reths = c("Mexican American", "Other Hispanic", "Non-Hispanic White", "Non-Hispanic Black", "Other")), convert.httkpop.arg.list = list(), parameterize.arg.list = list(default.to.human = FALSE, clint.pvalue.threshold = 0.05, restrictive.clearance = T, regression = TRUE), calc.analytic.css.arg.list = list(well.stirred.correction = TRUE, adjusted.Funbound.plasma = TRUE, regression = TRUE, IVIVE = NULL, tissue = tissue, restrictive.clearance = T, bioactive.free.invivo = FALSE) )
chem.cas |
Chemical Abstract Services Registry Number (CAS-RN) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXISD |
chem.name |
Chemical name (spaces and capitalization ignored) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXISD |
dtxsid |
EPA's DSSTox Structure ID (https://comptox.epa.gov/dashboard) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXSIDs |
parameters |
Parameters from the appropriate parameterization function for the model indicated by argument model |
samples |
Number of samples generated in calculating quantiles. |
which.quantile |
Which quantile from Monte Carlo simulation is requested. Can be a vector. |
species |
Species desired (either "Rat", "Rabbit", "Dog", "Mouse", or default "Human"). Species must be set to "Human" to run httkpop model. |
suppress.messages |
Whether or not to suppress output message. |
model |
Model used in calculation: 'pbtk' for the multiple compartment model,'3compartment' for the three compartment model, '3compartmentss' for the three compartment steady state model, and '1compartment' for one compartment model. This only applies when httkpop=TRUE and species="Human", otherwise '3compartmentss' is used. |
httkpop |
Whether or not to use population generator and sampler from httkpop. This is overwrites censored.params and vary.params and is only for human physiology. Species must also be set to 'Human'. |
invitrouv |
Logical to indicate whether to include in vitro parameters in uncertainty and variability analysis |
calcrb2p |
Logical determining whether or not to recalculate the chemical ratio of blood to plasma |
censored.params |
The parameters listed in censored.params are sampled from a normal distribution that is censored for values less than the limit of detection (specified separately for each parameter). This argument should be a list of sublists. Each sublist is named for a parameter in "parameters" and contains two elements: "CV" (coefficient of variation) and "LOD" (limit of detection, below which parameter values are censored. New values are sampled with mean equal to the value in "parameters" and standard deviation equal to the mean times the CV. Censored values are sampled on a uniform distribution between 0 and the limit of detection. Not used with httkpop model. |
vary.params |
The parameters listed in vary.params are sampled from a normal distribution that is truncated at zero. This argument should be a list of coefficients of variation (CV) for the normal distribution. Each entry in the list is named for a parameter in "parameters". New values are sampled with mean equal to the value in "parameters" and standard deviation equal to the mean times the CV. Not used with httkpop model. |
return.samples |
Whether or not to return the vector containing the samples from the simulation instead of the selected quantile. |
tissue |
Desired steady state tissue concentration. |
output.units |
Plasma concentration units, either uM or default mg/L. |
invitro.mc.arg.list |
List of additional parameters passed to
|
httkpop.generate.arg.list |
Additional parameters passed to
|
convert.httkpop.arg.list |
Additional parameters passed to the convert_httkpop_* function for the model. |
parameterize.arg.list |
Additional parameters passed to the parameterize_* function for the model. |
calc.analytic.css.arg.list |
Additional parameters passed to
|
All arguments after httkpop only apply if httkpop is set to TRUE and species to "Human".
When species is specified as rabbit, dog, or mouse, the function uses the appropriate physiological data (volumes and flows) but substitutes human fraction unbound, partition coefficients, and intrinsic hepatic clearance.
Tissue concentrations are calculated for the pbtk model with a default oral infusion dosing. All tissues other than gut, liver, and lung are the product of the steady state plasma concentration and the tissue to plasma partition coefficient.
The six sets of plausible in vitro-in vivo extrapolation (IVIVE) assumptions identified by Honda et al. (2019) are:
in vivo Conc. | Metabolic Clearance | Bioactive Chemical Conc. | TK Statistic Used* | |
Honda1 | Veinous (Plasma) | Restrictive | Free | Mean Conc. |
Honda2 | Veinous | Restrictive | Free | Max Conc. |
Honda3 | Veinous | Non-restrictive | Total | Mean Conc. |
Honda4 | Veinous | Non-restrictive | Total | Max Conc. |
Honda5 | Target Tissue | Non-restrictive | Total | Mean Conc. |
Honda6 | Target Tissue | Non-restrictive | Total | Max Conc. |
*Assumption is currently ignored because analytical steady-state solutions are currently used by this function.
Quantiles (specified by which.quantile) of the distribution of plasma steady-stae concentration (Css) from the Monte Carlo simulation
Caroline Ring, Robert Pearce, and John Wambaugh
Wambaugh, John F., et al. "Toxicokinetic triage for environmental chemicals." Toxicological Sciences 147.1 (2015): 55-67.
Ring, Caroline L., et al. "Identifying populations sensitive to environmental chemicals by simulating toxicokinetic variability." Environment international 106 (2017): 105-118.
Honda, Gregory S., et al. "Using the Concordance of In Vitro and In Vivo Data to Evaluate Extrapolation Assumptions." 2019. PLoS ONE 14(5): e0217564.
Rowland, Malcolm, Leslie Z. Benet, and Garry G. Graham. "Clearance concepts in pharmacokinetics." Journal of pharmacokinetics and biopharmaceutics 1.2 (1973): 123-136.
set.seed(1234) calc_mc_css(chem.name='Bisphenol A',output.units='uM', samples=100,return.samples=TRUE) set.seed(1234) calc_mc_css(chem.name='2,4-d',which.quantile=.9,httkpop=FALSE,tissue='heart') set.seed(1234) calc_mc_css(chem.cas = "80-05-7", which.quantile = 0.5, output.units = "uM", samples = 2000, httkpop.generate.arg.list=list(method='vi', gendernum=NULL, agelim_years=NULL, agelim_months=NULL, weight_category = c("Underweight", "Normal", "Overweight", "Obese"))) params <- parameterize_pbtk(chem.cas="80-05-7") set.seed(1234) calc_mc_css(parameters=params,model="pbtk") set.seed(1234) # Standard HTTK Monte Carlo: NSAMP = 500 calc_mc_css(chem.cas="90-43-7",model="pbtk",samples=NSAMP) set.seed(1234) calc_mc_css(chem.cas="90-43-7", model="pbtk", samples=NSAMP, invitro.mc.arg.list = list( adjusted.Funbound.plasma = TRUE, poormetab = TRUE, fup.censored.dist = FALSE, fup.lod = 0.01, fup.meas.cv = 0.0, clint.meas.cv = 0.0, fup.pop.cv = 0.3, clint.pop.cv = 0.3)) set.seed(1234) # HTTK Monte Carlo with no HTTK-Pop physiological variability): calc_mc_css(chem.cas="90-43-7",model="pbtk",samples=NSAMP,httkpop=FALSE) set.seed(1234) # HTTK Monte Carlo with no in vitro uncertainty and variability): calc_mc_css(chem.cas="90-43-7",model="pbtk",samples=NSAMP,invitrouv=FALSE) set.seed(1234) # HTTK Monte Carlo with no HTTK-Pop and no in vitro uncertainty and variability): calc_mc_css(chem.cas="90-43-7",model="pbtk",samples=NSAMP,httkpop=FALSE,invitrouv=FALSE) # Should be the same as the mean result: calc_analytic_css(chem.cas="90-43-7",model="pbtk",output.units="mg/L") set.seed(1234) # HTTK Monte Carlo using basic Monte Carlo sampler: calc_mc_css(chem.cas="90-43-7", model="pbtk", samples=NSAMP, httkpop=FALSE, invitrouv=FALSE, vary.params=list(Pow=0.3))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.