The fixef statement declares zero or more fixed effect parameters with optional initial estimates and bounds. Its syntax is given as follows:
fixef(var[(freeze)][(enable=int)]
[= c([lower bound],[ initial estimate],[ upper bound])]
)
There can be more than one such statement in a model. The following example demonstrates the usage of fixef statements to define the fixed effect parameters: tvA, tvB, tvC, tvD, tvE, and tvF.
1 fixef(tvA
2 tvB=6.02
3 tvC(freeze)=3.14
4 tvD=c(0.01, 0.1, 5)
5 tvE=c(0.01, 0.1, 5)
6 tvF(enable=c(1))=c(0.01, 0.1, 5)
7 )
Line 1 says that tvA is a fixed effect parameter with its initial value set to the default value. (Note: The default values for the fixed effect related to a covariate effect is 0 and the default values for the other fixed effects are 1.)
Line 2 gives tvB an initial value of 6.02.
Line 3 gives tvC a value of 3.14 that will be fixed during the estimation process. In other words, tvC will not be estimated during the estimation process with its value set to be 3.14.
Line 4 gives tvD an initial value of 0.1 and provides a lower bound of 0.01 and an upper bound of five.
Line 5 is like line 4.
Note: Any of the lower bounds or upper bounds can be omitted in the above statements.
Line 6 is like line 4 but the fixed effect tvF is enabled. This is used in covariate search procedures. Enabling the fixed effect means that the related covariate needs to be tested. The covariate search will ignore those covariates that are not enabled. There is a command-line argument, /xe, that determines which variables are chosen to be disabled. If there is no such argument, all fixed effects having an enable clause are disabled.
Rules for using boundaries and initial estimates
Note: It is best practice to try to solve the model without first using boundaries.
Recall that the fundamental optimization algorithm used in NLME is the well-known unconstrained BFGS quasi-Newton method. Hence, for problems with parameters having lower and/or upper bounds, NLME first converts the parameters to unconstrained ones through some transformation and then applies the algorithm in the transformed parameter space. Specifically,
If a one-sided lower bound (either a lower or upper bound) is provided, then a square root transformation is applied to the original parameter.
If a two-sided bound is provided, then a square root transformation is first applied to the original parameter and then an arcsin transformation is applied to the resulting parameter.
It is worth pointing out that all transformations are done internally during the optimization phase and the transformed parameter never appears in any reported results. The internal parameter in unbounded space is always transformed back to the original bounded space before results are reported.
Legal Notice | Contact Certara
© Certara USA, Inc. All rights reserved.