This note is addressed to all nonmem users using a VAX/VMS system
(our version is 5.5-2).
The problem we are facing is that when we run a simple 2
compartment model using advan5 the program ends even before the
iteration process is invoked (the VAX gives a divide by zero error
message in the DDDFRS routine line 23). Yet the same code and data
set run successfully on a SUN system. If any users have some
suggestions as to what we can try we would be most appreciative.
(Interestingly a one compartment model runs without any problem)
Another(?) ADVAN5 Problem
5 messages
5 people
Latest: Apr 01, 1994
In any event, sorry, there are no 'settings' that will help ADVAN5.
I presume that you all include the NOABORT option on the $ESTIMATION
record so that NONMEM can back away from the "bad" thetas and try values
closer to the last good set of thetas.
Gary originally said:
The problem we are facing is that when we run a simple 2
compartment model using advan5 the program ends even before the
iteration process is invoked (the VAX gives a divide by zero error
message in the DDDFRS routine line 23).
David, are you trying Gary's problem on your Vax? If so, the fact that
no divide by zero occured points to some problem with the installation
on Gary's Vax. I suggest that PREDPP be read in from the original
installation tape, and that Gary verify that the source code for
ADVAN5, REXPON, and RXSUBS is exactly as read. Recompile them too.
Another possibility is that Gary uses a different (later?) version of
FORTRAN than David, or that he uses different compiler options. Gary
might try compiling without optimization, for example.
VAX/VMS is not IEEE-based, that is, the precision of calculations is less than
on other systems. Probably Sun is IEEE-based (as is IBM, for example).
I try to circumvent these kind of errors by trying different sets of initial
estimates for the thetas. After a while iterations start, and one can try to
guess a certain direction.
(I work with the same version of VMS).
I hope this is of some help.
I was able to modify an example I had to run under ADVAN5 on the VAX [6610
VMS 5.5] as a fitting exercise without any errors. However I did stop it
short (by reducing the MAXEVALS, it was taking too long). I then developed
a simple fitting problem with one subject and it ran fine with ADVAN5 and
ADVAN4, except for the S MATRIX ALGORITHMICALLY SINGULAR (with both ADVANs)
which I guess is due to the small number of data points. These were very
simple examples but they seem to work. I would have compiled the program
with the FORTRAN default settings. I'd be happy to try a bigger problem - I
hadn't used these ADVANs before so may have made an error somewhere.
.....
I followed the installation guide for installing with the listed
adjustments. In the code attached, when I made a modification, I used a lower
case c to comment out the original code.
Double precision code was installed.
Install steps executed:
2.1.1 - file name change to redirect output
2.1.3 - changed to VAX values indicated on page 17
2.4a - NONMEM project team change - DATA SMALLS from 10e-40 to 10e-38
2.5 - change OPEN statements to open FSTREAM as old when running NONMEM from
NMTRAN procedure
2.7 - increase number of observations per subject from 50 to 500
Compiled code with command:
FORTRAN/LIST/NOOP/NOF77 NONMEM
This should provide a start.