RE:info on a do-while-loop

From: Nick Holford Date: June 01, 2004 technical Source: cognigencorp.com
From: Nick Holford n.holford@auckland.ac.nz Subject: RE:[NMusers]info on a do-while-loop Date: Tue, June 1, 2004 7:06 pm Jaya, Do-while loops can only be used with $SIMULATION and when ICALL.EQ.4. The only use I have found for them is to resample from the ETA and EPS distributions to truncate the distributions e.g. to ensure that all conc samples are non-negative. An example is shown below. The ETA sample distribution is truncated so that all values lie within 99.9% of all possible values. The EPS sample distributions is truncated so that all values are >= 0. $PROB THEOPHYLLINE PHARMACODYNAMICS $DATA theopd.dat IGNORE # $INPUT ID TIME THEO AGE WT GEND RACE DIAG DV $SIM (20000625 NORMAL NEW) SUBPROBLEMS=2 $ESTIM PRINT=0 MAXEVAL=9999 $THETA (0,150.,) ; E0 $THETA (0,200.,) ; EMAX $THETA (.001,10,) ; EC50 $OMEGA 0.5 ; CVE0 $OMEGA 0.5 ; CVEMAX $OMEGA 0.5 ; CVEC50 $SIGMA 100 ; SD 1 $PRED E0=THETA(1)*EXP(ETA(1)) EMAX=THETA(2)*EXP(ETA(2)) EC50=THETA(3)*EXP(ETA(3)) IF (ICALL.EQ.4) THEN ; simulation TRUNC=3.27 ; Z 2tailed alpha=0.01 i.e. include 99.9% TVE0=E0 E0=TVE0*EXP(ETA(1)) LNMU=LOG(TVE0) DLTA=TRUNC*0.717 ; MUST BE 3.27*SQRT(CVE0)! L0=EXP(LNMU-DLTA) H0=EXP(LNMU+DLTA) TVEMAX=EMAX EM=TVEMAX*EXP(ETA(2)) LNMU=LOG(TVEMAX) DLTA=TRUNC*0.717 ; MUST BE 3.27*SQRT(CVEMAX)! LM=EXP(LNMU-DLTA) HM=EXP(LNMU+DLTA) TVEC50=EC50 C5=TVEC50*EXP(ETA(3)) LNMU=LOG(TVEC50) DLTA=TRUNC*0.717 ; MUST BE 3.27*SQRT(CVEC50)! L5=EXP(LNMU-DLTA) H5=EXP(LNMU+DLTA) DOWHILE(E0.LT.L0.OR.E0.GT.H0.OR.EM.LT.LM.OR.EM.GT.HM.OR.C5.LT.L5.OR.C5.GT.H5) CALL SIMETA(ETA) EMAX=TVEMAX*EXP(ETA(2)) E0=TVE0*EXP(ETA(1)) EC50=TVEC50*EXP(ETA(3)) ENDDO ENDIF EFFECT=E0 + EM*THEO/(THEO+C5) Y = EFFECT + ERR(1) IF (ICALL.EQ.4) THEN ; simulation DOWHILE (Y.LT.0) CALL SIMEPS(EPS) Y=EFFECT + ERR(1) ENDDO ENDIF $TABLE ID TIME THEO AGE WT GEND RACE DIAG E0 EM C5 Y NOPRINT ONEHEADER FILE=theopdsimtrunc.fit -- Nick Holford, Dept Pharmacology & Clinical Pharmacology University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand email:n.holford@auckland.ac.nz tel:+64(9)373-7599x86730 fax:373-7556 http://www.health.auckland.ac.nz/pharmacology/staff/nholford/
Jun 01, 2004 Jaya Pisupati info on a do-while-loop
Jun 01, 2004 Nick Holford RE:info on a do-while-loop
Jun 02, 2004 Adrian Dunne RE:info on a do-while-loop
Jun 02, 2004 Jaya Pisupati RE:info on a do-while-loop