dear NONMEM community,
I built a PK-PD model (semiphysiological model for neutropenia) for a new
IV topoisomerase inhibitor, and simulated different dosing regimens (model
for D1+8 q3w below (101.ctl / NAMI-SIM-ANC--D1+8-q3w-12.5B.csv). I
encountered the problem that feedback (FEEDB) on the bone marrow has to be
increased to values >620, because otherwise it gives me:
---------------------------------------------------------------------------------------------------------
DES SUBROUTINE: ERROR IN COMPUTATION
ATTEMPT TO COMPUTE BASE**POWER WITH BASE<0.
MESSAGE ISSUED FROM SIMULATION STEP
----------------------------------------------------------------------------------------------------------
Strange enough, the same model does not produce errors in the "estimation
mode".
If I increase the time (T) for the feedback to start working out (from 500
to >/= 620 in this case), simulation works out fine:
IF(T.GE.500) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
>>Time=500 is the time of first chemotherapy dosing (after the "system has
been filled with neutrophils").
Subsequently, I added "categorical ANC-toxicity" according to the following
coding:
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
This produces "differential equations" errors at about n=150, meaning it is
possible to simulate 150 patients, but not more. So far, I was not able to
identify the problem, although the same coding worked just fine for a
previous model of paclitaxel. Any help would be very welcome!
thanks and best regards
Markus
MODEL-101
;Project Name: namitecan
;Project ID: NO PROJECT DESCRIPTION
$PROB RUN# 100D (NAMI)
$INPUT C=DROP ID TIME AMT RATE DV CMT
MDV EVID
$DATA NAMI-SIM-ANC-D1+8-q3w-12.5B.CSV IGNORE=C
$SUBROUTINES ADVAN6 TOL=2
$ABBREVIATED COMRES=1
$MODEL COMP=(CENTRAL,DEFDOSE) ;1
COMP=(PER1) ;2
COMP=(PER2) ;3
COMP=(AUC) ;4
COMP=(PROL) ;5
COMP=(TRANS1) ;6
COMP=(TRANS2) ;7
COMP=(TRANS3) ;8
COMP=(ANC) ;9
COMP=(NADIR) ;10
COMP=(TNAD) ;11
COMP=(TBTH) ;12
$PK
" FIRST
" COMMON/PRCOMG/IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" INTEGER IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" IMAX=100000000
IF(ICALL.EQ.4.AND.NEWIND.NE.2) THEN
CALL RANDOM (2,R)
CCL=90+12*R
CALL RANDOM (3,R)
BSL=5+0.5*R
ENDIF
TVCL=THETA(1)*(CCL/90)**THETA(7)
CL=TVCL*EXP(ETA(1))
V1=THETA(2)
Q1=THETA(3)*EXP(ETA(2))
V2=THETA(4)*EXP(ETA(3))
Q2=THETA(5)*EXP(ETA(4))
V3=THETA(6)
K10=CL/V1
K12=Q1/V1
K21=Q1/V2
K13=Q2/V1
K31=Q2/V3
MTT=THETA(8)*EXP(ETA(5))
SLOPE=THETA(9)*EXP(ETA(6))
BASE=EXP(LOG(BSL)+THETA(10)*ETA(7))
GAMMA=THETA(11)
V1=0.15
V2=38
V3=152
S1=V1
F5=BSL
V5=1
V6=1
V7=1
V8=1
V9=1
TIJD=TIME-500
$DES
C1=A(1)/S1
DADT(1)=-K12*A(1)+K21*A(2)-K13*A(1)+K31*A(3)-K10*A(1)
DADT(2)=K12*A(1)-K21*A(2)
DADT(3)=K13*A(1)-K31*A(3)
DADT(4)=A(1)/S1
AUC=A(4)
C9=A(9)
ANC=A(9)
IF(T.GE.520) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
KTR=4/MTT
KPROL=(KTR*FEEDB)-KTR*(SLOPE*C1)
DADT(5)=KPROL*A(5)-KTR*A(5)
DADT(6)=KTR*A(5)-KTR*A(6)
DADT(7)=KTR*A(6)-KTR*A(7)
DADT(8)=KTR*A(7)-KTR*A(8)
DADT(9)=KTR*A(8)-KTR*A(9)
IF(T.EQ.0) COM(1)=0
IF(COM(1).EQ.0.AND.DADT(9).LT.0.OR.T.LE.520) THEN
DADT(10)=DADT(9)
DADT(11)=1
ELSE
DADT(10)=0
COM(1)=1
DADT(11)=0
ENDIF
NADI=A(10)
TNAD=A(11)-500
;categorical ANC-toxicity
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
$ERROR
IF(DV.EQ.0) THEN
IPRED=-3
ELSE
IPRED=LOG(F)
ENDIF
Y=IPRED+THETA(10)*EPS(1)
W=IPRED
IRES=DV-IPRED
IWRES=IRES/W
$THETA
0.149 ;1 CL
0.15 ;2 V1
68.8 ;3 Q1
38 ;4 V2
0.654 ;5 Q2
152 ;6 V3
1.09 ;7 CLL>CL
115 ;8 MTT
0.888 ;9 SLOPE
0.689 ;10 ERR
0.222 ;11 GAMMA
$OMEGA
0.567 ;1 CL
0.0975 ;2 Q1
0.169 ;3 V2
0.368 ;4 Q2
0.0257 ;[P] 5 ;MTT
0.232 ;[P] 6 ;SLOPE
1 ;[P] 7 ;ERR BSL
$SIGMA
1 ;[P] PD
$SIMULATION(48532) (2453) (19923) ONLYSIMULATION
$TABLE ID TIJD IPRED PRED C9 CMT SLOPE AUC CCL BSL
NADI TNAD COM(1) TBTH DLT NOPRINT ONEHEADER FILE=101.TAB
NAMI-SIM-ANC--D1+8-q3w-12.5B.csv
C NAMI
C ID TIME AMT RATE DV CMT MDV EVID
1 0 1 1 0 5 1 4
1 500 26.5 13.3 0 1 1 1
1 500
0 9 1 2
1 524
0 9 1 2
1 548
0 9 1 2
1 572
0 9 1 2
1 596
0 9 1 2
1 620
0 9 1 2
1 644
0 9 1 2
1 668 26.5 13.3 0 1 1 1
1 668
0 9 1 2
1 692
0 9 1 2
1 716
0 9 1 2
1 740
0 9 1 2
1 764
0 9 1 2
1 788
0 9 1 2
1 812
0 9 1 2
1 836
0 9 1 2
1 860
0 9 1 2
1 884
0 9 1 2
1 908
0 9 1 2
1 932
0 9 1 2
1 956
0 9 1 2
1 980
0 9 1 2
1 1004
0 9 1 2
1 1028
0 9 1 2
1 1052
0 9 1 2
1 1076
0 9 1 2
1 1100
0 9 1 2
1 1124
0 9 1 2
1 1148
0 9 1 2
1 1172
0 9 1 2
1 1196
0 9 1 2
--
Markus Joerger MD-PhD
Medical Oncology&Clinical Pharmacology
Department of Internal Medicine
Kantonsspital
St. Gallen
Switzerland
[email protected]
Phone: +41-765591070
Fax: +41-714946325
PKPD-simulations
4 messages
4 people
Latest: Jul 25, 2013
Hi Markus,
If R is normally distributed, perhaps it is possible that CCL and/or BSL become
less or equal than zero?
Erik
Quoted reply history
________________________________
From: [email protected] [[email protected]] on behalf of
markus joerger [[email protected]]
Sent: Wednesday, July 24, 2013 9:29 PM
To: NONMEM USERS
Subject: [NMusers] PKPD-simulations
dear NONMEM community,
I built a PK-PD model (semiphysiological model for neutropenia) for a new IV
topoisomerase inhibitor, and simulated different dosing regimens (model for
D1+8 q3w below (101.ctl / NAMI-SIM-ANC--D1+8-q3w-12.5B.csv). I encountered the
problem that feedback (FEEDB) on the bone marrow has to be increased to values
>620, because otherwise it gives me:
---------------------------------------------------------------------------------------------------------
DES SUBROUTINE: ERROR IN COMPUTATION
ATTEMPT TO COMPUTE BASE**POWER WITH BASE<0.
MESSAGE ISSUED FROM SIMULATION STEP
----------------------------------------------------------------------------------------------------------
Strange enough, the same model does not produce errors in the "estimation mode".
If I increase the time (T) for the feedback to start working out (from 500 to
>/= 620 in this case), simulation works out fine:
http://T.GE.500) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
>>Time=500 is the time of first chemotherapy dosing (after the "system has been
>>filled with neutrophils").
Subsequently, I added "categorical ANC-toxicity" according to the following
coding:
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
This produces "differential equations" errors at about n=150, meaning it is
possible to simulate 150 patients, but not more. So far, I was not able to
identify the problem, although the same coding worked just fine for a previous
model of paclitaxel. Any help would be very welcome!
thanks and best regards
Markus
MODEL-101
;Project Name: namitecan
;Project ID: NO PROJECT DESCRIPTION
$PROB RUN# 100D (NAMI)
$INPUT C=DROP ID TIME AMT RATE DV CMT
MDV EVID
$DATA NAMI-SIM-ANC-D1+8-q3w-12.5B.CSV IGNORE=C
$SUBROUTINES ADVAN6 TOL=2
$ABBREVIATED COMRES=1
$MODEL COMP=(CENTRAL,DEFDOSE) ;1
COMP=(PER1) ;2
COMP=(PER2) ;3
COMP=(AUC) ;4
COMP=(PROL) ;5
COMP=(TRANS1) ;6
COMP=(TRANS2) ;7
COMP=(TRANS3) ;8
COMP=(ANC) ;9
COMP=(NADIR) ;10
COMP=(TNAD) ;11
COMP=(TBTH) ;12
$PK
" FIRST
" COMMON/PRCOMG/IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" INTEGER IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" IMAX=100000000
IF(ICALL.EQ.4.AND.NEWIND.NE.2) THEN
CALL RANDOM (2,R)
CCL=90+12*R
CALL RANDOM (3,R)
BSL=5+0.5*R
ENDIF
TVCL=THETA(1)*(CCL/90)**THETA(7)
CL=TVCL*EXP(ETA(1))
V1=THETA(2)
Q1=THETA(3)*EXP(ETA(2))
V2=THETA(4)*EXP(ETA(3))
Q2=THETA(5)*EXP(ETA(4))
V3=THETA(6)
K10=CL/V1
K12=Q1/V1
K21=Q1/V2
K13=Q2/V1
K31=Q2/V3
MTT=THETA(8)*EXP(ETA(5))
SLOPE=THETA(9)*EXP(ETA(6))
BASE=EXP(LOG(BSL)+THETA(10)*ETA(7))
GAMMA=THETA(11)
V1=0.15
V2=38
V3=152
S1=V1
F5=BSL
V5=1
V6=1
V7=1
V8=1
V9=1
TIJD=TIME-500
$DES
C1=A(1)/S1
DADT(1)=-K12*A(1)+K21*A(2)-K13*A(1)+K31*A(3)-K10*A(1)
DADT(2)=K12*A(1)-K21*A(2)
DADT(3)=K13*A(1)-K31*A(3)
DADT(4)=A(1)/S1
AUC=A(4)
C9=A(9)
ANC=A(9)
IF(T.GE.520) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
KTR=4/MTT
KPROL=(KTR*FEEDB)-KTR*(SLOPE*C1)
DADT(5)=KPROL*A(5)-KTR*A(5)
DADT(6)=KTR*A(5)-KTR*A(6)
DADT(7)=KTR*A(6)-KTR*A(7)
DADT(8)=KTR*A(7)-KTR*A(8)
DADT(9)=KTR*A(8)-KTR*A(9)
IF(T.EQ.0) COM(1)=0
IF(COM(1).EQ.0.AND.DADT(9).LT.0.OR.T.LE.520) THEN
DADT(10)=DADT(9)
DADT(11)=1
ELSE
DADT(10)=0
COM(1)=1
DADT(11)=0
ENDIF
NADI=A(10)
TNAD=A(11)-500
;categorical ANC-toxicity
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
$ERROR
IF(DV.EQ.0) THEN
IPRED=-3
ELSE
IPRED=LOG(F)
ENDIF
Y=IPRED+THETA(10)*EPS(1)
W=IPRED
IRES=DV-IPRED
IWRES=IRES/W
$THETA
0.149 ;1 CL
0.15 ;2 V1
68.8 ;3 Q1
38 ;4 V2
0.654 ;5 Q2
152 ;6 V3
1.09 ;7 CLL>CL
115 ;8 MTT
0.888 ;9 SLOPE
0.689 ;10 ERR
0.222 ;11 GAMMA
$OMEGA
0.567 ;1 CL
0.0975 ;2 Q1
0.169 ;3 V2
0.368 ;4 Q2
0.0257 ;[P] 5 ;MTT
0.232 ;[P] 6 ;SLOPE
1 ;[P] 7 ;ERR BSL
$SIGMA
1 ;[P] PD
$SIMULATION(48532) (2453) (19923) ONLYSIMULATION
$TABLE ID TIJD IPRED PRED C9 CMT SLOPE AUC CCL BSL
NADI TNAD COM(1) TBTH DLT NOPRINT ONEHEADER FILE=101.TAB
NAMI-SIM-ANC--D1+8-q3w-12.5B.csv
C NAMI
C ID TIME AMT RATE DV CMT MDV EVID
1 0 1 1 0 5 1 4
1 500 26.5 13.3 0 1 1 1
1 500
0 9 1 2
1 524
0 9 1 2
1 548
0 9 1 2
1 572
0 9 1 2
1 596
0 9 1 2
1 620
0 9 1 2
1 644
0 9 1 2
1 668 26.5 13.3 0 1 1 1
1 668
0 9 1 2
1 692
0 9 1 2
1 716
0 9 1 2
1 740
0 9 1 2
1 764
0 9 1 2
1 788
0 9 1 2
1 812
0 9 1 2
1 836
0 9 1 2
1 860
0 9 1 2
1 884
0 9 1 2
1 908
0 9 1 2
1 932
0 9 1 2
1 956
0 9 1 2
1 980
0 9 1 2
1 1004
0 9 1 2
1 1028
0 9 1 2
1 1052
0 9 1 2
1 1076
0 9 1 2
1 1100
0 9 1 2
1 1124
0 9 1 2
1 1148
0 9 1 2
1 1172
0 9 1 2
1 1196
0 9 1 2
--
Markus Joerger MD-PhD
Medical Oncology&Clinical Pharmacology
Department of Internal Medicine
Kantonsspital
St. Gallen
Switzerland
[email protected]<mailto:[email protected]>
Phone: +41-765591070
Fax: +41-714946325
Hi Markus,
Have you tried to defend against BASE**power error when A(9)=0 ? I know it should not be 0 but just in case:
IF(A(9).GT.0.AND.T.GE.500) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
Also, switch to ADVAN13, it is much more stable. TOL=2 is way too small. Should be at least 6 (if at all possible: could be possible with ADVAN13)
Leonid
--------------------------------------
Leonid Gibiansky, Ph.D.
President, QuantPharm LLC
web: www.quantpharm.com
e-mail: LGibiansky at quantpharm.com
tel: (301) 767 5566
Quoted reply history
On 7/24/2013 3:29 PM, markus joerger wrote:
> dear NONMEM community,
>
> I built a PK-PD model (semiphysiological model for neutropenia) for a
> new IV topoisomerase inhibitor, and simulated different dosing regimens
> (model for D1+8 q3w below (101.ctl / NAMI-SIM-ANC--D1+8-q3w-12.5B.csv).
> I encountered the problem that feedback (FEEDB) on the bone marrow has
> to be increased to values >620, because otherwise it gives me:
>
> ---------------------------------------------------------------------------------------------------------
> DES SUBROUTINE: ERROR IN COMPUTATION
> ATTEMPT TO COMPUTE BASE**POWER WITH BASE<0.
> MESSAGE ISSUED FROM SIMULATION STEP
> ----------------------------------------------------------------------------------------------------------
>
> Strange enough, the same model does not produce errors in the
> "estimation mode".
> If I increase the time (T) for the feedback to start working out (from
> 500 to >/= 620 in this case), simulation works out fine:
>
> IF(T.GE http://T.GE.500) THEN
> FEEDB=(BASE/A(9))**GAMMA
> ELSE
> FEEDB=1
> ENDIF
>
> >>Time=500 is the time of first chemotherapy dosing (after the "system
> has been filled with neutrophils").
>
> Subsequently, I added "categorical ANC-toxicity" according to the
> following coding:
>
> FLAG1=0
> IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
> DADT(12)=FLAG1
> TBTH=A(12)
> IF(A(12).GT.120) THEN
> DLT=1
> ELSE
> DLT=0
> ENDIF
>
> This produces "differential equations" errors at about n=150, meaning it
> is possible to simulate 150 patients, but not more. So far, I was not
> able to identify the problem, although the same coding worked just fine
> for a previous model of paclitaxel. Any help would be very welcome!
>
> thanks and best regards
>
> Markus
>
> MODEL-101
> ;Project Name: namitecan
> ;Project ID: NO PROJECT DESCRIPTION
>
> $PROB RUN# 100D (NAMI)
> $INPUT C=DROP ID TIME AMT RATE DV CMT
> MDV EVID
>
> $DATA NAMI-SIM-ANC-D1+8-q3w-12.5B.CSV IGNORE=C
> $SUBROUTINES ADVAN6 TOL=2
> $ABBREVIATED COMRES=1
> $MODEL COMP=(CENTRAL,DEFDOSE) ;1
> COMP=(PER1) ;2
> COMP=(PER2) ;3
> COMP=(AUC) ;4
> COMP=(PROL) ;5
> COMP=(TRANS1) ;6
> COMP=(TRANS2) ;7
> COMP=(TRANS3) ;8
> COMP=(ANC) ;9
> COMP=(NADIR) ;10
> COMP=(TNAD) ;11
> COMP=(TBTH) ;12
>
> $PK
> " FIRST
> " COMMON/PRCOMG/IDUM1,IDUM2,IMAX,IDUM4,IDUM5
> " INTEGER IDUM1,IDUM2,IMAX,IDUM4,IDUM5
> " IMAX=100000000
>
> IF(ICALL.EQ.4.AND.NEWIND.NE.2) THEN
> CALL RANDOM (2,R)
> CCL=90+12*R
> CALL RANDOM (3,R)
> BSL=5+0.5*R
> ENDIF
>
> TVCL=THETA(1)*(CCL/90)**THETA(7)
> CL=TVCL*EXP(ETA(1))
> V1=THETA(2)
> Q1=THETA(3)*EXP(ETA(2))
> V2=THETA(4)*EXP(ETA(3))
> Q2=THETA(5)*EXP(ETA(4))
> V3=THETA(6)
> K10=CL/V1
> K12=Q1/V1
> K21=Q1/V2
> K13=Q2/V1
> K31=Q2/V3
>
> MTT=THETA(8)*EXP(ETA(5))
> SLOPE=THETA(9)*EXP(ETA(6))
> BASE=EXP(LOG(BSL)+THETA(10)*ETA(7))
> GAMMA=THETA(11)
>
> V1=0.15
> V2=38
> V3=152
> S1=V1
> F5=BSL
> V5=1
> V6=1
> V7=1
> V8=1
> V9=1
> TIJD=TIME-500
>
> $DES
> C1=A(1)/S1
> DADT(1)=-K12*A(1)+K21*A(2)-K13*A(1)+K31*A(3)-K10*A(1)
> DADT(2)=K12*A(1)-K21*A(2)
> DADT(3)=K13*A(1)-K31*A(3)
> DADT(4)=A(1)/S1
> AUC=A(4)
> C9=A(9)
> ANC=A(9)
>
> IF(T.GE.520) THEN
> FEEDB=(BASE/A(9))**GAMMA
> ELSE
> FEEDB=1
> ENDIF
>
> KTR=4/MTT
> KPROL=(KTR*FEEDB)-KTR*(SLOPE*C1)
> DADT(5)=KPROL*A(5)-KTR*A(5)
> DADT(6)=KTR*A(5)-KTR*A(6)
> DADT(7)=KTR*A(6)-KTR*A(7)
> DADT(8)=KTR*A(7)-KTR*A(8)
> DADT(9)=KTR*A(8)-KTR*A(9)
>
> IF(T.EQ.0) COM(1)=0
>
> IF(COM(1).EQ.0.AND.DADT(9).LT.0.OR.T.LE.520) THEN
> DADT(10)=DADT(9)
> DADT(11)=1
> ELSE
> DADT(10)=0
> COM(1)=1
> DADT(11)=0
> ENDIF
>
> NADI=A(10)
> TNAD=A(11)-500
>
> ;categorical ANC-toxicity
>
> FLAG1=0
> IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
> DADT(12)=FLAG1
> TBTH=A(12)
> IF(A(12).GT.120) THEN
> DLT=1
> ELSE
> DLT=0
> ENDIF
>
> $ERROR
> IF(DV.EQ.0) THEN
> IPRED=-3
> ELSE
> IPRED=LOG(F)
> ENDIF
> Y=IPRED+THETA(10)*EPS(1)
> W=IPRED
> IRES=DV-IPRED
> IWRES=IRES/W
>
> $THETA
> 0.149 ;1 CL
> 0.15 ;2 V1
> 68.8 ;3 Q1
> 38 ;4 V2
> 0.654 ;5 Q2
> 152 ;6 V3
> 1.09 ;7 CLL>CL
> 115 ;8 MTT
> 0.888 ;9 SLOPE
> 0.689 ;10 ERR
> 0.222 ;11 GAMMA
>
> $OMEGA
> 0.567 ;1 CL
> 0.0975 ;2 Q1
> 0.169 ;3 V2
> 0.368 ;4 Q2
> 0.0257 ;[P] 5 ;MTT
> 0.232 ;[P] 6 ;SLOPE
> 1 ;[P] 7 ;ERR BSL
>
> $SIGMA
> 1 ;[P] PD
>
> $SIMULATION(48532) (2453) (19923) ONLYSIMULATION
>
> $TABLE ID TIJD IPRED PRED C9 CMT SLOPE AUC CCL BSL
> NADI TNAD COM(1) TBTH DLT NOPRINT ONEHEADER FILE=101.TAB
>
> NAMI-SIM-ANC--D1+8-q3w-12.5B.csv
> C NAMI
>
> C ID TIME AMT RATE DV CMT MDV EVID
>
> 1 0 1 1 0 5 1 4
>
> 1 500 26.5 13.3 0 1 1 1
>
> 1 500
>
> 0 9 1 2
>
> 1 524
>
> 0 9 1 2
>
> 1 548
>
> 0 9 1 2
>
> 1 572
>
> 0 9 1 2
>
> 1 596
>
> 0 9 1 2
>
> 1 620
>
> 0 9 1 2
>
> 1 644
>
> 0 9 1 2
>
> 1 668 26.5 13.3 0 1 1 1
>
> 1 668
>
> 0 9 1 2
>
> 1 692
>
> 0 9 1 2
>
> 1 716
>
> 0 9 1 2
>
> 1 740
>
> 0 9 1 2
>
> 1 764
>
> 0 9 1 2
>
> 1 788
>
> 0 9 1 2
>
> 1 812
>
> 0 9 1 2
>
> 1 836
>
> 0 9 1 2
>
> 1 860
>
> 0 9 1 2
>
> 1 884
>
> 0 9 1 2
>
> 1 908
>
> 0 9 1 2
>
> 1 932
>
> 0 9 1 2
>
> 1 956
>
> 0 9 1 2
>
> 1 980
>
> 0 9 1 2
>
> 1 1004
>
> 0 9 1 2
>
> 1 1028
>
> 0 9 1 2
>
> 1 1052
>
> 0 9 1 2
>
> 1 1076
>
> 0 9 1 2
>
> 1 1100
>
> 0 9 1 2
>
> 1 1124
>
> 0 9 1 2
>
> 1 1148
>
> 0 9 1 2
>
> 1 1172
>
> 0 9 1 2
>
> 1 1196
>
> 0 9 1 2
>
> --
> Markus Joerger MD-PhD
> Medical Oncology&Clinical Pharmacology
> Department of Internal Medicine
> Kantonsspital
> St. Gallen
> Switzerland
> [email protected] <mailto:[email protected]>
> Phone: +41-765591070
> Fax: +41-714946325
Markus,
Can you indicate us how did you define the initial conditions of the system?
Best Regards,
Juanjo.
Quoted reply history
On 25/07/2013, at 12:37, "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>> wrote:
Hi Markus,
If R is normally distributed, perhaps it is possible that CCL and/or BSL become
less or equal than zero?
Erik
________________________________
From: [email protected]<mailto:[email protected]>
[[email protected]<mailto:[email protected]>] on behalf
of markus joerger [[email protected]<mailto:[email protected]>]
Sent: Wednesday, July 24, 2013 9:29 PM
To: NONMEM USERS
Subject: [NMusers] PKPD-simulations
dear NONMEM community,
I built a PK-PD model (semiphysiological model for neutropenia) for a new IV
topoisomerase inhibitor, and simulated different dosing regimens (model for
D1+8 q3w below (101.ctl / NAMI-SIM-ANC--D1+8-q3w-12.5B.csv). I encountered the
problem that feedback (FEEDB) on the bone marrow has to be increased to values
>620, because otherwise it gives me:
---------------------------------------------------------------------------------------------------------
DES SUBROUTINE: ERROR IN COMPUTATION
ATTEMPT TO COMPUTE BASE**POWER WITH BASE<0.
MESSAGE ISSUED FROM SIMULATION STEP
----------------------------------------------------------------------------------------------------------
Strange enough, the same model does not produce errors in the "estimation mode".
If I increase the time (T) for the feedback to start working out (from 500 to
>/= 620 in this case), simulation works out fine:
http://T.GE.500) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
>>Time=500 is the time of first chemotherapy dosing (after the "system has been
>>filled with neutrophils").
Subsequently, I added "categorical ANC-toxicity" according to the following
coding:
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
This produces "differential equations" errors at about n=150, meaning it is
possible to simulate 150 patients, but not more. So far, I was not able to
identify the problem, although the same coding worked just fine for a previous
model of paclitaxel. Any help would be very welcome!
thanks and best regards
Markus
MODEL-101
;Project Name: namitecan
;Project ID: NO PROJECT DESCRIPTION
$PROB RUN# 100D (NAMI)
$INPUT C=DROP ID TIME AMT RATE DV CMT
MDV EVID
$DATA NAMI-SIM-ANC-D1+8-q3w-12.5B.CSV IGNORE=C
$SUBROUTINES ADVAN6 TOL=2
$ABBREVIATED COMRES=1
$MODEL COMP=(CENTRAL,DEFDOSE) ;1
COMP=(PER1) ;2
COMP=(PER2) ;3
COMP=(AUC) ;4
COMP=(PROL) ;5
COMP=(TRANS1) ;6
COMP=(TRANS2) ;7
COMP=(TRANS3) ;8
COMP=(ANC) ;9
COMP=(NADIR) ;10
COMP=(TNAD) ;11
COMP=(TBTH) ;12
$PK
" FIRST
" COMMON/PRCOMG/IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" INTEGER IDUM1,IDUM2,IMAX,IDUM4,IDUM5
" IMAX=100000000
IF(ICALL.EQ.4.AND.NEWIND.NE.2) THEN
CALL RANDOM (2,R)
CCL=90+12*R
CALL RANDOM (3,R)
BSL=5+0.5*R
ENDIF
TVCL=THETA(1)*(CCL/90)**THETA(7)
CL=TVCL*EXP(ETA(1))
V1=THETA(2)
Q1=THETA(3)*EXP(ETA(2))
V2=THETA(4)*EXP(ETA(3))
Q2=THETA(5)*EXP(ETA(4))
V3=THETA(6)
K10=CL/V1
K12=Q1/V1
K21=Q1/V2
K13=Q2/V1
K31=Q2/V3
MTT=THETA(8)*EXP(ETA(5))
SLOPE=THETA(9)*EXP(ETA(6))
BASE=EXP(LOG(BSL)+THETA(10)*ETA(7))
GAMMA=THETA(11)
V1=0.15
V2=38
V3=152
S1=V1
F5=BSL
V5=1
V6=1
V7=1
V8=1
V9=1
TIJD=TIME-500
$DES
C1=A(1)/S1
DADT(1)=-K12*A(1)+K21*A(2)-K13*A(1)+K31*A(3)-K10*A(1)
DADT(2)=K12*A(1)-K21*A(2)
DADT(3)=K13*A(1)-K31*A(3)
DADT(4)=A(1)/S1
AUC=A(4)
C9=A(9)
ANC=A(9)
IF(T.GE.520) THEN
FEEDB=(BASE/A(9))**GAMMA
ELSE
FEEDB=1
ENDIF
KTR=4/MTT
KPROL=(KTR*FEEDB)-KTR*(SLOPE*C1)
DADT(5)=KPROL*A(5)-KTR*A(5)
DADT(6)=KTR*A(5)-KTR*A(6)
DADT(7)=KTR*A(6)-KTR*A(7)
DADT(8)=KTR*A(7)-KTR*A(8)
DADT(9)=KTR*A(8)-KTR*A(9)
IF(T.EQ.0) COM(1)=0
IF(COM(1).EQ.0.AND.DADT(9).LT.0.OR.T.LE.520) THEN
DADT(10)=DADT(9)
DADT(11)=1
ELSE
DADT(10)=0
COM(1)=1
DADT(11)=0
ENDIF
NADI=A(10)
TNAD=A(11)-500
;categorical ANC-toxicity
FLAG1=0
IF (T.GT.520.AND.ANC.LT.0.5) FLAG1=1
DADT(12)=FLAG1
TBTH=A(12)
IF(A(12).GT.120) THEN
DLT=1
ELSE
DLT=0
ENDIF
$ERROR
IF(DV.EQ.0) THEN
IPRED=-3
ELSE
IPRED=LOG(F)
ENDIF
Y=IPRED+THETA(10)*EPS(1)
W=IPRED
IRES=DV-IPRED
IWRES=IRES/W
$THETA
0.149 ;1 CL
0.15 ;2 V1
68.8 ;3 Q1
38 ;4 V2
0.654 ;5 Q2
152 ;6 V3
1.09 ;7 CLL>CL
115 ;8 MTT
0.888 ;9 SLOPE
0.689 ;10 ERR
0.222 ;11 GAMMA
$OMEGA
0.567 ;1 CL
0.0975 ;2 Q1
0.169 ;3 V2
0.368 ;4 Q2
0.0257 ;[P] 5 ;MTT
0.232 ;[P] 6 ;SLOPE
1 ;[P] 7 ;ERR BSL
$SIGMA
1 ;[P] PD
$SIMULATION(48532) (2453) (19923) ONLYSIMULATION
$TABLE ID TIJD IPRED PRED C9 CMT SLOPE AUC CCL BSL
NADI TNAD COM(1) TBTH DLT NOPRINT ONEHEADER FILE=101.TAB
NAMI-SIM-ANC--D1+8-q3w-12.5B.csv
C NAMI
C ID TIME AMT RATE DV CMT MDV EVID
1 0 1 1 0 5 1 4
1 500 26.5 13.3 0 1 1 1
1 500
0 9 1 2
1 524
0 9 1 2
1 548
0 9 1 2
1 572
0 9 1 2
1 596
0 9 1 2
1 620
0 9 1 2
1 644
0 9 1 2
1 668 26.5 13.3 0 1 1 1
1 668
0 9 1 2
1 692
0 9 1 2
1 716
0 9 1 2
1 740
0 9 1 2
1 764
0 9 1 2
1 788
0 9 1 2
1 812
0 9 1 2
1 836
0 9 1 2
1 860
0 9 1 2
1 884
0 9 1 2
1 908
0 9 1 2
1 932
0 9 1 2
1 956
0 9 1 2
1 980
0 9 1 2
1 1004
0 9 1 2
1 1028
0 9 1 2
1 1052
0 9 1 2
1 1076
0 9 1 2
1 1100
0 9 1 2
1 1124
0 9 1 2
1 1148
0 9 1 2
1 1172
0 9 1 2
1 1196
0 9 1 2
--
Markus Joerger MD-PhD
Medical Oncology&Clinical Pharmacology
Department of Internal Medicine
Kantonsspital
St. Gallen
Switzerland
[email protected]<mailto:[email protected]>
Phone: +41-765591070
Fax: +41-714946325