This building block declares an observation model with an additive residual error model (\(y = f + \epsilon_1\)).
obs_additive(prediction, name, var_add = 1)
prediction | A definition of the model prediction |
---|---|
name | A name for the observation (automatically derived if missing) |
var_add | Variance of the additive error |
A building block of type 'observation'
Observation models specify the observed variable, how an observation is expected to diverge from the model (i.e, the residual unexplained variability model), and parameter values. The observation model type is selected through the function name. The observed variable as well as the parameters are specified as function arguments.
The actual prediction from the model is the first argument of the function. It can be specified in a number of different ways:
A name of a variable in the model: obs_additive("effect")
A compartment concentration: obs_additive(~C["central"])
An equation: obs_additive(~base+slp*time)
If the definition contains a variable name on the left-hand side (as in
conc~C["central"]
), the variable will appear in the generated model
code. This can be useful to make the model code more readable if the
prediction is defined as a long equation.
The observation name can be specified via the name=
argument and is
automatically derived if the argument is left empty. Adding an
observation model with an already existing name will replace the
previous definition.
The variance of the error components are specified via the var_add=
and var_prop=
arguments of the function.
Other observation models:
obs_combined()
,
obs_proportional()
# additve RUV model for observing the variable WT m <- model() + prm_log_normal("wt") + obs_additive(~wt) # EMAX dose-response model with proportional RUV m2 <- model() + input_variable("dose") + prm_no_var("emax") + prm_no_var("ed50") + obs_proportional(effect~emax*dose/(ed50+dose))