Back to the Top
Hi,
I am trying to fit a population PK model with nonlinear elimination
(Michaelis-Menten) with NONMEM. The drug was given to 15 patients by
20-min infusion weekly. Each patient received 6 different doses each
week for 6 weeks, and intense PK sampling was drawn after each dose.
The drug shows apparent non-linear clearance.
The following is the model control file. The model did not converge
no matter how I changed the initial estimates. Is there any problem
with the control file? Any thoughts would be appreciate!
Best regards.
Jing
$PROB 20-MIN IV INFUSION MULTIPLE DOSE WITHOUT COVARIATES
$INPUT ID WEEK AMT RATE TIME XDV DV MDV EVID
;XDV, observations, DV, log-transformed concentrations
$DATA ANTISOMA_DART_3.csv IGNORE=.-at-.
$SUBROUTINES ADVAN9 TRANS1 TOL=3
$MODEL NPAR=9, NCOMP=3, COMP=(CENTRAL,DEFOBS),
COMP=(PERIPH1), COMP=(PERIPH2)
;$ABB DERIV2=NO
$PK
VM = THETA(1) *EXP(ETA(1))
KM = THETA(7)*EXP(ETA(7))
V1 = THETA(2)*EXP(ETA(2))
V2 = THETA(3)*EXP(ETA(3))
V3 = THETA(4)*EXP(ETA(4))
Q2 = THETA(5)*EXP(ETA(5))
Q3 = THETA(6)*EXP(ETA(6))
SC = V1
K12 = Q2/V1
K21 = Q2/V2
K23 = Q3/V2
K32 = Q3/V3
OBS = XDV ;non-transformed
observations
$ERROR (ONLY OBSERVATION)
DEL = 0
IF(F.EQ.0) DEL = .000001
IPRED = F + DEL
W = SQRT(THETA(8)**2+THETA(9)**2*F*F)
IPRED = LOG(IPRED)
IRES = DV-IPRED
IWRES = IRES/W
Y = IPRED+ERR(1)*W
$DES
C1 = A(1)/V1
DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)
DADT(2) = K12*A(1) - K21*A(2) + K32*A(3) - K23*A(2)
DADT(3) = K23*A(2) - K32*A(3)
$THETA (0,1) ;1 VM (uM/h)
$THETA (0,3,10) ;2 V1
$THETA (0,5,20) ;3 V2
$THETA (.5,2,10) ;4 V3
$THETA (0,.2,5) ;5 Q2
$THETA (0,1,5) ;6 Q3
$THETA (10,200) ;7 KM (uM)
$THETA (0,.5) ;8 SD ADD ERROR
$THETA (0,.1) ;9 CV PROP ERROR
$OMEGA .1 ;1 VM
$OMEGA .1 ;2 V1
$OMEGA .3 ;3 V2
$OMEGA .1 ;4 V3
$OMEGA .1 ;5 Q2
$OMEGA .1 ;6 Q3
$OMEGA .1 ;7 KM
$SIGMA 1 FIX
$EST MAXEVALS=9990 PRINT=2 POSTHOC MSFO=msfb40 POSTHOC ;METH=1 INTER
$COV
$TAB ID ID WEEK AMT RATE ONEHEADER NOPRINT FILE=mytab40
$TAB ID TIME DV IPRED IWRES ONEHEADER NOPRINT FILE=sdtab40
$TAB ID VM KM V1 V2 V3 Q2 Q3 ETA1 ETA2 ETA3 ETA4 ETA5 ETA6
ONEHEADER NOPRINT FILE=patab40
Back to the Top
The following message was posted to: PharmPK
Hi,
At a quick glance and without knowing more about your specific PK
model, one of the things that I noticed in your control stream is
that the differential equation for compartment 2, Dadt(2), you
include a term -K21*A(2), but a corresponding term +K21*A(2) is not
included in the Dadt(1) differential equation. This may contribute
to the difficulties that you are seeing.
Regards,
Brenda
Back to the Top
The following message was posted to: PharmPK
Hi Jing,
1. You have way too many eta effects. Start with CL, central volume
only, fix the rest to zero, at least to define the range of parameter
values. You may add more later if needed.
2. This is an error:
W = SQRT(THETA(8)**2+THETA(9)**2*F*F)
you should use
W = SQRT(THETA(8)**2+THETA(9)**2/F/F)
3. This is an error as well:
DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)
DADT(2) = K12*A(1) - K21*A(2) + K32*A(3) - K23*A(2)
you are missing K21*A(2) in
DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)+ K21*A(2)
Leonid
[F/F = 1? - db]
Back to the Top
The following message was posted to: PharmPK
Dear Jing,
The input from the second compartment to the first compartment is
missing.
Probably what you want to fit is a system of DE as follows
DADT(1) = - K12*A(1) + K21*A(2) -
A(1)*VM/(KM+C1)
DADT(2) = K12*A(1) - K21*A(2) - K23*A(2) + K32*A(3)
DADT(3) = + K23*A(2) - K32*A(3)
However, I'm not sure you want to start with a catenary model,
instead of a
mamillary model. If you like to test a mamillary model, it should be as
follows:
DADT(1) = - K12*A(1) + K21*A(2) - K13*A(1) + K31*A(3) -
A(1)*VM/(KM+C1)
DADT(2) = K12*A(1) - K21*A(2)
DADT(3) = + K13*A(1) - K31*A(3)
Regards,
Juan Jose Perez Ruixo, PhD.
Principal Scientist. Advanced PK/PD Modelling & Simulation,
Global Clinical Pharmacokinetic and Clinical Pharmacology,
Johnson & Johnson Pharmaceutical Research & Development,
a Division of Janssen Pharmaceutica, NV.
Email: jperezru.aaa.prdbe.jnj.com
Back to the Top
The following message was posted to: PharmPK
Leonid,
I think W is correctly specified in Jing's control stream below. As
she has
coded it, W is the residual standard deviation (given the ETAs) for the
combined proportional and additive error model. That is,
Var(Y | ETAs) = (W^2)Var(ERR(1)) = W^2 = THETA(8)**2 + (THETA(9)**2)*F*F
where THETA(8) is the residual SD for the additive component and THETA
(9) is
the residual CV for the proportional component.
Ken
Back to the Top
Jing:
From a first look:
1) your central compartment (1) does not appear to reflect the return
from compartment 2
DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)+ K21*A(2)
2) your saturable term should use C1 instead of A(1) in order to
yield units of mass/time.
3) Is there a reason you are setting this up to have no exchange
between compartment 1 and 3?
Paul
> $DES
> C1 = A(1)/V1
> DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)
> DADT(2) = K12*A(1) - K21*A(2) + K32*A(3) - K23*A(2)
> DADT(3) = K23*A(2) - K32*A(3)
--
Paul R. Hutson, Pharm.D.
Associate Professor
UW School of Pharmacy
777 Highland Avenue
Madison WI 53705-2222
Tel 608.263.2496
Fax 608.265.5421
Back to the Top
Jing:
From a first look:
1) your central compartment (1) does not appear to reflect the return
from compartment 2
DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)+ K21*A(2)
2) your saturable term should use C1 instead of A(1) in order to
yield units of mass/time.
3) Is there a reason you are setting this up to have no exchange
between compartment 1 and 3?
Paul
> $DES
> C1 = A(1)/V1
> DADT(1) = - K12*A(1) - A(1)*VM/(KM+C1)
> DADT(2) = K12*A(1) - K21*A(2) + K32*A(3) - K23*A(2)
> DADT(3) = K23*A(2) - K32*A(3)
--
Paul R. Hutson, Pharm.D.
Associate Professor
UW School of Pharmacy
777 Highland Avenue
Madison WI 53705-2222
Tel 608.263.2496
Fax 608.265.5421
Back to the Top
The following message was posted to: PharmPK
Ken,
Note that data are log-transformed. See
http://www.cognigencorp.com/nonmem/nm/99apr232002.html
for Mats Karlsson explanation how to apply combined error in the log-
transformed case.
--cut here --
To get the same error structure for log-transformed data as the
additive+proportional on the normal scale, I use
Y=LOG(F)+SQRT(THETA(x)**2+THETA(y)**2/F**2)*EPS(1)
with
$SIGMA 1 FIX
THETA(x) and THETA(y) will have the same meaning as on the
untransformed scale
with
Y=F+SQRT(THETA(y)**2+THETA(x)**2*F**2)*EPS(1)
with
$SIGMA 1 FIX
-- cut here --
Leonid
Back to the Top
The following message was posted to: PharmPK
To Jing,
Jing, I have not used NONMEM, but are you sure your equations are
correct?
It looks to me as if equation 1 should read:
DADT(1) = K21*A(2) - K12*A(1) - A(1)*VM/(KM+C1)
Regards, Peter Moate
PharmPK Discussion List Archive Index page
Copyright 1995-2010 David W. A. Bourne (david@boomer.org)