NONMEM Users Network Archive

Hosted by Cognigen

Re: Algebraic equations and IOV

From: Eleveld-Ufkes, DJ <d.j.eleveld>
Date: Wed, 23 Oct 2019 18:11:35 +0000

Hi Ruben,

As I understand it the way you seem to intend it that CL takes value THETA(=
1)*EXP(ETA(2)) when IOV1=1 (thus IOV2=0) from 0 to 24h, and THETA(1)*EX=
P(ETA(3)) when IOV2=1 (thus IOV1=0) from 24h onwards. These are separat=
e occasions and do not overlap, so ETA(2) has no meaning (no influence on a=
ny predictions or likelihood or anything) after 24 hours. The opposite mean=
ing is for ETA(3). So in my view only A) makes sense and B) and C) dont. At=
 least as far as I understand your code style.

When you say algebraic equations do you mean the closed-form solutions for =
particular mammilary models? You only have to know the equations which can =
handle non-zero initial conditions which you would need starting at 24h to =
do the prediction at 30h. I dont know what structures you need, if you have=
 unusual structures then DES is the only way I think. For some normal struc=
tures take a look at: Abuhelwa, A.Y., Foster, D.J. and Upton, R.N., 2015. A=
DVAN-style analytical solutions for common pharmacokinetic models. Journal =
of pharmacological and toxicological methods, 73, pp.42-48. In the suppleme=
nts is R code I believe. I have gotten some of the models to work in C just=
 by cut-paste-compile and fix errors, so they should work in R as well.

I hope this helps.

Warm regards,

Douglas Eleveld

From: owner-nmusers
 of Ruben Faelens <ruben.faelens
Sent: Wednesday, October 23, 2019 5:59:04 PM
To: nmusers
Subject: [NMusers] Algebraic equations and IOV

Dear colleagues,

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

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

Assume a data-set with the following items:

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

When using differential equations, the implementation is clear. We integrat=
e the ODE system using CL1 until time 24h. We then continue to integrate fr=
om 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-=
Suppose we need a prediction at times 5h and 30h. Without IOV, we would cal=
culate 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_tm=
t2(CL2, 30-24)
We calculate the elimination of the remaining drug amounts in each compartm=
ent, 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
De inhoud van dit bericht is vertrouwelijk en alleen bestemd voor de geadre=
sseerde(n). Anderen dan de geadresseerde(n) mogen geen gebruik maken van di=
t bericht, het niet openbaar maken of op enige wijze verspreiden of vermeni=
gvuldigen. Het UMCG kan niet aansprakelijk gesteld worden voor een incomple=
te aankomst of vertraging van dit verzonden bericht.

The contents of this message are confidential and only intended for the eye=
s of the addressee(s). Others than the addressee(s) are not allowed to use =
this message, to make it public or to distribute or multiply this message i=
n any way. The UMCG cannot be held responsible for incomplete reception or =
delay of this transferred message.

Received on Wed Oct 23 2019 - 14:11:35 EDT

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: