Specify the lagtime
when you create the model using new_ode_model
. The lag time can either be a number, or a string referring to a parameter (e.g. "ALAG"). If a single number or parameter is specified, the lag time will apply to the default dose compartment only. Alternatively, it is also possible to specify a vector of lag times, with a value for each compartment.
library("PKPDsim") pk <- new_ode_model( code = " dAdt[1] = -KA * A[1]; dAdt[2] = KA*A[1] -(CL/V) * A[2] ", obs = list(cmt = 2, scale="V"), dose = list(cmt = 1), lagtime = "ALAG" ) r <- new_regimen( amt = c(100, 100, 100), times = c(0, 12, 24), cmt = 1 ) p <- list(CL = 5, V = 10, KA = 0.25, ALAG = 2) res <- sim( ode = pk, n_ind = 25, omega = cv_to_omega( par_cv = list("CL" = 0.1, "V" = 0.1, "KA" = .1, "ALAG" = 0.3), p ), parameters = p, regimen = r, verbose = FALSE, only_obs = TRUE )
The code below implements the transit compartment model for absorption compartments as described by Savic et al. JPKPD 2007. Please note that this implementation assumes that all drug amount has been absorbed within the dosing interval. Such an assumption might not always hold. Also, for this implementation of dosing, it is essential to set the bioavailability for the dose compartment to 0, since dosing is now implemented using a separate analytical equation.
Note: a simplified way of coding the transit compartments model will be added soon to PKPDsim.
library(PKPDsim) parameters <- list(CL = 15, V = 50, MTT = 2.5, N = 4, KA = 1) reg1 <- new_regimen(amt = 100, n = 3, interval = 12) # needs dummy doses mod <- new_ode_model( code = " tad = t - t_prv_dose KTR = (N+1)/MTT LNFAC= log(2.506628)+(N+0.5)*log(N)-N dAdt[1] = exp(log(prv_dose) + log(KTR) + N*log(KTR * tad) - KTR * tad - LNFAC) - KA*A[1] dAdt[2] = KA*A[1]-CL/V*A[2] ", declare_variables = c("LNFAC", "KTR", "tad"), parameters = parameters, dose = list(cmt = 1, bioav = 0), obs = list(cmt = 2, scale = "V") ) res <- sim( ode = mod, regimen = reg1, parameters = parameters, n = 5, omega = cv_to_omega( list(CL = 0.1, V = 0.1, MTT = 0.2, N =0.1, KA=0.1), parameters ), t_obs = seq(0, 36, .5) )
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.