Ann, Several ideas: 1. Fix ALAGs to zero, will it help? 2. Try to shield IPRED from being zero IPRED=LOG(0.0001) IF(F.GT.0.0001) IPRED=LOG(F) Y=IPRED + SIG1*ERR(1) (this could be a bad style, but will allow you to test the code) 3. Try ADVAN6, 8, 13 4. Remove BQL part, fit it as a 3-comp linear model 5. Check whether you have any FLG values NE 0 or 1 in the dataset 6. Try (to guard against problem with FLG values):
F_FLAG=0 Y=LOG(F) + SIG1*ERR(1) IF(FLG.EQ.1)THEN F_FLAG=1 Y=CUMD ENDIF --------------------- At least, this will help you to understand where the problem is Leonid -------------------------------------- Leonid Gibiansky, Ph.D. President, QuantPharm LLC web: www.quantpharm.com e-mail: LGibiansky at quantpharm.com tel: (301) 767 5566 On 11/1/2010 11:42 AM, Ann Rigby-Jones wrote:
Dear Matt & All I’m still battling I’m afraid… Can’t seem to get past theSUM OF "SQUARED" WEIGHTED INDIVIDUAL RESIDUALS IS INFINITE problem. I’ve now log-transformed my data, and deleted all but the first occurrence of a BQL data point from each individual. I’m confident that the initial estimates of the structural parameters aren’t too far out as I have already analysed the data set having deleted all BQL points. Any other ideas very gratefully received J Many thanks Ann $PROBLEM Step1&2 PK 3comp LAG BLQ M3 $INPUT ID DOSE AMT RATE DUR TIME LNDV DV EVID ART FLG AGE WGT MDV $DATA step1&2PKBLQnoABSLNv2.csv IGNORE=# $SUBROUTINES ADVAN9 TOL=9 $MODEL COMP(CENTRAL, DEFOBS, DEFDOSE) ;1 COMP(PERIPH1) ;2 COMP(PERIPH2) ;3 $PK CL=THETA(1)*EXP(ETA(1)) Q2=THETA(2)*EXP(ETA(2)) Q3=THETA(3)*EXP(ETA(3)) V1=THETA(4)*EXP(ETA(4)) V2=THETA(5)*EXP(ETA(5)) V3=THETA(6)*EXP(ETA(6)) K10=CL/V1 K12=Q2/V1 K13=Q3/V1 K21=Q2/V2 K31=Q3/V3 S1=V1 IF (DUR.EQ.10) THEN ALAG1=THETA(7)*EXP(ETA(7)) ELSE ALAG1=THETA(8)*EXP(ETA(7)) ENDIF $DES DADT(1)=A(2)*K21 + A(3)*K31 - A(1)*(K10+K12+K13) DADT(2)=A(1)*K12 - A(2)*K21 DADT(3)=A(1)*K13 - A(3)*K31 ;DADT(1)=A(4)*KTR + A(2)*K21 + A(3)*K31 - A(1)*(K10+K12+K13) ;DADT(2)=A(1)*K12 - A(2)*K21 ;DADT(3)=A(1)*K13 - A(3)*K31 ;DADT(4)=-A(4)*KTR ;DADT(5)=A(4)*KTR - A(5)*KTR ;DADT(6)=A(5)*KTR - A(6)*KTR ;DADT(7)=A(6)*KTR - A(7)*KTR ;DADT(8)=A(7)*KTR - A(8)*KTR ;DADT(9)=A(8)*KTR - A(9)*KTR $ERROR (ONLY OBSERVATIONS) SIG1=THETA(9) ;LOQ = 0.4 ; nm/L ;IPRED = F LOQ = LOG(0.4) IPRED = LOG(F) DUM = (LOQ-IPRED)/(SIG1*IPRED) CUMD=PHI(DUM) IF(FLG.EQ.0)THEN ; FLG=0, MDV=0 non BQL values F_FLAG=0 ;Y = F*(1+SIG1*ERR(1)) Y=LOG(F) + SIG1*ERR(1) ENDIF IF(FLG.EQ.1)THEN ; FLG=1, MDV=0 BQL values F_FLAG=1 Y=CUMD ENDIF $THETA (0, 696) ;CL $THETA (0, 513) ;Q2 $THETA (0, 260) ;Q3 $THETA (0, 5600) ;V1 $THETA (0, 20500) ;V2 $THETA (0, 38000) ;V3 $THETA (0.2167, 0.548,1) ;ALAG 10MIN $THETA (0.00833, 0.101, 1) ;ALAG 1MIN $THETA (0, 0.5) ;SIG1 $OMEGA (0.01) ; ETA CL $OMEGA (0.01) ; ETA Q2 $OMEGA (0 FIX) ; ETA Q3 $OMEGA (0.01) ; ETA V1 $OMEGA (0 FIX) ; ETA V2 $OMEGA (0 FIX) ; ETA V3 $OMEGA (0 FIX) ; ETA LAG SHARED $SIGMA (1 FIXED) $ESTIMATION METHOD=1 LAPLACIAN NUMERICAL SLOW PRINT=1 MAX=9999 NOABORT SIG=3 MSFO=msfo.outputfile $COVA $TABLE ID EVID AMT TIME IPRED NOPRINT FILE=AllRecords.txt $TABLE ID CL Q2 Q3 V1 V2 V3 ETA1 ETA2 ETA3 ETA4 ETA5 ETA6 ETA7 FIRSTONLY NOPRINT NOAPPEND FILE=FirstRecords.txt