# [NMusers] Algebraic equations and IOV

From: Ruben Faelens <ruben.faelens_at_gmail.com>
Date: Wed, 23 Oct 2019 11:59:04 -0400

Dear colleagues,

I am implementing my own simulation engine for non-linear mixed-effects
models in R. To ensure that I can reproduce models estimated in NONMEM or
Monolix, I was wondering how IOV is treated in those software.

Usually, IOV is implemented as follows (NONMEM code):
IOV1=0
IOV2=0
IF(OCC.EQ.1) IOV1=1
IF(OCC.EQ.2) IOV2=1
CL = THETA(1) * EXP( ETA(1) + IOV1*ETA(2) + IOV2*ETA(3) )

Assume a data-set with the following items:
TIME;OCC;EVID;AMT
0;1;1;50
24;2;1;50

We will then use CL1=THETA*EXP(ETA1 + ETA2) from 0 to 24h, and
CL2=THETA*EXP(ETA1+ETA3) from 24h onwards.

When using differential equations, the implementation is clear. We
integrate the ODE system using CL1 until time 24h. We then continue to
integrate from 24h onwards, but using CL2.

My question is how this works when we use algebraic equations. Let's define
CONC_tmt1(CL, X) to represent the concentration at time X due to treatment
1 at time 0. For tmt2 (which happens at t=24), we write CONC_tmt2(CL, X-24).
Suppose we need a prediction at times 5h and 30h. Without IOV, we would
calculate this as follows:
CONC(5) = CONC_tmt1(CL, 5)
CONC(30) = CONC_tmt1(CL, 30) + CONC_tmt2(CL, 30-24)

There are multiple options to do this with IOV:
A) Approximate what an ODE implementation would do:
CONC(5) = CONC_tmt1(CL1, 5)
INIT_24 = CONC_tmt1(CL1, 24)
CONC(30) = CONC_virtualTreatment( Dose=INIT_24, CL2, 30-24 ) +
CONC_tmt2(CL2, 30-24)
We calculate the elimination of the remaining drug amounts in each
compartment, and calculate the elimination of them into occasion 2.
Are these equations available somewhere?

B) We ignore overlap in dosing profiles. The full profile of tmt1 (even the
part in occasion 2) is calculated using CL1.
CONC(5) = CONC_tmt1(CL1, 5)
CONC(30) = CONC_tmt1(CL1, 30) + CONC_tmt2(CL2, 30-24)

C) We can ignore continuity in concentrations. The contribution of tmt1 in
occasion 2 is calculated as if the full treatment occurred under CL2.
CONC(5) = CONC_tmt1(CL1, 5)
CONC(30) = CONC_tmt1(CL2, 30) + CONC_tmt2(CL2, 30-24)

*Which technique does NONMEM and Monolix use for simulating PK
concentration using algebraic equations with IOV?*
This is important for numerical validation between my framework and NONMEM
/ Monolix.

Best regards,
Ruben Faelens

Received on Wed Oct 23 2019 - 11:59:04 EDT

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to: nmusers-request_at_iconplc.com. Once subscribed, you may contribute to the discussion by emailing: nmusers@globomaxnm.com.