NONMEM Users Network Archive

Hosted by Cognigen

Re: Easier IOV modeling

From: Jeroen Elassaiss-Schaap <jeroen>
Date: Wed, 16 Jan 2019 09:14:53 +0100

Hi Sebastien,

Interesting notion, thanks. It should be possible from NM7.3 onwards
using MOD or DECLARE as described in the sections just below the one you

With DECLARE it could look like this:

IF (AMT > 0 .and. CMT==1) THEN
  IOCC = IOCC + 1
IF (IOCC>MAXOCC) IOCC = MAXOCC ; define MAXOCC in the dataset or in code
to prevent referencing more than defined in $OMEGA
IOVCL = ETA( 1 + IOCC*3 ) ; first dose occasion will get assigned eta(4)
as below, than 7, 10 etc...
CL    = TVCL * EXP( ETA(1) + IOVCL )

And using MOD on TIME, assuming regular nominal daily dosing, it could
look like:

IOCC  = ( TIME - MOD( TIME, 24) )/24 + 1  ; assume TIME in hours and
starting at zero
IOVCL = ETA( 3 + IOCC*3 ) ; first day will get assigned eta(4) as below,
than 7, 10 etc...
CL    = TVCL * EXP( ETA(1) + IOVCL )

And therefore I think it could be possible indeed. I however do not
think it is easier, and I see OCC coding in the dataset as more robust.
But in cases where it is not possible to modify the dataset, such an
approach might be an option. As a reclaimer: the above code snippets are
heavily leaning on the userguide examples and completely untested.
Please test before use.

Hope this helps,

+31 6 23118438
-- More value out of your data!

On 16-01-19 04:06, Sebastien Bihorel wrote:
> Hi
> The Introduction to NONMEM 7.x documents include a section entitled "Easier Inter-occasion variability modeling" which describes a quicker way to code IOV.
> ;when OCC=1, eta(4) to be used: when OCC=2, eta(7) to be used, etc.
> ...
> $PK
> When this approach is used, OCC must be a data item defined in $INPUT.
> Is there a similar way to code ETAs using a dynamic variable defined in $PK?
> Thanks
> Sebastien
Received on Wed Jan 16 2019 - 03:14:53 EST

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to:

Once subscribed, you may contribute to the discussion by emailing: