Re: 202 Fortran Syntax of wings for NM7

From: Hong Li Date: December 13, 2011 technical Source: mail-archive.com
Dear Nick, Thanks so much for directing me to pay attention to the comments of $THETA block. The FORTRAN SYNTAX is caused by the way I apply comments to $THETA but I get the problem solved using the other way. The original $THETA as below: $THETA (0.228 FIXED) ;POP_TLAG (0.01,0.927,10) ;POP_K12 (5,14,100) ;POP_Q (0,0.972,50) ;POP_K24 (0,0.14,50) ;POP_K40 (0,0.01,1) ;POP_K41 (3,30.3,200) ;POP_V2 (243 FIXED) ;POP_V3 (3,9.82,200) ;POP_V4 (0,0.0167,0.1) ;POP_FR (0,0.3) ;CNI (-0.6) ; ALB The new $THETA block is: $THETA (0.228 FIXED) ;POP_TLAG (0.01,0.927,10) ;POP_K12 (5,14,100) ;POP_Q (0,0.972,50) ;POP_K24 (0,0.14,50) ;POP_K40 (0,0.01,1) ;POP_K41 (3,30.3,200) ;POP_V2 (243 FIXED) ;POP_V3 (3,9.82,200) ;POP_V4 (0,0.0167,0.1) ;POP_FR (0,0.3) ;CNI (-0.6) ;POP_ALB The only thing I did is to change comment of THETA12 from ALB to POP_ALB. My understanding now is that WFN get confused the comment of THETA12 (ALB) with MU_1 (which is assigned to ALAG1) because both of them start with "A". Thanks again, -- Hong Li, Ph.D. Postdoctoral Associate Department of Pharmaceutical Science University at Buffalo, SUNY 363 Hochstetter Hall Buffalo, NY 14260 Tel#: (716)645-4827
Quoted reply history
On Mon, Dec 12, 2011 at 6:08 PM, Nick Holford <[email protected]> wrote: > Hong, > > The error message you show below may be caused by the way you apply > comments to the $THETA, $OMEGA and $SIGMA records. Unfortunately you do not > show exactly how you coded these records. WFN uses the comment field to try > to identify name for parameters in the abbreviated code. If you repeat a > comment with the same 'name' then WFN will get confused when translating to > standard NM-TRAN. > e.g. > $THETA 1 ; LOG OF CL > $THETA 2 ; LOG of V > will cause a problem because the name LOG will applied to THETA(1) and > THETA(2). > If the comment is changed to > $THETA 1 ; CL LOG > $THETA 2 ; V LOG > then there is no problem because the name is taken from the first word in > the comment. > > Please read http://wfn.sourceforge.net/wfncs.htm#control_streams > > > There is something else you should be aware of but I don't think it is the > cause of the error you show. WFN for NONMEM 7.2 tries to help users save > time by avoiding the recompilation of NONMEM for every new problem. By > default WFN starts NONMEM with the -prdefault option. This works for most > problems but if you exceed the standard limits for parameter numbers etc > then it will fail. > > The solution is simple. You can disable the use of -prdefault by typing: > > set args7= > > before you use nmgo. > > Args7 is an environment variable used by WFN to pass the extra arguments > which may be used by NONMEM. By default args7 is set to -prdefault. If you > set args7 to a null value as shown above then NONMEM will work in the usual > way and recompile NONMEM as required for your particular problem. This will > of course mean it will take longer to run. > > Nick > > > On 13/12/2011 8:37 a.m., Hong Li wrote: > > Dear All, > > I have exact same NONMEM code run in two command windows, NM7 and > wings for NM7. The NONMEM run is successful in the NM7 but cannot > start in wings for NM7. Below is the error message. > > AN ERROR WAS FOUND IN THE CONTROL STATEMENTS. > > AN ERROR WAS FOUND ON LINE 25 AT THE APPROXIMATE POSITION NOTED: > MU_1 =THETA(12) LOG(THETA(1)) > X > THE CHARACTERS IN ERROR ARE: LOG > 202 FORTRAN SYNTAX IS INCORRECT OR INAPPROPRIATE IN THIS CONTEXT. > Error in NM-TRAN_Execution with ...... > > > After several tests, I realized that it may be due to the setting of > wings for NM7, such as parameter size. > In my model, I have 12 THETAS, 10 ETAS and 3 SIGMA. If I delete > THETA(12) , everything is working. > We have NONMEM 7.1.0 and Wings for Nonmem version 703 installed > with their default setting. > > Can anyone help me to handle this problem? Is this due to the size of > parameter? How to increase the parameter size of wings for NM7. > Here is my NONMEM code: > > $PROB > $DATA > $INPUT > $SUBROUTINE ADVAN6 TOL=9 > > $MODEL NCOMP=5 > > COMP=(GI,DEFDOSE) ;COMPARTMENT 1 DEPOSIT IN GI TRACT > COMP=(CENTER) ;COMPARTMENT 2 FOR CENTER COMPARTMENT > COMP=(PERI) ;COMPARTMENT 3 FOR PERIPHERAL COMPARTMENT > COMP=(MET) ;COMPARTMENT 4 FOR METABOLITE CENTER COMPARTMENT > COMP=(FREE) ;COMPARTMENT 5 FOR FREE UNBOUND COMPARTMENT > > $PK > > IF (CNIT.EQ.1.OR.CNIT.EQ.3.OR.CNIT.EQ.-1) CSP=1 > IF (CNIT.EQ.2.OR.CNIT.EQ.4) CSP=0 > IF (ALB.NE.-1) NALB=ALB/3.4 > IF (ALB.EQ.-1) NALB=1 > > MU_1 = LOG(THETA(1)) > ALAG1 = EXP(MU_1+ETA(1)) > > MU_2 = LOG(THETA(2)) > K12 = EXP(MU_2+ETA(2)) > > MU_3 = LOG(THETA(3))+0.75*LOG(BW/70) > Q = EXP(MU_3+ETA(3)) > > MU_4 = LOG(THETA(4))-0.25*LOG(BW/70)+THETA(12)*LOG(NALB) > K24 = EXP(MU_4+ETA(4)) > > MU_5 = LOG(THETA(5))-0.25*LOG(BW/70) > K40 = EXP(MU_5+ETA(5)) > > MU_6 = LOG(THETA(6))+CSP*LOG(THETA(11)) > K41 = (EXP(MU_6+ETA(6))) > > MU_7 = LOG(THETA(7)) + LOG(BW/70) > V2 = EXP(MU_7+ETA(7)) > > MU_8 = LOG(THETA(8)) + LOG(BW/70) > V3 = EXP(MU_8+ETA(8)) > > MU_9 = LOG(THETA(9)) + LOG(BW/70) > V4 = EXP(MU_9+ETA(9)) > > MU_10 = LOG(THETA(10)) > FR = EXP(MU_10+ETA(10)) > > K23 = Q/V2 > K32 = Q/V3 > > S2 = V2 > S4 = V4 > S5 = V2 > > $DES > > DADT(1) = -K12*A(1)+K41*A(4) > > DADT(2) = K12*A(1)+K32*A(3)-(K23+K24)*A(2) > > DADT(3) = K23*A(2)-K32*A(3) > > DADT(4) = K24*A(2)-(K41+K40)*A(4) > > DADT(5) = FR*(K12*A(1)+K32*A(3)-(K23+K24)*A(2)) > > $ERROR (ONLY OBSERVATIONS) > > $EST METHOD=ITS NITER=50 PRINT=5 NSIG=3 SIGL=9 > $EST METHOD=IMP NITER=500 ISAMPLE=1000 PRINT=1 NOABORT CTYPE=3 > CITER=10 CALPHA=0.05 > > $THETA > $OMEGA > $SIGMA > > > > Thanks for your help, > > > -- > Nick Holford, Professor Clinical Pharmacology > Dept Pharmacology & Clinical Pharmacology, Bldg 505 Room 202D > University of Auckland,85 Park Rd,Private Bag 92019,Auckland,New Zealand > tel:+64(9)923-6730 fax:+64(9)373-7090 mobile:+64(21)46 23 53 > email: [email protected] > http://www.fmhs.auckland.ac.nz/sms/pharmacology/holford
Dec 12, 2011 Hong Li 202 Fortran Syntax of wings for NM7
Dec 13, 2011 Hong Li Re: 202 Fortran Syntax of wings for NM7
Dec 13, 2011 Nick Holford Re: 202 Fortran Syntax of wings for NM7