Hi all,
A model for simulation with uncertainty was previously posted by Mats Karlsson
in this forum.
After a few bug fixes (with help from Mats) it now actually works. See below:
Matts Kågedal
AstraZeneca
$PROB
$DATA data1.csv IGNORE=@
$INPUT ID DV TIME XVCL XVV AMT
;data1=
; 1 0 0 0 0 100
; 1 0 1 0 0 0
; 1 0 21 0 0 0
; 2 0 0 0 0 100
; etc
$SIM (20090726 NEW) SUBPROBLEMS=30 ;
$THETA ; estimates of THETA and OMEGA from previous run
(0,1) ; POP_CL theta1
(0,10) ; POP_V theta2
$OMEGA
0.01 ; PPV_CL eta1
0.01 ; PPV_V eta2
;variance-covariance matrix of the THETA estimates from previous run
$OMEGA BLOCK(2)
0.02 ; UNC_POP_CL eta3
0.0001 0.2 FIX; UNC_POP_V eta 4
$SIGMA .001
$SUB ADVAN1
$PK
CL=THETA(1)*EXP(ETA(1)) ;
V=THETA(2)*EXP(ETA(2)) ;
;S1=V
TCLE=THETA(1); estimated typical value
TVE=THETA(2); estimated typical value
IF (ICALL.EQ.4.AND.NEWIND.EQ.0) THEN ; do this just once per subproblem
DO WHILE (ETA(3).LT.-.99.OR.ETA(4).LT.-9.9) CALL SIMETA(ETA) ;resample if
"bad" values
END DO
TVCL=THETA(1)+ETA(3)
TVV =THETA(2)+ETA(4)
WRITE (53,*) TVCL, TVV ; Output simulated THETAs to file
ENDIF
IF (ICALL.EQ.4) THEN ; do this for all simulated values
CL=TVCL*EXP(ETA(1)) ; with uncertainty for CL
V =TVV*EXP(ETA(2)) ; with uncertainty for V
ENDIF
S1=V
K=CL/V
$ERROR
Y =F*EXP(EPS(1))
$INFN
IF (NEWIND.EQ.0) THEN
WRITE (52,*) THETA ; Output estimated THETAs to file
ENDIF
$EST MAX=9999 METH=1 INTER
--------------------------------------------------------------------------
Confidentiality Notice: This message is private and may contain confidential
and proprietary information. If you have received this message in error, please
notify us and remove it from your system and note that you must not copy,
distribute or take any action in reliance on it. Any unauthorized use or
disclosure of the contents of this message is not permitted and may be unlawful.
Simulation with uncertainty + estimation
2 messages
2 people
Latest: Apr 08, 2010
Matts,
You should be cautious about implementing this example as you've parameterized
the model. There is an inconsistency between your model parameterization and
the multivariate-normal assumption made when you use the var-cov matrix of the
estimates to incorporate parameter uncertainty. See earlier discussions on this
topic:
http://www.cognigencorp.com/nonmem/current/2009-July/1816.html
Marc
Quoted reply history
On Apr 8, 2010, at 4:20 AM, Kågedal, Matts wrote:
>
> Hi all,
> A model for simulation with uncertainty was previously posted by Mats
> Karlsson in this forum.
> After a few bug fixes (with help from Mats) it now actually works. See below:
> Matts Kågedal
> AstraZeneca
>
> $PROB
> $DATA data1.csv IGNORE=@
> $INPUT ID DV TIME XVCL XVV AMT
>
> ;data1=
> ; 1 0 0 0 0 100
> ; 1 0 1 0 0 0
> ; 1 0 21 0 0 0
> ; 2 0 0 0 0 100
> ; etc
> $SIM (20090726 NEW) SUBPROBLEMS=30 ;
> $THETA ; estimates of THETA and OMEGA from previous run
> (0,1) ; POP_CL theta1
> (0,10) ; POP_V theta2
> $OMEGA
> 0.01 ; PPV_CL eta1
> 0.01 ; PPV_V eta2
> ;variance-covariance matrix of the THETA estimates from previous run
> $OMEGA BLOCK(2)
> 0.02 ; UNC_POP_CL eta3
> 0.0001 0.2 FIX; UNC_POP_V eta 4
>
> $SIGMA .001
> $SUB ADVAN1
> $PK
> CL=THETA(1)*EXP(ETA(1)) ;
> V=THETA(2)*EXP(ETA(2)) ;
> ;S1=V
> TCLE=THETA(1); estimated typical value
> TVE=THETA(2); estimated typical value
>
> IF (ICALL.EQ.4.AND.NEWIND.EQ.0) THEN ; do this just once per
> subproblem
> DO WHILE (ETA(3).LT.-.99.OR.ETA(4).LT.-9.9) CALL SIMETA(ETA) ;resample if
> "bad" values
> END DO
> TVCL=THETA(1)+ETA(3)
> TVV =THETA(2)+ETA(4)
>
> WRITE (53,*) TVCL, TVV ; Output simulated THETAs to file
> ENDIF
>
> IF (ICALL.EQ.4) THEN ; do this for all simulated values
> CL=TVCL*EXP(ETA(1)) ; with uncertainty for CL
> V =TVV*EXP(ETA(2)) ; with uncertainty for V
> ENDIF
>
> S1=V
> K=CL/V
>
> $ERROR
> Y =F*EXP(EPS(1))
> $INFN
> IF (NEWIND.EQ.0) THEN
> WRITE (52,*) THETA ; Output estimated THETAs to file
> ENDIF
> $EST MAX=9999 METH=1 INTER
>
>
>
>
> Confidentiality Notice: This message is private and may contain confidential
> and proprietary information. If you have received this message in error,
> please notify us and remove it from your system and note that you must not
> copy, distribute or take any action in reliance on it. Any unauthorized use
> or disclosure of the contents of this message is not permitted and may be
> unlawful.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>