Nothing
test_that(".replaceMultC works", {
# uniary operators
e1 <- str2lang("d/dt(central) <- - ka * depot")
e2 <- str2lang("d/dt(central) <- - fun")
expect_equal(.replaceMultC(e1, str2lang("ka"),
str2lang("depot"),
str2lang("fun")),
e2)
e1 <- str2lang("d/dt(central) <- + ka * depot")
e2 <- str2lang("d/dt(central) <- fun")
expect_equal(.replaceMultC(e1, str2lang("ka"),
str2lang("depot"),
str2lang("fun")),
e2)
expect_equal(.replaceMultC(e1, str2lang("ka"),
str2lang("depot"),
str2lang("fun")),
e2)
e1 <- str2lang("d/dt(central) <- ka * depot - kel * central")
e2 <- str2lang("d/dt(central) <- ka * depot - (vm * central/vc)/(km + central/vc)")
expect_equal(.replaceMultC(e1, str2lang("kel"),
str2lang("central"),
str2lang("(vm*central/vc)/(km+central/vc)")),
e2)
expect_equal(.replaceMultC(e1,
str2lang("central"),
str2lang("kel"),
str2lang("(vm*central/vc)/(km+central/vc)")),
e2)
expect_equal(.replaceMultC(e1,
str2lang("funny"),
str2lang("kel"),
str2lang("(vm*central/vc)/(km+central/vc)")),
e1)
})
test_that("convertMM fun", {
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lcl <- 1 ; label("Clearance (CL)")
lvc <- 3.45 ; label("Central volume of distribution (V)")
propSd <- 0.5 ; label("Proportional residual error (fraction)")
})
model({
ka <- exp(lka)
cl <- exp(lcl)
vc <- exp(lvc)
kel <- cl / vc
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
Cc ~ prop(propSd)
})
}
expect_error(convertMM(f), NA)
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lkel <- 1 ; label("lkel")
lvc <- 3.45 ; label("Central volume of distribution (V)")
propSd <- 0.5 ; label("Proportional residual error (fraction)")
eta.cl ~ 0.1
})
model({
ka <- exp(lka)
cl <- exp(lcl + eta.cl)
vc <- exp(lvc)
kel <- exp(lkel)
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
Cc ~ prop(propSd)
})
}
expect_error(convertMM(f), NA)
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lkel <- 1 ; label("lkel")
lvc <- 3.45 ; label("Central volume of distribution (V)")
propSd <- 0.5 ; label("Proportional residual error (fraction)")
eta.kel ~ 0.1
})
model({
ka <- exp(lka)
cl <- exp(lcl)
vc <- exp(lvc)
kel <- exp(lkel + eta.kel)
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
Cc ~ prop(propSd)
})
}
expect_error(convertMM(f), NA)
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lvc <- 3.45 ; label("Central volume of distribution (V)")
propSd <- 0.5 ; label("Proportional residual error (fraction)")
kel <- 0.1
})
model({
ka <- exp(lka)
cl <- exp(lcl)
vc <- exp(lvc)
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
Cc ~ prop(propSd)
})
}
expect_error(convertMM(f), NA)
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lvc <- 3.45 ; label("Central volume of distribution (V)")
propSd <- 0.5 ; label("Proportional residual error (fraction)")
})
model({
ka <- exp(lka)
cl <- exp(lcl)
vc <- exp(lvc)
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
Cc ~ prop(propSd)
})
}
expect_error(convertMM(f), NA)
f <- function() {
ini({
lka <- 0.45 ; label("Absorption rate (Ka)")
lvc <- 3.45 ; label("Central volume of distribution (V)")
})
model({
ka <- exp(lka)
cl <- exp(lcl)
vc <- exp(lvc)
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
})
}
# doesn't need endpoint
expect_error(convertMM(f), NA)
# doesn't need estimates
f <- function() {
model({
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
})
}
expect_error(convertMM(f), NA)
# handles only eta
f <- function() {
ini({
kel ~ 0.1
})
model({
d/dt(depot) <- -ka*depot
d/dt(central) <- ka*depot-kel*central
Cc <- central / vc
})
}
expect_error(convertMM(f), NA)
})
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.