The main use case for using within rather than update or param or init is when you want to update to a new value that is calculated from the existing value. See the example in details
# S3 method for mrgmod
within(data, expr, ...)
an object with class mrgmod
expressions evaluated in an environment containing various model object components, including parameters, initial conditions, and others (see details)
not used
Other model object slots that can be updated: start
, end
, delta
,
add
, rtol
, atol
, hmax
, maxsteps
. These are include for convenience,
but we expect that most of the time these will get updated through the
update method.
mod <- mrgsolve::house()
mod2 <- within(mod, {CL <- CL * 1.5})
mod$CL
#> [1] 1
mod2$CL
#> [1] 1.5