Learn R Programming

nlmixr2autoinit (version 1.0.0)

sim_sens_2cmpt: Parameter sweeping for a two-compartment pharmacokinetic model

Description

Performs parameter sweeping by varying pharmacokinetic parameters in a two-compartment model under IV or oral dosing. Model fit is evaluated across combinations of CL, Vc, Vp, Q, and Ka (oral only).

Usage

sim_sens_2cmpt(
  dat,
  sim_ka = list(mode = "manual", values = NULL),
  sim_cl = list(mode = "manual", values = NULL),
  sim_vc = list(mode = "manual", values = NULL),
  sim_vp = list(mode = c("auto", "manual"), values = NULL),
  sim_q = list(mode = c("auto", "manual"), values = NULL, auto.strategy = c("scaled",
    "fixed")),
  route = c("iv", "oral"),
  verbose = TRUE
)

Value

A data frame containing parameter combinations with model fit metrics.

Arguments

dat

Pharmacokinetic dataset.

sim_ka

List specifying Ka (oral route only):

  • mode: must be "manual"

  • values: numeric vector

sim_cl

List specifying clearance (CL):

  • mode: must be "manual"

  • values: numeric vector

sim_vc

List specifying central volume (Vc):

  • mode: must be "manual"

  • values: numeric vector

sim_vp

List specifying peripheral volume (Vp):

  • mode: "manual" or "auto"

  • values: numeric vector if manual

sim_q

List specifying inter-compartmental clearance (Q):

  • mode: "manual" or "auto"

  • values: numeric vector if manual

route

Dosing route, either "iv" or "oral". Default is "iv".

verbose

Logical (default = TRUE). Controls whether progress information is displayed during parameter sweeping. When TRUE, a dynamic progress bar is shown using the progressr package to indicate simulation status and elapsed time. When FALSE, progress output is suppressed and the function runs silently.

Author

Zhonghui Huang

Details

The function generates a parameter grid and performs model fitting for each combination using Fit_2cmpt_iv or Fit_2cmpt_oral. Parameters can be specified manually or automatically derived. Model predictions and fit metrics are computed for each simulation to assess parameter sensitivity.

See Also

Fit_2cmpt_iv, Fit_2cmpt_oral

Examples

Run this code
# \donttest{
out <- sim_sens_2cmpt(
  dat = Bolus_2CPT[Bolus_2CPT$ID<50,],
  sim_cl = list(mode = "manual", values = 4),
  sim_vc = list(mode = "manual", values = 50),
  sim_vp = list(mode = "auto"),
  sim_q  = list(mode = "auto"),
  sim_ka = list(mode = "manual", values = NA),
  route = "iv",verbose=FALSE
)
head(out[out$rRMSE2==min(out$rRMSE2),])
# }

Run the code above in your browser using DataLab