rxTest({
# Make sure there are lower bounds for appropriate errors
test_that("add/prop have appropriate errors", {
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- 0.1 ; label("residual variability")
prop.err <- 0.1
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ add(add.err) + prop(prop.err) # define error model
})
}
f <- rxode2(run7.mod)
expect_equal(f$iniDf$lower, c(-Inf, -Inf, -Inf, 0, 0, -Inf, -Inf, -Inf))
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- c(0.001, 0.1) ; label("residual variability")
prop.err <- c(0.001, 0.1)
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ add(add.err) + prop(prop.err) # define error model
})
}
f <- rxode2(run7.mod)
expect_equal(f$iniDf$lower, c(-Inf, -Inf, -Inf, 0.001, 0.001, -Inf, -Inf, -Inf))
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- -1 ; label("residual variability")
prop.err <- c(0.001, 0.1)
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ add(add.err) + prop(prop.err) # define error model
})
}
expect_error(rxode2(run7.mod))
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- 2 ; label("residual variability")
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ bern(add.err) # define error model
})
}
expect_error(rxode2(run7.mod))
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- c(-1, 0.5, 1) ; label("residual variability")
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ bern(add.err) # define error model
})
}
expect_warning(rxode2(run7.mod), NA)
run7.mod <- function() {
ini({
tcl <- log(0.008) ; label("typical value of clearance")
tv <- log(0.6) ; label("typical value of volume")
all.cl <- 1 ; label("allometric exponent on CL")
eta.cl + eta.v ~ c(
1,
0.01, 1
) ; label("interindividual variability on clearance and volume")
add.err <- c(0, 0.5, 1) ; label("residual variability")
})
model({
cl <- exp(tcl + all.cl * log_allo_wt + eta.cl) # individual value of clearance
v <- exp(tv + eta.v) # individual value of volume
ke <- cl / v # elimination rate constant
d / dt(A1) <- -ke * A1 # model differential equation
cp <- A1 / v # concentration in plasma
cp ~ bern(add.err) # define error model
})
}
expect_warning(rxode2(run7.mod), NA)
})
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.