Reserved and user-defined variable names

All of the variable names in the Phoenix Modeling Language can be user-defined. However, some variable names are considered to be reserved for syntactical reasons.

When building a model, the following should not be used as variable names:

Words that already part of the Phoenix modeling language

Words that are reserved for NLME (case sensitive): cabs, hypot, chgsign, copysign, logb, nextafter, scalb, finite, pfclass, repl, isnan, j0, j1, jn, y0, y1, yn, UNI

Words that are in the C runtime or C math libraries

Words that are GNU library calls or GNU reserved words (for a list of GNU reserved words, see gcc.gnu.org/onlinedocs/gcc-6.1.0/gcc/Keyword-Index.html)

If a reserved word is used, it will cause a compilation error when the model is being built and will appear in the model code as blue text.

Some common reserved words to avoid:

block         error         ranef
bioavail      event         rate
bolus         first         real
bql           fixef         repl
break         for           return
call          gamma*        same
cfMacro       goto          secondary
cfMicro       if            section
char          in            sequence
continue      include       short
covariate     infuse        signed
count         int           sleep
default       interpolate   start
deriv         interval      stparm
diag          join          struct
do            LL            switch
doafter       long          tlag
dobefore      mean          uncertainty
dosepoint     model         unit
dosepoint1    multi         units
dosepoint2    observe       unsigned
dropout       override      urine
duration      proc          urinecpt
else          ranef         wait
enable        ranef1        while
enum          ranef2

* (Linux only)


Last modified date:7/9/20
Certara USA, Inc.
Legal Notice | Contact Certara
© 2020 Certara USA, Inc. All rights reserved.