NONMEM Users Network Archive

Hosted by Cognigen

Re: batches with different half-life - linear PK

From: Alison Boeckmann <alisonboeckmann>
Date: Sun, 22 Apr 2007 18:01:19 UT

I am resending my response to this email. What I sent earlier was too
complicated.
The attachment "remarks.txt" contains the explanation.

On Thu, 19 Apr 2007 14:54:11 +0000 (GMT), nonmem
> Hello NONMEM Users,
>
> Sometimes the same subjects receive the same drug from different batches.
> Potentially, half-life can be different accross batches. Theoretically,
> it is easy to model if PKis linear because NONMEM superimposes
> single-dose processes to obtain predicted concentrations for multiple
> doses. Does enyone know how to implement it in NONMEM? Are there any
> classes or publications which can help?
>
> Thanks!
> Pavel
--
  Alison Boeckmann
  alisonboeckmann



$PROB batch1
$DATA dat1.txt IGNORE=#
$INPUT ID TIME AMT RATE CMT DV
$SUBR ADVAN1
$PK
  F1=1
  D1=1
  ALAG1=1
  K=1
  S1=1+ETA(1)
$ERROR Y=F+ERR(1)
$OMEGA 1
$SIGMA 1
$TABLE TIME CMT FILE=tab1.txt

$PROB batch2
$DATA dat1.txt IGNORE=#
$INPUT ID TIME AMT RATE CMT DV
$SUBR ADVAN1
$PK
  F1=.5
  D1=.5
  ALAG1=.5
  K=1
  S1=1+ETA(1)
$ERROR Y=F+ERR(1)
$OMEGA 1
$SIGMA 1
$TABLE TIME CMT FILE=tab2.txt

$PROB batch1+batch2
$DATA dat3.txt IGNORE=#
$INPUT ID TIME AMT RATE BAT CMT DV
$BIND - - - - DOSE
$SUBR ADVAN1
$PK (NONEVENT)
IF (BAT.EQ.1) THEN
  F1=1
  D1=1
  ALAG1=1
ENDIF
IF (BAT.EQ.2) THEN
  F1=.5
  D1=.5
  ALAG1=.5
ENDIF
K=1
S1=1+ETA(1)
$ERROR Y=F+ERR(1)
$OMEGA 1
$SIGMA 1
$TABLE TIME CMT FILE=tab3.txt

# ID TIME AMT RATE CMT DV
1 0 1000 -2 1 .
1 1 0 0 0 10
1 2 0 0 0 10
1 3 0 0 0 10
1 10 0 0 0 10

# ID TIME AMT RATE BAT CMT DV
1 0 1000 -2 1 1 .
1 0 1000 -2 2 1 .
1 1 0 0 0 0 10
1 2 0 0 0 0 10
1 3 0 0 0 0 10
1 10 0 0 0 0 10

$PROB batch1
$DATA datp.txt IGNORE=#
$INPUT ID TIME AMT RATE CMT DV
$SUBR ADVAN6 TOL=6
$MODEL COMP=(B1) COMP=(B2)
$PK
 F1=1
 D1=1
 ALAG1=1
 F2=.5
 D2=.5
 ALAG2=.5
 K10=1
 K20=1
 S1=1+ETA(1)
 S2=1+ETA(1)
$ERROR
Y=A(1)/S1+A(2)/S2+ERR(1)
$DES
DADT(1)=-K10*A(1)
DADT(2)=-K20*A(2)
$OMEGA 1
$SIGMA 1
$TABLE TIME CMT FILE=tabd.txt

$PROB batch1
$DATA datp.txt IGNORE=#
$INPUT ID TIME AMT RATE CMT DV
$SUBR ADVAN7
$MODEL COMP=(B1) COMP=(B2)
$PK
 F1=1
 D1=1
 ALAG1=1
 F2=.5
 D2=.5
 ALAG2=.5
 K10=1
 K20=1
 S1=1+ETA(1)
 S2=1+ETA(1)
$ERROR
Y=A(1)/S1+A(2)/S2+ERR(1)
$OMEGA 1
$SIGMA 1
$TABLE TIME CMT FILE=tabp.txt

# ID TIME AMT RATE CMT DV
1 0 1000 -2 1 .
1 0 1000 -2 2 .
1 1 0 0 0 10
1 2 0 0 0 10
1 3 0 0 0 10
1 10 0 0 0 10

I am resending this email. The original version was too complicated.
The control streams cs1.txt and cs2.txt are simpler, which should
make the issue a little more clear.
-------------------------
Original question:

Sometimes the same subjects receive the same drug from different
batches. Potentially, half-life can be different accross batches.
Theoretically, it is easy to model if PKis linear because NONMEM
superimposes single-dose processes to obtain predicted concentrations
for multiple doses. Does enyone know how to implement it in NONMEM?
------------
 
To me, this is a very interesting question. No one has posted a
response that addresses the modeling issue. I will make an attempt,
although (as I do not read the literature or attend conferences) it may
well be that this has already been worked on and is well understood,
and this email is uneeded. Also, my understand of the manufacturing
issues may be naive.

With any ADVAN, there are three additional PK parameters that might
differ from batch to batch:

 bioavailability (difference in amount of active ingredient vs. filler).
 absorption lag (difference in thickness of coating)
 duration of zero-order entry into compartment (difference in how fast
     tablet dissolves, once the coating is gone.)

These will make a difference in the cp vs.time profile, even when the
kinetics of the two drugs are identical. (Remember that, although you
can parameterize in terms of halflife or anything you choose,
ultimately PREDPP uses rate constants.)

With the superimposition principle, doses from different batches move
thru the system without affecting each other.

I did some little runs with ADVAN1. I created only one subject's data
The dose enters directly into compartment 1, but with lag time and
modelled duration (which gives somewhat the flavor of drug entering
from a depot compartment.)

I attach control streams and data files for 3 runs:
  cs1.txt, cs2.txt, cs3.txt
data files
  dat1.txt and dat3.txt

Both cs1 and cs2 use the same data file, dat1.txt. There is a single
dose into the central compartment. The values of F1, D1 and ALAG1
differ between cs1 and cs2. The values of PRED in the resulting tables
(tab1.txt and tab2.txt) are different.

cs3 uses dat3.txt, which puts two doses into the same compartment.
One dose has BAT=1 and the other has BAT=2. In $PK, the value of BAT
is tested and values are assigned to F1, D1 and ALAG1 equal to those of
cs1 (for BAT=1) and cs2 (for BAT=2). If you do the three runs, you
will see that the PRED values in the table (tab3.txt) add up to those
from tab1.txt and tab2.txt at every time point. This is indeed
superimposition.

(Note that the $BIND record is needed. BAT would, by default, be the
value for the next event record when lag time is completed. $BIND tells
PREDPP to use the value of BAT from the originating dose event record,
enabling $PK to compute the values of F1 and D1 appropriate to the
value of BAT.)

Pavel asks about different half-lifes, as if the kinetics (rate
constants) could differ. Perhaps this might be due to a diffence in
the molecular structure.

For this, I suggest a set of parallel compartments. One set of
compartments is for batch 1, another is for batch 2. In the $ERROR
block, the prediction Y is obtained by adding the concentrations from
the two "central" compartments.

I attach the following control and data files:
  csp.txt, datp.txt

ADVAN7 is used. Again, there is only a single compartment for each
batch. Notice that there is no need for $BIND, or indeed for the BAT
data item, as the doses enter different compartments.

The PRED values are the same with cs3.txt and csp.txt, again
demonstrating superimposition.

Finally, the same model is implemented with differential equations ADVAN6:
   csd.txt (uses datp.txt)
Results are identical to those with ADVAN7.

Now you can get fancy with the modelling. E.g., include an absorption
compartment, use different models for the rate constants K13 and K23,
or different models for S1 and S2.

With ADVAN6, even the differential equations could differ.

The idea is the same: define parallel (sets of) compartments for the
two batches. In $ERROR, add together the concentrations. This should
work for any system having linear kinetics for which doses can be
superimposed.
Received on Sun Apr 22 2007 - 14:01:19 EDT

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to: nmusers-request@iconplc.com.

Once subscribed, you may contribute to the discussion by emailing: nmusers@globomaxnm.com.