NONMEM VI 2.x Bug Alert #2 and NONMEM 7.1.0 Bug Alert #1 - Revised

From: Thomas Ludden Date: November 09, 2009 technical Source: mail-archive.com
Two bugs that affect NONMEM VI and NONMEM 7.1.0 have been discovered. Fixes and fixed routines are available for NONMEM VI 2.x as described below. After all code changes listed here and in NONMNEM VI 2.0 Bug Alert #1 (see ftp://nonmem.iconplc.com/Public/nonmem/NONMEM_VI_buglist/NONMEM_VI_2.1_B ug_List.txt for a cumulative list) are made, the nm\BLKDAT.for routine should be edited. The value of LEV in BLKDAT should be changed to 2.2. All routines in nm, pr and tr directories should be recompiled. Rerun the CDsetup6.bat or SETUP script from the installation directory using the same arguments used for the original installation with the exception of the last argument. This argument should be y to indicated the need to recompile. Fixed code for NONMEM 7.1.0 will be made available at a future time. The NONMEM Development Team _______________________________________________________________________ PREDPP There is a PREDPP bug in pr/PRED.for (NONMEM VI 2.x) and pr/PRED.f90 (NONMEM 7.1.0) that affects the behavior of the steady-state (SS) data item when: 1) SS has a value of 2 and 2) the record with SS=2 precedes all other records with a non-zero SS data item in an individual record or after a reset record, EVID=3 or 4. The bug causes the steady state dose to be applied twice. The fix for NONMEM VI 2.x requires two code changes: In pr/PRED locate IF (ISSNOW.NE.0) THEN ISSNOW=0 GO TO 2200 ENDIF Change the test from .NE. to .GT. Note that this change is different from the one described in the original bug alert. IF (ISSNOW.GT.0) THEN ISSNOW=0 GO TO 2200 ENDIF In pr/SSS locate IF (II.NE.JJ.AND.((ISSNOW.EQ.0.AND.EVTREC(N,JSS).EQ.2) x .OR.ISSNOW.EQ.2)) THEN Change ISSNOW.EQ.0 to ISSNOW.LE.0 IF (II.NE.JJ.AND.((ISSNOW.LE.0.AND.EVTREC(N,JSS).EQ.2) x .OR.ISSNOW.EQ.2)) THEN Fixed subroutines are available at ftp://nonmem.iconplc.com/Public/nonmem/NONMEM_VI_fixed_routines/ To access this folder point your browser to ftp://nonmem.iconplc.com/Public/nonmem/ and login. user: nonmemvi password: updates then open the folder named NONMEM_VI_fixed_routines. The fixed PRED.for and SSS.for routines are in the subfolder named PREDPP_4NOV2009 Workaround: 1) If SS=2 is the first record of the individual record, then a work around is to specify the AMT value on the affected record to be one-half the intended dose. Or, the $PK block could be modified instead. Suppose there is only one steady state dose record having SS=2, and the dose is for compartment 1. Add: $PK F1=1 IF (SS.EQ.2) F1=.5 2) If SS=2 is used in a subsequent record (with a change in TIME) and it is not preceded by a record with a non-zero value for SS then there is no workaround. This situation occurs when a transient dose precedes the steady state dose. Suggestion: The behavior of the steady-state data item, even in the absence of the bug, is relatively complex. A user planning to incorporate the SS data item into a data set should review Chapter V, Section F of NONMEM Users Guide VI, PREDPP, and Chapter 6, Section 8.2.3 of Guide V, Introductory Guide. __________________________________________________________________ NONMEM There is a bug in NONMEM VI 1.x & 2.x and NONMEM 7.1.0 that results in the spurious error message below, or a similar message, when certain band symmetric matrices are defined in $OMEGA. PROGRAM TERMINATED BY OBJ OMEGA ESTIMATED TO BE SINGULAR MESSAGE ISSUED FROM ESTIMATION STEP AT INITIAL OBJ. FUNCTION EVALUATION Fix for NONMEM VI 2.x requires changes to several subroutines. The fixed subroutines are available at ftp://nonmem.iconplc.com/Public/nonmem/NONMEM_VI_fixed_routines/ To access this folder point your browser to ftp://nonmem.iconplc.com/Public/nonmem/ and login. user: nonmemvi password: updates then open the folder named NONMEM_VI_fixed_routines. The fixed CN.for, CN1.for, CN2.for, RESCN.for, and RSCN.for routines are in the subfolder named NONMEM_14OCT2009. Workaround: None is available.