The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
This release accompanies the publication of Truong et al. (2025) manuscript “Interpretation of thyroid-relevant bioactivity data for comparison to in vivo exposures: A prioritization approach for putative chemical inhibitors of in vitro deiodinase activity” and includes a new model describing human gestation in the first trimester (model “1tri_pbtk”) which links to model “fetal_pbtk” and is accessed through new function ‘solve_full_pregnancy’. A version control glitch caused an outdated version of model “3compartmentss” to be used in the initial submission of the manuscript. These values will be updated in any revsion, and in the meantime the submitted values can be obtained using v2.6.0 model “3compartmentssold”.
This release also accompanies the submission of the new manuscript “Modeling Life-stage Variability in High-throughput Toxicokinetic Simulations” and includes a new model “pbtk_lifestage” that allows select parameters in the “pbtk” model to evolve in time. The evolution of those parameter is determined by “get_input_param_timeseries” using non-parametric regression on a reference population generated by “gen_input_params”.
This release accompanies the submission of the Wambaugh et al. (2025) manuscript “A Simple Physiologically-Based Toxicokinetic Model for Multi-Route In Vitro-In Vivo Extrapolation” and includes new models incorporating inhalation/exhalation (“sumclearances” and “3compartment2”).
calc_analytic_css_1comp
to
reflect that Vdist is the effective plasma (not blood) volume (thanks
Shenghong Wang)check_model
argument logic to include
“force.human.clint.fup”calc_css
Now passing arguments
“well.stirred.correction” and “restrictive.clearance” to the model
parameterization function, so calc_css
should now respect
user specifications for those options, rather than previous behavior of
always calculating with defaults well-stirred and restrictive =
TRUEsolve_model
: Pass restrictive clearance argument to
model parameterization functionparameterize_steadystate
: pass minimum.Funbound.plasma
to get_fup
parameterize_1comp
: pass “minimum.Funbound.plasma”
argument to calc_vdist
calc_total_clearance
: arguments
“well.stirred.correction” and “adjusted.Funbound.plasma” are no longer
explicit arguments for the function but are still able to be used as
part of the ‘…’ argumentssolve_gas_pbtk
: the “restrictive.clearance” argument
default was changed from TRUE to FALSEcalc_vdist
,
parameterize_schmitt
, and
predict_partitioning_schmitt
to correctly show how to
predict volume of distribution from a list of parametersparameterize_sumclearances
,
parameterize_3comp2
, solve_3comp2
parameterize_1comp
: Add calls to
check_model
for models “1compartment” and “3compartmentss”,
since we use parameterize_steadystate
to parameterize
“1compartment”.solve_gas_pbtk
is
now non-restrictive by default, but argument restrictive.clearance=TRUE
makes the model behave similarly to the default pbtk model.This release accompanies the submission of the Davidson-Fritz (2025) manuscript “Enabling Transparent Toxicokinetic Modeling for Public Health Risk Assessment” and includes changes intended to better facilitate development of new HTTK models through improved model clarity.
In addition we have incorporated comments received on the Honda et al. (2025) manuscript “Impact of Gut Permeability on Estimation of Oral Bioavailability for Chemicals in Commerce and the Environment” provided by reviewers at ALTEX.
calc_hep_clearance
when model = “unscaled”calc_fabs.oral
– calculations now indicate that more
chemicals are poorly absorbed.calc_css
to handle models with no specified
analytic solutionarmitage_eval
so that
pka_donor and pka_accept values now correctly used (thank you Meredith
Scherer)solve_model
when only specific times
requesed and plots=TRUE (thank you Kimberly Troung)get_chem_id
when using
add_chemtable
without DTXSIDs (thank you Marc Beal and
Miyuki Breen)create_mc_samples
where arguments
were not getting passed to ‘invitro_mc’ (thank you Hsing-Chieh Lin and
Weihsueh Chiu)solve_model
where tsteps was ignored
if times were specifiedcalc_mc_css
and calc_mc_tk
(and
calc_mc_css
via …) so that a consistent population can be
used across monte carlo runs. See argument httkpop.dt.calc_fabs.oral
now calculates oral uptake rate kgutabs
using Caco-2 permeability, according to method of Lennernas
(1997) (Thank you ALTEX reviewers)get_fabsgut
to
get_fbio
and modified function to use
calc_fbio.oral
rather than call oral bioavailability
subfunctions directlycalc_kair
to only allow neutral chemical
fraction to partition into air (thank you Jon Arnot)solve_[MODEL]
functions now exclusively pass arguments
to deSolve through “…”calc_css
to better calculate the day on which
steady-state is reachedcheck_model
to provide more
informative error messages when key model parameters are missingsolve_model
now limited to ten times higher than
small.timesolve_model
immediately after dose events to improve plottingThis patch addresses a number of bugs.
get_fabsgut
create_mc_samples
could not handle
argument parameters being a list (as in,
parameters=parameterize_steadstate(chem.name=“bisphenola”))calc_css
now explain that function
is only applicable to dynamical (time-evolving) models and handles
errors with other models (such as 3compartmentss) more gracefullyconvert_units
were actually ppmw. Cannot calculate ppmv
without chemical-specific liquid density, which we do not know.armitage_eval
to allow chemical specification
by usual arguments chem.name, chem.cas, and DTXSID. Preserved
casrn.vector for backward compatibility.armitage_eval
to allow multiple instances of
chemicals (no longer using CASRN as row names) – thank you Katie Paul
Friedman for suggestionsolve_model
now gives warnings when ignoring
elements of dosing for a given model and route
(acceptible dosing.params are now specified by the modelinfo_[MODEL].R
file)This version accompanies the submission of the Honda et al. (2025) manuscript “Impact of Gut Permeability on Estimation of Oral Bioavailability for Chemicals in Commerce and the Environment”. Find the analysis scripts on GitHub
calc_css
works for accumulative chemcialsconvert_units
solve_model
is no longer
restricted to four significant figurescalc_mc_oral_equiv
) wherein you could not specify the
argument parameters to be a table created by
create_mc_samples
(thanks Jayme Coyle and Tyler
Lalonde)convert_units
to handle multiple molecular
weights – this enables convert_mc_oral_equivalent
to take a
table of parameters for Monte Carloget_clint
and get_invtroPK_param
to be more
informativeinvitrouv=FALSE
(thanks cm16120)load_honda2023
to load QSPR
(quantitative structure-property relationship model) predictions for
Caco-2 membrane permeability for ~10,000 chemicals – QSPR is optimized
to detect low permeability chemicals and therefore predicts only three
values (low/medium/high permeability)calc_fbio.oral
,
calc_fabs.oral
, and calc_fgut.oral
for
calculating systemic bioavailability as Fbio = Fabs
Fgut * Fhep* where first-pass hepatic metabolism was already
available from calc_hep_bioavailability
.invitro_uv
benchmark_httk
to compare current
function of the package against historical performance (stored in
data.frame httk.performance
)calc_tkstats
to allow PBTK model to distribute iv
dosesload_dawson2021
(thank you Alex
Fisher and Mike Tornero!)armitage_eval
to properly convert water solubility from
OPERA units)convert_units
, expanding the variety
of unit conversions available – it is critical to distringuish between
state of matter (liquid vs. gas)get_physchem_param
to be case-insensitivecal_hep_clearance
– Kilford (2008)
adjustment now only occurs in parameterization functions* Added new
function apply_clint_adjustment
to standardize
implementation of adjustment (thanks Todor Antonijevic)calc_ionization
that caused error
when argument pH was a vector – impacts Monte Carlo for ionized
compoundssolve_model
returned other than
requested times when argument times was specified (thanks Kimberly
Truong)calc_fup_correction
and
apply_fup_adjustment
to consolidate and make uniform
application of the Pearce et
al. (2017) lipid binding adjustment to in vitro measured
fupcalc_dow
for the distribution
coefficientcalc_ma
separates membrane affinity
calculation from parameterize_schmitt
calc_kair
separates calculation of
blood:air, water:air, and mucus:air partition coefficients from
parameterize_gas_pbtk
calc_fup_correction
and calc_hep_fu
based on
the idea that the in vitro assays are not long enough to reach
concentration ratios greater than 1,000,000 to 1calc_analytic_css_pbtk
to reflect Breen et
al. (2022) modification to glomerular filtration in the kidneyget_cheminfo
now lists required parameters when
chemicals are excluded (thanks Ben Savage)daily.dose
argument to
calc_mc_css
(still defaults to 1 mg/kg/day)calc_mc_css
and
calc_mc_tk
since now internally using do.call
wherever possible to pass argumentssolve_model
predict_partitioning_schmitt
identifying corresponding
equations in Schmitt
(2008)class.exclude
to get_cheminfo
– defaults to TRUE
, but if FALSE
then chemical
classes are not excluded on the basis of specified modelThis minor update removes UTF-8 characters from the package and
changes the calculation of kUrt on line 292 of
model_gas_pbtk.c
to reduce vulnerability to machine
precision errors.
This version accompanies the submission of the Breen et al. (2022) manuscript “Simulating Toxicokinetic Variability to Identify Susceptible and Highly Exposed Populations”
mecdt
of class data.table
, rather than
as object nhanes_mec_svy
of class
survey.design2
. Also, no longer storing pre-calculated
spline fits for serum creatinine and hematocrit vs. age, or
pre-calculated age distributions (used by HTTK-Pop in
virtual-individuals mode); these are now calculated “on the fly”.race factor
to 1 by default (that is, treat all simulated
adults as “non-black” for purposes of GFR estimation), to reflect recent
changes in clinical practice. (Control this behavior with
httkpop_generate()
argument
ckd_epi_race_factor
)httkpop_generate()
argument
gfr_resid_var
)default.to.human=TRUE
when rat fup is 0 (Thanks Jim Sluka)get_wetmore...
) for backward
compatibility (Thanks Jim Sluka)invitro_mc
to remove inconsistencies and
correct handling of fup where median is zero
but upper 95th is non-zeroremd0non0u95
to draw random
numbers such that the median is zero and the upper 97.5th quantile is
non-zero, taking limit of detection into accountcalc_mc_css
and
calc_mc_oral_equiv
invitro_mc
to directly allow
user to turn uncertainty and variability off (previously this was done
by setting CV to NULL)calc_hep_clearance
to the parameterize_X
functions and invitro_mc
– can now be toggled with argument
adjusted.Clintcalc_mc_css
were incorrectly calculated in
v2.1.0 (only), mg/L units unaffected, but this will have impacted
equivalent doses calculated with calc_mc_oralequiv
(Thank
you Marc Beal!)calc_half_life
and prohibited the
ability to obtain steady state parameters.create_mc_samples
related to
default.to.human
argument not being passed to
parameterize_schmitt
This version accompanies the submission of the Kapraun et al. (2022) manuscript “Evaluation of a Rapid, Generic Human Gestational Dose Model”
solve_fetal_pbtk
and parameterize_fetal_pbtk
load_dawson2021
load_pradeep2020
calc_halflife
(thank you Imran
Shah)predict_partitioning_schmitt
removing the hard
coded predicted fup regression values from Pearce et
al. (2017) and created stand-alone data matrix
pearce2017regression read in by the
function.convert_units
added to
ensure consistency in unit conversions across functionspredict_partitioning_schmitt
– now we
read list of tissues needed for a model from modelinfo_X.R
variable alltissuesget_cheminfo
and
table chem.phys_and_invitro.data (thank you
Lynne Haber and Mark Bradley)add_chemtable
to address
ionization (thank you Johann Fribl)get_cheminfo
to incorporate a chemical class
filter to remove “PFAS” compounds for all models, except
3compartmentss, based on Wambaugh et
al.(2015).calc_ionization
) that caused
pKa`s to be ignored in many cases (thank you
Wu Yaoxing)get_cheminfo
behavior to change chemical
hepatic clearance values where p-value is not consistent with decrease
(p-value > clint.pvalue.threshold, default
0.05) to zero.get_cheminfo
behavior to remove fraction
unbound in plasma values if credible interval spans from < 0.1 to
> 0.9 (turn off with
fup.ci.cutoff=FALSE).get_cheminfo
to include
median.only argument allowing confidence
intervals to be removed for chemical intrinsic hepatic clearance
(Clint) values and fraction unbound in plasma
(fup) values where they exist (turn on with
median.only=TRUE).get_cheminfo
to filter volatile compounds using
Henry`s law constant for all models, excluding the
gas_pbtk model.calc_stats
to calc_tkstats
–
calc_stats
remains temporarily but calls
calc_tkstats
calc_stats
and calc_hepatocyte_clearance
get_cheminfo
and parameterize_schmitt
now
handle odd cases (like species is zero but human is not) betterget_cheminfo
is now case insensitiveadd_chemtable
(really internal function
augment.table
) changed to enforce significant figures
(default 4)allow.na
argument to add_chemtable
so that values can be deleted (thanks Nisha Sipes)create_mc_samples
not setting
parameter.names variable when parameters are passed to it was fixed by
Tom Moxon – thank you!add_chemtable
changed so that pValue and
pValue.Reference
set to NA
when
Clint is changed (thanks Nisha Sipes)calc_tkstats
corrected to display
Rblood2plasmaparameterize_pbtk
get_physchem_param
to
look up any missing parameter needed in predicting tissue:plasma
partition coefficients using
predict_partitioning_schmitt
.set_httk_precision
is now used throughout
code to enforce a standard set of significant figures (4) and precision
(nothing less than 1e-9).calc_hepatic_clearance
wrapper function for
calc_hep_clearance
to allow backwards compatibilityget_chemid
to not crash in certain cases (thank
you, Shannon Bell)calc_mc_oral_equivalent
(was sometimes
returning all samples unasked, thank you Dan Dawson)This version is consistent with the Linakis et al. (2020) manuscript “Development and Evaluation of a High Throughput Inhalation Model for Organic Chemicals”
calc_analytic_css
calc_mc_css
convert_httkpop
(renamed from
convert_httk
)solve_*
model functionshttkpop_biotophys_default
replaces
httkpop_bio
convert_httkpop
replaces convert_httk
solve_model
(mostly used by solve_*
model
functions)calc_mc_tk
(performs Monte Carlo simulation using a
solve_*
function)analytic_css_*
: Model-specific analytic steady-state
solutionconvert_httkpop_*
: Model-specific functions for
converting HTTK-pop biometrics to model parameterss DSSTox Chemical Structure ID
s (DTXSIDs, see https://comptox.epa.gov/dashboard) now work as chemical
identifiers in addition to name and CAS.load_sipes2017
was eliminatedThis version is consistent with the Wambaugh et al. (2019) manuscript “Assessing Toxicokinetic Uncertainty and Variability in Risk Prioritization”. Major enhancements were made to allow propagation of measurement-specific uncertainty and population variability into IVIVE predictions.
minimum.Funbound.plasma
argument since some of
the Bayesian estimates are very low and at some point the values seem
implausible. A value of 0.0001 was selected since it half the lowest
reported measured value. Setting minimum.Funbound.plasma=0
removes this restriction.fup.meas.cv=0.4
,
clint.meas.cv=0.3
, fup.pop.cv=0.3
,
clint.pop.cv=0.3
, (from Wambaugh et al,
submitted). Note that most of the new fup
measurements have a lower CV than 0.3.calc_analytic_css
to handle all models in the
same manner.calc_mc_oral_equivalent
to “mgpkgpday” and “umolpkgpday”.
(idea from Katie Paul-Friedman)honda.ivive
argument functionality, reduced to
four options as in Honda et
al. (2019) Figure 8 panels a-d, changed “plasma.binding” to
“bioactive.free.invivo”, and exported function to allow user to call
help filehonda.ivive
calc_css
functionscalc_analytic_css
functions, and calc_mc...
functionsget_physchem_param
: exported and now works
with vectors of CAS and/or parametersdefault.to.human=TRUE
(human p-value is now used). (thank
you Jason Phillips and Shyam Patel for bug report).calc_mc_css
warningscalc_analytic_css
that were
causing Css to be over-estimated roughly 10x,
therefore reducing the oral equivalent dose 10x (thank you Nisha Sipes
for bug report).This version is consistent with the submitted version of the Honda et al. (2019) manuscript “Using the Concordance of In Vitro and In Vivo Data to Evaluate Extrapolation Assumptions”
armitage_eval
armitage_estimate_sarea
calc_mc_css
) to use sets of assumptions identified by Honda et al.
(for example, IVIVE=“Honda1”) (thank you Katie Paul-Friedman)load_sipes2017
to be much faster by loading an
image by defaultload_sipes2017
.get_wetmore_X
functions changed to
get_lit_X
httkpop_bio
exported to user functions (function name
since changed to httkpop_biotophys_default
)solve_[MODEL]
functionshematocrit
argument to
calc_rblood2plasma
get_cheminfo
help file:
exlude.fub.zero
defaults to FALSE
for model
3compartmentss and TRUE
for
otherscalc_mc_css
bug: species now passed to
function monte_carlo
This version is consistent with the published version of the Pearce et al. (2017) manuscript “Evaluation and calibration of high-throughput predictions of chemical distribution to tissues”. This version contains calibrations for tissue:plasma partition coefficient calibration predictions.
regression
) and adjusted
Funbound.plasma
(adjusted.Funbound.plasma
).load_sipes2017()
.calc_mc_css
runs faster when not using httkpop and
calculating Rblood2plasma, now only calculated
once.is.pharma
has been added as a function.calc_analytic_css
does not recalculate all partition
coefficients when specifying a tissue.NA
have been replaced with predictions from OPERA where
available.parameterize_1comp
) and
3compartmentss
(parameterize_steadystate
). Oral doses for these models are
now multiplied by hepatic.bioavailability and
Fgutabs before entering systemic
circulation.modelPBTK.c
, the source file for the
pbtk model, now has updated variable names,
and corresponding changes are made in solve_pbtk
.calc_mc_css bug
: daily.dose now working as an
argument (previously only running as 1).This version is consistent with the Journal of Statistical Software publication of the Pearce et al. (2017) manuscript “httk: R Package for High-Throughput Toxicokinetics”.
calc_mc_css
calc_mc_css
, and added faster method for calculating
Rblood2plasma for
3compartmentss
.This version includes data and modifications as reported in the recently submitted Pearce et al. (2017) manuscript “Evaluation and Calibration of High-Throughput Predictions of Chemical Distribution to Tissues”.
regression=FALSE
and
Funbound.plasma.pc.correction=FALSE
for other
models).available_rblood2plasma
parameterize_schmitt
: added
force.human.fub
argumentcalc_mc_css
: defaults to direct resampling. no longer
coerces species to human when httkpop=TRUE
. When another
species is entered, a warning is thrown and the function behaves as if
httkpop=FALSE
.Fubound.plasma
when
overwrite=FALSE
in add_chemtable
calc_mc_css
: well-stirred correction
and new Funbound.plasma
used by default. New partition
coefficients used with other models by default.parameterize_3comp
default.to.human
bug – no longer always set to falseThis version is consistent with Ring et al. (2017) manuscript “Identifying populations sensitive to environmental chemicals by simulating toxicokinetic variability”, which is accepted for publication at Environment International. Revisions include models, data, and vignettes for “httk-pop” functionality. “httk-pop” allows Monte Carlo simulation of physiological variability using data from the National Health and Nutrition Examination Survey.
httkpop=FALSE
).default.to.human
argument added to
calc_hepatic_clearance
and calc_stats
.calc_hepatic_clearance
and
calc_total_clearance
do not necessarily require all
parameters.tissue
added to
calc_analytic_css
, calc_mc_css
, and
calc_mc_oral_equiv
, enabling tissue specific calculations
in addition to plasma.calc_dow
argument fraction.neutral
changed
to fraction.charged
, thus treating Zwitter ions as
neutralssolve_*
functions.get_rblood2plasma
function added to retrieve in
vivo Rblood2plasma from
chem.physical_and_invitro.data.get_cheminfo
monte_carlo
: Upper bound placed at
limit of detection for censored.params
truncated normal
distribution. However, this has no impact on the default case where the
limit of detection is .01 the mean .005 because of the small standard
deviation size (.0015). Only large coefficients of variation or
Funbound.plasma values close to the limit of
detection would be affected.This revision incorporates changes suggested by the reviewers of Pearce et al. (2017) manuscript, which was accepted, pending minor revision, in the Journal of Statistical Software (now included in vignettes).
This revision adds ~200 more chemicals (from two recent publications including Wetmore et al. (2015) and make several small changes to improve usability and stability.
This version is consistent with a newly submitted article Pearce et al. (2017) manuscript “httk: R Package for High-Throughput Toxicokinetics” to the Journal of Statistical Software describing use of this package.
Initial public (CRAN) release (March 6, 2015)
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.