Changelog
Introduction to NONMEM 7.6.0
Version-by-version summary of new features, improvements, and bug fixes from NONMEM 7.1.2 through NONMEM 7.6.0, compiled by Robert J. Bauer. The sections below are ordered from the most recent release back to the general introduction to NONMEM 7.
v7.6.0
When using
ADVAN5,ADVAN7, orADVAN8, a memory access violation occurs during the$TABLEstep. One of the local arrays was not given a large enough size. This error was present since NONMEM VI, and was recently revealed with NONMEM 7.5.1’s more efficient sizing of model size (PC). This has been corrected in NONMEM 7.6.0.When using file passing interface (FPI) parallelization (
transfer_type=0), and importance sampling estimation is requested, withMATRIX=RorRSRis requested, a memory access violation occurs if$TABLEis requested after this. This has been corrected in NONMEM 7.6.0.The creation of
FDATA.csvcan cause a long period of data file loading and processing at the beginning of a run, if theFDATAfile is very large (such as >1 MB). The creation of this file can be prevented by adding the optionNOFDATACSVon the$DATArecord. See$DATA CREATES FILE FDATA.csv (NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).Avoid missing very short model events in ODE solver
ADVANs. See I.23 HMIN_, HINIT_, HMAX_: Avoiding missed short events in ADVAN9, ADVAN13, ADVAN14, and ADVAN15 (nm760).Reserved variables
SAEM_EXTRAandSAEM_EXTRA_REQUESTare available to collect samples of any defined parameters in anSAEManalysis. SeeSAEM_EXTRA_REQUEST and SAEM_EXTRA Reserved Variables (nm760)in I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.Etabar and Shrinkage information can be requested when
$EST MAXEVAL=0. SeeEVALSHRINK=0 (Default) (NM760)in I.32 General New Options for$ESTIMATIONRecord (NM73).The
$ETAS/$PHISrecord can read in etas and phis from a.iphfile. See I.67 $ETAS and $PHIS Record For Inputting Specific Eta or Phi values (NM73).When there are subjects in the data set containing no data records to be included in estimation (such as when all records of a subject have
MDV=1), the “total data points normally distributed”,N*log(2pi)constant, and the “total effective etas” reported in the report file may be inaccurately assessed in a parallelized problem. This error has been present since NONMEM 7.4. A work-around is to remove or comment out subjects in the data file not contributing data.A user-defined module called
WFIMSmay be added to modify the weighting to components of thelog(det(FIM))objective function for use in robust design. SeeModifying the Weighting of Components of LOG(DET(FIM)) for use in Robust Designin I.74 Clinical Trial Design Evaluation and Optimization (NM75).The objective function for optimal design and evaluation (
$DESIGN) may be re-scaled to a “per parameter” value. SeeOFVDIMSCALED=0 (default)in I.74 Clinical Trial Design Evaluation and Optimization (NM75).The inputted
OMEGASandSIGMASmay be scaled with a commonSCALEfactor. SeeSCALE option for $OMEGA and $SIGMA (NM760)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).The utility
c_addadds a comment column to data files. See I.99 c_add: Add Descriptor line and comment (C) first column to a data file (NM760).The
$THETAR, and$THETAIcommands produce an error when used with$COV SIRsampling system. This bug has been present since NONMEM 7.4. Also, memory access problems occur when the SIR step is parallelized by the default method by sets of iterations present since NONMEM 7.5. Set$COV ... RANMETHOD=Pto utilize the original parallelization scheme by sets of individuals. These issues have been corrected in NONMEM 7.6.0.When
ETAS(1:x)is requested in a$TABLErecord, andNOAPPENDis not specified as an option, incorrect table items will be outputted. This bug has been present since NONMEM 7.3. A work-around was to addNOAPPENDwhen usingETAS(). This has been corrected for NONMEM 7.6.0.When using a
$MODELbasedADVAN(5, 6-18) and the number of compartments is only 1, an access violation can occur. Use-prdefaultcommand line option or set$SIZES PC=3in the control stream file.Error messages from previous parallel runs may appear in a new run in NONMEM versions nm750 and nm751. To correct this from occurring, remove
WK_*files from previous runs in the run directory or its worker directories to avoid appearance of these messages. This is now corrected for future versions.If a compartment name is an integer (such as
$MODEL ... COMP(1,DEFOBS)rather than a symbolic name, a substitution error occurs. This is corrected in NONMEM 7.6.0.When more than one
OMEGA/SIGMAblock is defined for simulating inverse wishart distributed omegas, it incorrectly uses the values defined in the first block for simulating values in the next blocks. In addition, incorrect simulation occurs when there are intervening fixed initial omega values or theta values. This error was present since nm6.2.0. This is corrected for NONMEM 7.6.0.
v7.5.1
The following bug fixes and minor adjustments have been made in NONMEM 7.5.1:
For
$ABBR PROTECT, a base of 0 raised to a positive power can result inINFandNAN, rather than 0. A work-around is to conditionalize the evaluation:IF(BASE/=0.0) THEN POW=BASE**(EXP1) ELSE POW=0.0 ENDIFAlso,
PROTECTfunctions withinIFstatements are not properly parsed, such as:IF(A/B .NE.0.0) ...As a work-around, place parnetheses around the comparator:
IF( (A/B) .NE.0.0) ...These two items now work properly in nm751.
For problems using analytical 2nd derivatives (such as
$EST LAPLACE NOINTERACTIONwithoutNUMERICAL, or$SIM REQUESTSECOND), insufficient memory might be allocated in the PREDPP routine ofADVAN6,ADVAN8,ADVAN13, orADVAN14. A work-around is to use-prdefaultfor small problems, and a larger than required$SIZES PC=xxxfor larger problems. This bug has been in existence since NONMEM VI. NM751 now properly sizes these problems.A new command line option,
-do2test, tests if analytical 2nd derivative code is required forFSUBSconstruction. If required, NMTRAN will buildFSUBSwith analytical 2nd derivatives, otherwise it will buildFSUBSwithout it, equivalent to the user entering$ABBR DERIV2=NO. See I.10 Dynamic Memory Allocation (NM72).The manner in which default loss of degrees of freedom are handled for EM/BAYES has been modified for nm751 to be more consistent across estimation methods. Also, FOCE/Laplace methods may now incorporate loss of degrees of freedom adjustments as well. This has very little impact on problems with more than 10 subjects. See I.47 Degrees of Freedom when Assessing OMEGAs.
An alternative evaluation of the objective function is provided for
$LEVELproblems as an option (LEVOBJTYPE) in nm751. Also, whileSLOWis still the default setting for$LEVEL FOCEproblems, you may now also selectNOSLOWorFASTfor faster calculation. SeeLEVOBJTYPE=(0 default) (NM75)in I.60 Adding Nested Random Levels Above Subject ID (NM75) for information and caveats.The use of prior information in optimal design evaluation and estimation is now better integrated in nm751. Also, standard errors to THETAs that are parameters to the residual variance (such as power terms to the predicted function, or serial intra-subject correlation parameters) may now be estimated when
FIMDIAG=1. See I.74 Clinical Trial Design Evaluation and Optimization (NM75).An option (
INTERPTYPE) allows an additional interpolation and extrapolation algorithm for NPDE and NPD evaluation. See optionINTERPTYPE=0(default) (nm751), in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.For
ADVAN16/ADVAN17,RADAR5NMmay use LAPACK routines for some of its core matrix algebra calculations. See the comments onR5ALGswitch described in..\pr\RADAR5U.f90.Even if a theta is not strict-mapping-mu-referenced but is associated with 0 valued
OMEGA, nm751 will now have theFASTalgorithm take effect for FOCE. (formerly, if omega is 0 valued, Mu-referencing had to be strictly a mapping relation for the theta). See I.50 The FAST Option for use with FOCE/ITS and Differential Equation ($DES) Models (NM74).The DDE ODE’s
ADVAN16andADVAN18have now greater internal coding flexibility to be coded with$ABBR DES=FULLor$ABBR DES=COMPACT.New time delay algorithms and methods are presented in the following sections I.89 Modeling Discrete Delays on General Variables Using the ddexpand program (nm751); I.90 Solving Distributed Delayed Output Rate Problems Using Repetition Variables RPTO/RPTI (nmVI); I.91 Transit Compartments for Gamma distributed Time Delays Using the ddexpand program (nm751); I.92 Creating Transit Compartments for Time Delays of any distribution, Using the ddexpand program (nm751); I.93 Using Discrete Delay Solvers for Time Delays of any distribution, Using the ddexpand program (nm751) and Built-IN DDEFUNCG Routine.
When
$SIM TRUE=PRIORis implemented, random THETAs, OMEGAs, and SIGMAs are generated for eachSUBPROBLEM, andDVitems are generated using these, butPRED,RES, andWRESvalues are calculated based on the initial$THETAS,$OMEGAS,$SIGMAS. This has been corrected, so thatPRED,RES, andWRESare calculated using the randomly generated population parameters for that sub problem.When
ITYP>=1for$NWPRIis set, the population parameters are incorrectly generated. This has been fixed.Improvements to code have been made so that compiler errors from gfortran version 11 do not occur. This allows compilation of code into native M1 chip architecture for new Macintosh computers.
The lognormal pdf was not being calculated correctly. This has been corrected.
DOWHILEloops can now be nested, which is very useful for multiple independent variable integration, such as for distributed delay problems.
v7.5
The following new features have been added in NONMEM 7.5:
Simulated etas and SIGMAs may retain separate random number sources during simulation. This is useful if you generate data from two separate data file templates which differ only in the number of data points among subjects, but you have the same number of subjects, and you wish to retain the same etas between the two data sets generated across subproblems. See
Extensions to Simulation Error Forgiveness (NM75)in I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).Simulated eta samples may be rejected and call NONMEM to create a new sample with the
EXITstatement. You can filter simulated values to create “normal truncated” distributions, for example. Please seeExtensions to Simulation Error Forgiveness (NM75)in I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).A table,
root.vpt, is created, which incorporates variance-covariances associated with etas as well as those associated with THETAs (or OMEGAs and SIGMAs). To present the comparable total standard errors in a user defined table, setVARCALC=3. SeeRequesting Standard Errors to User-Defined and PREDPP Variables (NM74)in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.Variance-covariance matrix information can be imported from previous runs, and used to evaluate total standard errors of user defined items in tables, or to bring in variance-covariance matrices from alternative sources (
IMP,SAEM,BAYES,SIR), as priors forTNPRIproblems. See I.69 $RCOV and $RCOVI Record For Inputting Variance-Covariance information from another problem (NM75).Increased flexibility has been added to
$PRIOR TNPRIto allow additional sources to provide the prior information. See I.68 Improved Flexibility for using PRIOR information in TNPRI Problems (nm75).THETAs may be simulated as a t-distribution. See
Simulating THETAs with t-Distribution (NM75)in I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).The option
TBLNhas been added to$EST METHOD=CHAINand$CHAINrecords to allow selecting a table within a raw output file. See I.66.Additional records allow block specific setting of degrees of freedom information for LKJ decorrelation priors. Also, user-defined probability densities to the diagonal standard deviations to these blocks may be defined. See
TPU=0(default,NM75),$OLKJDF (0 default, NM75)and subsequent items in I.42 No U-Turn Sampling (NUTS) Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method (NM74).A series of probability densities, their probability distributions, and random number generator routines are now available. See I.34 Probability Density Functions (NM742).
Delay Differential Equation solvers (
ADVAN16,ADVAN18) are now available (ADVAN17if there are also equilibrium compartments) is now available. For use of this ODE solver, please seeUsing the Delay differential equation Solvers with the doexpand program for Discrete Delay Problems (nm75)in I.87 ddexpand Utility Program for Modeling Discrete Time Delays by method of Steps (NM74).The
IDFORMAToption in the$TABLErecord allows a specialized format forID(such as integer format) that is different from the other items in the table. SeeIDFORMAT= I (NM75)in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.THETAs may be symbolically named at the
$THETArecord, in conjunction with the initial values specified. SeeSymbolic Label Substitutions at $THETA, $OMEGA, and $SIGMA records (NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).For MCMC Bayesian analysis the
.phitable now contains the average ofphi()values collected throughout the stationary distribution (positive iterations) phase, with variances. In addition, variances for phis/etc of levels above subject level (when using$LEVEL) are also now available. Seeroot.phi and root.phm (NM72)in I.65 $EST: Additional Output Files Produced. In addition, shrinkage information is now available for MCMC Bayesian estimations.Prepare a Single Burn-In for Multiple Stationary Chains. Because the burn-in of NUTS is computationally expensive, you can use the MSF file to perform a one-time burn-in in one control stream file, and then have subsequent control stream files use the burn-in information (including the mass density information) and evaluate their stationary phases in parallel (at different starting seeds). See
Prepare a Single Burn-In for Multiple Stationary Chainsin I.42 No U-Turn Sampling (NUTS) Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method (NM74).Optimal Design is now available. Please see I.74 Clinical Trial Design Evaluation and Optimization (NM75).
New options to replicate subjects in a data file are available, to facilitate simulations, avoiding the need to create replicate subjects data outside of NONMEM. See
$DATA REPL (NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).Techniques to incorporate partial differential equations (PDE) into ODE problems are now available, using the
doexpandutility. SeeThe DOPDE Method of Modeling PDE'sin I.86 doexpand Utility Program for Expanding Repetitive Code (NM74).A new way of modeling steady state dosing is available. See I.26 An Empirical Method of Achieving Steady State (NM75).
A discussion on handling over-shoot when trying to capture extrema values within an ODE integration interval is available in I.22 ITASK_, STOP_TIME: Avoiding overshoot in ADVAN9, ADVAN13, ADVAN14, and ADVAN15.
Individual parameter samples during BAYES analysis are stored in the
.iphtable when$EST ...BAYES_PHI_STORE=1. Seeroot.iph (NM75)in I.65 $EST: Additional Output Files Produced.Collect samples of individual BAYES parameters, while keeping the population parameters fixed. See
BIONLY=0 (default) (NM75)in I.41 Full Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method.New format specifiers (
FORMAT=q,c,QCSV, andCSV) offer compressed (no spaces) comma delimited file outputs. SeeFORMAT=s1PE11.4 (default)in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format;FORMAT=s1PE12.5 (default)(NM75)in I.58 $COV: Additional Options and Behavior; andDELIM=s or FORMAT=t or FORMAT=,in I.64 $EST: Format of Raw Output File.You may increase the number of significant digits displayed for population parameter results in the NONMEM report file. See
$FORMAT FMTN=3 (default) (NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).A non-negative least squares algorithm is available for determining the support point probabilities in a non-parametric analysis. See
NPESTIM=0 (default, NM75)in I.35 Some Improvements in Nonparametric Methods (NM73).Compartment names defined in
$MODELmay be used as symbols in the control stream code. SeeSymbolic Label Substitutions of Model Compartments (NM73,NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).Additional options for SIR covariance of estimates sampling have been added to improve stability in sampling. See items
SIRMINWT=0.001, SIRMAXWT=1000.0 (default) (NM75);SIR_CAPCORR=1.0 (default) (NM75);SIRSAMPLE=0 (default) (NM74)as list of values;Using $RCOV with SIR sampling (NM75)to input starting covariance of estimates from external sources, in I.58 $COV: Additional Options and Behavior.When randomly selecting subjects using
$SIML BOOTSTRAP, you may choose to analyze those subjects not selected. SeeBOOTDATA=0 (Default) (NM75)in I.32 General New Options for $ESTIMATION Record (NM73).Some improvements in assessing nested random effects above subject level. See I.60 Adding Nested Random Levels Above Subject ID (NM75).
Extensions to
$DATA IGNOREexclusion of data records. SeePRED_IGNORE_DATA Feature (NM75)in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
v7.4
The FAST option has been added to FOCE/ITS analysis, which can increase the speed of these analyses by up to 3-4 fold during the estimation of differential equation models, as well as the $COV step. The FAST method takes advantage of mapping analytical eta derivatives via MU referencing to evaluate theta analytical derivatives, increasing the speed and accuracy of derivatives required for FOCE assessment. See I.50 The FAST Option for use with FOCE/ITS and Differential Equation ($DES) Models (NM74).
An automated protection against floating point exceptions is now available. By setting $ABBR PROTECT, your code will be transposed to protect against floating point exceptions. See I.73 Stable Routines for Estimation Methods and Automated Protection Against Floating Point Exceptions (nm74).
The evaluation of weighted residuals to be outputted in tables can now be parallelized. To turn off parallelization:
`$TABLE` ... PARAFILE=OFFSee I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
The evaluation of final empirical Bayes estimates of etas (EBE’s) after the estimation step (when FNLETA=1) can now be parallelized. To turn off parallelization during the FNLETA step,
`$EST` ... FPARAFILE=OFFKeep in mind that the PARAFILE option of $EST pertains to parallelization of the estimation step itself. See I.32 General New Options for $ESTIMATION Record (NM73).
The Simulation step can now be parallelized. By default, parallelization is not turned on, because simulation is very rapid anyway, and often does not need to be accelerated. To turn on parallelization during simulation
`$SIML` ... PARAFILE=ONor at the command line with the -simparon option:
nmfe74 ... -simparon
And remember to permit constant seed patterns regardless of whether you choose parallelization or not with
`$SIML` ... PARAFILE=ON RANMETHOD=PSee I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74). When modeling with super-ID nested ETA levels ($LEVEL record is present), parallelization will not occur, since these etas are shared across individuals, and there is no guarantee that all subjects sharing the same etas will be simulated by the same process.
The nonparametric analysis can now be parallelized. To turn off parallelization during the nonparametric step,
`$NONP` ... PARAFILE=OFFNegative times are now allowed in the data set. NM-TRAN has always allowed negative clock times when day-time translation is performed, and converted them to non-negative relative times for PREDPP. Now, any data set may contain negative values of time, and PREDPP will not consider this to be an error.
Specific table records may be excluded from being printed. A data item or defined variable may be identified on a $TABLE record as an EXCLUDE_BY variable, which if not 0, will exclude the record. For example:
$PK
...
EXCL=0
IF(ID.GE.45.AND.ID.LE.53) EXCL=1
...
$TABLE ID TIME DV IPRED CL V1 Q V2 ETAS(1:LAST) EXCLUDE_BY EXCL NOAPPEND FILE=exctable.par NOPRINTThe table exctable.par will not list records from subjects 45 to 53. If more than one exclusion variable is listed, then if any of these have a non-zero value, the record will be excluded.
Furthermore, LASTONLY and FIRSTLASTONLY have been added as options to $TABLE, to request LAST record, or first and last records, of individual. Also, reserved variables may be accessed to determine whether the present record is first observation, last observation, first dose record, last dose record, etc. for refined decisions in modeling or table record outputting.
ONEHEADERALL or ONEHEADERPERFILE option may be used to have header information be written only at the beginning of the file, and never again.
See I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
Standard errors of user-defined and PREDPP variables list in $TABLE records can be outputted. See I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
Line -1000000007 in the .ext file has been added, indicating termination status information. The first code is the termination status, and the subsequent codes are text message code numbers. See I.65 $EST: Additional Output Files Produced under root.xml (NM72) for interpretation of termination status and text message codes.
Line -1000000008 in the .ext file has been added, partial derivative of the likelihood with respect to the estimated parameters. Please see I.63 Format of NONMEM Report File.
Replacement code can map several variable names at once:
`$ABBR` REPLACE `THETA`(CL,V1,Q,V2)=`THETA`(1 TO 4)In addition, these symbolic labels may be used in $TABLE references, and will appear in the NONMEM report file. Symbolic label substitutions will not be made in the additional output files (*.ext, .phi, etc), to maintain their third party software readability.
See I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75) under $ABBR REPLACE feature for abbreviated code (NM73-NM75).
Read in MSF files from previous versions. Choices are:
$MSFI myfile.msf VERSION=7.3.0
$`MSFI` myfile.msf VERSION=7.2.0
$MSFI myfile.msf VERSION=7.1.2
$`MSFI` myfile.msf VERSION=7.1.0
$MSFI myfile.msf VERSION=6.2
$`MSFI` myfile.msf VERSION=6.1This allows you to use MSF files generated by an earlier version. See I.31 Additional Control for $MSFI record (NM73).
More information in the xml file of file options. These are packaged in elements problem_options, sim_info, and estimation_options. See ..\util\output.xsd for the schema.
$SIM REWIND feature allows original data set to be used for all sub-problems. By default, if any data item is changed by a sub-problem, those data items remain changed for the start of the next sub-problem. If you want that each sub-problem start with using the values from the original data set, use the REWIND feature of $SIM. So, any changes to the data set made during simulation (when ICALL=4) of a sub-problem are used for that sub-problem only, and are not preserved for the next sub-problem. Keep in mind that any transgeneration you may have performed on the data set when using an $INFN when ICALL=1 will be considered original data set. For example:
`$INFN`
IF (`ICALL`==1) THEN
DOWHILE(DATA)
..modifying statements here
ENDDO
ENDIFSee REWIND (NM74) in I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).
$SIM NOSUPRESET feature allows the simulation seeds not to be reset with each iteration of a super-problem. By default, (SUPRESET), with subsequent iterations of a super-problem, the simulation seed is reset back to that listed in the $SIM record of the control stream file. It may be desirable that each iteration serves as a new random instance, so use NOSUPRESET. See NOSUPRESET (NM74) in I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).
A new kernel (mode) has been added to the Bayesian sampling of individual parameters, that reduces the correlation between Metropolis-Hastings generated samples at the individual parameter level, for BAYES and SAEM methods. See ISAMPLE_M1B, ISAMPLE_M1B=2 (NM74) in I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.
A Hamiltonian/No U-Turn Sampling algorithm has been implemented for BAYES analysis. This algorithm increases the efficiency of Markov-Chain Monte Carlo Bayesian sampling among population and individual parameters, by reducing the statistical correlation between samples. See I.42 No U-Turn Sampling (NUTS) Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method (NM74).
More flexible referencing of etas using the $TABLE ETAS() option. A list of etas may be referenced, or a TO/BY pattern may be given. See Requesting a Range of Etas to be Outputted: Etas(x:y) (NM73) in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
More flexible referencing of $LEVEL information. Eta nestings may be given using TO/BY patterns. See I.60 Adding Nested Random Levels Above Subject ID (NM75).
Tools to expand code and data for problems with repetitive equations. A doexpand utility program (see I.86 doexpand Utility Program for Expanding Repetitive Code (NM74)) is available that allows repetitive code in control stream files to be expanded. Furthermore a EXTRADOSE feature has been added to the finedata utility program (see I.85 finedata Utility Program (NM73)) that replicates dose records.
NM-TRAN gives a new data warning. This warning appears for steady state dose records with AMT=RATE=II=0 when an analytic ADVAN routine is used. Such doses should only be present if there is an endogenous drug production term in the differential equations. With analytic ADVAN, this is not possible, hence the warning.
Additional EONLY option values are available to provide improved ways for evaluating stable objective function values after an SAEM analysis. See EONLY=1 in I.38 Monte Carlo Importance Sampling EM and I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.
New algorithms for creating multivariate samples for importance sampling are offered. See Note on the t-Distribution Sampling Density (DF>0), and its Use With Sobol Method (RANMETHOD=S) in I.38 Monte Carlo Importance Sampling EM, and IACCEPTL=0 (default) (NM74) in I.38 Monte Carlo Importance Sampling EM.
The GRDQ option to provide a faster Importance sampling analysis when several THETAs not mu-referenced need to be gradient assessed. See GRDQ=0 (default) (NM74) in I.38 Monte Carlo Importance Sampling EM.
Degrees of freedom assignments for Omega priors and Sigma priors may be real numbers, not just integer. A gamma density that accepts non-integer arguments will create random samples for constructing inverse-Wishart distributed random Omega and Sigma matrices.
A new command line option, -nobuild, prevents a new nonmem executable from being built, particularly useful for a series of nonmem runs during bootstrap procedures. See I.10 Dynamic Memory Allocation (NM72).
A Monte Carlo based assessment of the variance-covariance after FO/FOCE/Laplace estimation can be obtained. See Importance Sampling of the Variance-Covariance of the Parameter Estimates (NM74) in I.58 $COV: Additional Options and Behavior.
The EM algorithms will now report if a gradient to one of the THETAs is zero, indicating improper model development.
A new output file, root.clt, is now constructed, that is the lower-triangular portion of the variance-covariance of the parameter estimates reported in root.cov. This is provided for easier pasting of the information as theta priors for a subsequent analysis. See I.65 $EST: Additional Output Files Produced.
The print iteration intervals to the parallelization log files can be controlled. The -parafprint option may be given at the command line, or parafprint option values may be given at specific $EST and $COV records. See I.75 Parallel Computing (NM72). Also see I.15 Interactive Control of a NONMEM batch Program, regarding the ctrl-F switch and sig paraf commands to interactively turn on and off parallelization log file printing.
The R Matrix of the variance-covariance of estimates for classical NONMEM methods may be preconditioned to improve precision and success rate of $COV step. See Preconditioning the R Matrix to Improve Precision and Success Rate of $COV Step (NM74) in I.58 $COV: Additional Options and Behavior.
A Saddle Point Reset may be conducted for FO/FOCE/Laplace to Improve Search for a Global Minimum. See Resetting the Search to Circumnavigate Saddle Points and Detect Inestimable Parameters (NM74) in I.27 $EST: Improvement in Estimation of Classical NONMEM Methods.
Priors to OMEGAS and SIGMAS may be specified as multi-variate Inverse Gamma densities, and priors to THETAS may be specified as multi-variate t-distributions. See TTDF=0 (default) in I.42 No U-Turn Sampling (NUTS) Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method (NM74) and I.43 A Note on Setting up Prior Information.
The implementation of user-defined functions has been greatly expanded. See I.78 Expanded Syntax and Capacity for User-Defined Functions (FUNCA) (NM74).
The objective function now may include the constant term N*LOG(2pi). Specify LNTWOPI on the $EST record: See I.51 Options to Include Various Constants to the Objective Function (NM74).
The prior contribution has been added to the S matrix for classical methods of covariance assessment. Prior to nm74, it was recommended that MATRIX=R be used for classical NONMEM methods (FO/FOCE/Laplace) when there are priors. As of nm74, the S matrix has a proper contribution component from the prior for the classical methods, as has been true for EM algorithms (ITS/MAP/SAEM) in earlier versions.
The CVODE solver system has been added as ADVAN14. Please see I.20 $SUBROUTINES: Yet Another New Differential Equation Solving Method: CVODES (ADVAN14) (NM74).
The IDA solver system has been added as ADVAN15. Please see I.21 $SUBROUTINES: Yet Another New Differential Equation Solving Method: IDAS (ADVAN15) (NM74).
Eta first derivative code creation can be turned off if not needed, and if the problem is very large. Please see I.79 First Derivative Assessments (NM72, NM74).
Advanced Relative Tolerance, Absolute Tolerance, and Steady State tolerences can be set in $SUBROUTINES. Please see I.19 $SUBROUTINES TOL, ATOL, SSTOL, and SSATOL: Additional control of relative and absolute tolerance (NM74).
When initial THETAs are to be estimated, evaluations can now be done for FOCE and Laplace, not just for FO.
When all individual objective function values are zero for an EM/Bayes analysis, problem terminates with error rather than continuing.
Shrinkage information is presented in standard deviation and variance version. Please see I.63 Format of NONMEM Report File, Shrinkage and ETASTYPE (NM74).
Obtain random samples of individual etas, and use these for covariate and model diagnostics in accordance with Lavielle and Ribba (Pharmaceutical Research, 2016). See ETASAMPLES=0 (default) (nm74) in I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.
Conditional mean etas may be printed to the .phi and .phm table even for EM and BAYES methods. See root.phi in I.65 $EST: Additional Output Files Produced for details.
Specified etas may be treated as if they are fixed effects when evaluating population diagnostics during the $TABLE step, particularly suitable for super-ID level etas. Please see FIXEDETAS=(number-list) (NM74) in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
The $DATA record accepts a MISDAT value to allow NONMEM to report values with the missing data indicator. See $DATA MISDAT (NM74) in I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
NPD May be evaluated for non-normal likelihood modeled data, if the user supplies the cumulative distribution function. See I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
The maximum number of characters for defining a compartment label in $MODEL has been expanded to SD=30 (defined in SIZES.f90). For example:
`$MODEL` NCOMPARTMENTS=3
COMP(VERY_LONG_NAME_HERE)
COMP(VERY_LONG_NAME_HERE2)
COMP(VERY_LONG_NAME_HERE3)Bugs found in version NONMEM 7.3.0, fixed in NONMEM 7.4.0
In addition, the following bugs discovered in NONMEM 7.3.0 have been fixed in NONMEM 7.4.0:
Two variables with names longer than six characters, and identical in the first six characters, defined in
$PK, and used in$DES, will be seen as the same variable. Use variable names that differ in the first six characters. This occurs in NONMEM 7.1.0, 7.1.2, 7.2.0, and 7.3.0. A workaround is to move all assignment statements for variables whose first 6 characters match to$DES.If more than one power operator is used within an
IF/THENblock that defines random variables, this may cause 0 gradients to be produced for some Omega parameters, and no change in their values from the initial estimates for classical NONMEM methods (FO/FOCE/Laplace). For example:IF(AGE>50) THEN TVCL=THETA(1)*(AGE/50)**THETA(3) CL=TVCL*EXP(ETA(1)) TVV=THETA(2)*(AGE/50)**THETA(4) V=TVV*EXP(ETA(2)) ENDIFOMEGA(1)will have a 0 gradient. Modifying the code so that random variables are not defined inIF/THENblocks containing power operators will resolve this, for example:IF(AGE.GT.50) THEN TVCL=THETA(1)*(AGE/50)**THETA(3) TVV=THETA(2)*(AGE/50)**THETA(4) ENDIF CL=TVCL*EXP(ETA(1)) V=TVV*EXP(ETA(2))This bug occurs in NONMEM 7.2.0 and NONMEM 7.3.0. In NONMEM VI, NONMEM 7.1 and NONMEM 7.1.2, the bug reveals itself only with LAPLACE no-interaction problems, and the result is typically a less accurate objective function value by 1 or 2 units.
When using
$LEVEL, if Simulation is performed, followed by Estimation, an allocation error occurs. One work-around is to perform the Simulation (usingONLYSIMULATIONoption) with one control stream file, followed by Estimation in a subsequent control stream file. Another workaround is to have a non-useful$PROBwith an$ESTrecord, and no$SIMrecord, followed by a second$PROBperforming the Simulation and Estimation problem you actually want to run, for example:$PROB ... $LEVEL SID=(3[1],4[2]) CID=(5[3],6[4]) ... $EST METHOD=1 INTERACTION PRINT=1 NSIG=2 FNLETA=0 NOABORT MAXEVAL=0 ... $PROB ... $LEVEL SID=(3[1],4[2]) CID=(5[3],6[4]) ... $SIMULATION (567811 NORMAL) (2933012 UNIFORM) SUBPROBLEMS=1 $EST METHOD=1 INTERACTION PRINT=1 NSIG=3 NOABORT MAXEVAL=9999 ...When
NSUBS > 9999in$SIMULATION, the subproblem number is output as****in the NONMEM report file. This affects only NONMEM 7.3.0, which allowsNSUBSto be greater than 9999.The
$ETAS/PHISstatement does not always find the desired record in the.phifile for some compiler versions of gfortran. The bug is due to using an incorrect type variable in the NONMEM code, causing an internal clobber on another variable. Gfortran 4.4.0 is susceptible to this bug. Versions of gfortran that are not susceptible to this bug are gfortran 4.6.0 and 4.6.3, and it is recommended that one uses these compiler versions.After using
$SIM BOOTSTRAP, if a new data file is to be used in a subsequent problem using$DATA, this file will be read into NONMEM incorrectly. To prevent this from happening, insert a dummy$PROBthat runs a non-useful estimation record, then execute the problem that is using another data file. For example:$PROB $INPUT ID AMT TIME DV WT EVID MDV $DATA NMDATA1.CSV ... $PK ... IF(NEWIND==0) NSUBJ=0 IF(NEWIND/=2) NSUBJ=NSUBJ+1 ... $SIML (11234) BOOTSTRAP=-1 $EST METHOD=1 INTERACTION NOHABORT MAXEVAL=99999 PRINT=5 MSFO=msf1 $TABLE NSUBJ ID AMT TIME DV WT EVID MDV NOAPPEND NOPRINT NOHEADER NOFORWARD FILE=bsdata.tab ;This dummy estimation step set internal variable BOOTSTRAP_ON to 0 $PROBLEM dummy problem to reset BOOTSRAP setting $INPUT ID AMT TIME DV WT EVID MDV $DATA NMDATA1.CSV REWIND $THETA (0,2.77) (0,0.0781) (0,0.0363) $OMEGA .03 .03 .03 $SIGMA .01 $EST METHOD=0 MAXEVAL=0 ; Now, new data set, bsdata.tab can be read in correctly $PROBLEM SIMULATION BASED ON PREVIOUS ESTIMATES $INPUT ID PREV AMT TIME DV WT EVID MDV NOAPPEND NOPRINT NOHEADER $DATA bsdata.tab (8E12.0) NOOPEN ;REWIND $MSFI msf1 $SIM(-1) ONLYSIM ; SUBPROBLEM=1 ; TRUE=FINAL $TABLE ID PREV AMT TIME DV WT EVID MDV FILE=what.tabWhen using the
$THETARrecord, if you have final etas estimated (defaultFNLETA=1), or weighted residual components requested (WRES,CWRES,NPDE, etc) in the$TABLErecord, the reported THETAs (THETAR) will be used for their calculation, incorrectly, instead of the native THETAs (THETA). This occurs when the last estimation step is an EM/Bayes estimation, but not when it is an FO/FOCE/Laplace estimation. To prevent this from occurring, perform the estimation and$TABLEsteps in separate problems. Note the use ofFNLETAsettings and MSF files for this purpose in the following example:$PROB Estimation and Variances of estimation $INPUT C SET ID JID TIME DV=CONC AMT=DOSE RATE EVID MDV CMT $DATA example1.csv IGNORE=C ... $EST METHOD=ITS INTERACTION NOABORT CTYPE=3 PRINT=5 NOPRIOR=1 FNLETA=0 MSFO=thetair4.msf $COV MATRIX=R PRINT=E UNCONDITIONAL $PROB Table outputs NOAPPEND $INPUT C SET ID JID TIME DV=CONC AMT=DOSE RATE EVID MDV CMT $DATA example1.csv IGNORE=C REWIND $MSFI thetair4.msf $EST METHOD=ITS INTERACTION NITER=0 FNLETA=2 $TABLE ID TIME DV IPRE TCLV ETACL CCL CL V1 Q V2 CWRES FILE=thetair4.tabThe NONMEM system and
nmfe73script for Linux and MACOSX do not work well from run directories with spaces in their names, and avoid using such names. However, should you wish to use NONMEM in this manner, the script may be easily modified. In thenmfe73script for Linux and MAXOSX, change line 275 fromcd $nmcdirto
cd "$nmcdir"Even with this change in the script, the xml output file is not properly constructed when executing NONMEM in run directories with a space in its name. The elements in the xml file will not be correctly tagged with
"nm:". This occurs in versions 7.2 as well as 7.3. Both of these problems are corrected in NONMEM 7.4.The
MCETAoption for FOCE/Laplace works best usingRANMETHOD=4Pwhen desiring consistent results between single and parallelized analysis. Not settingRANMETHODor settingRANMETHOD=Pcan cause inconsistent results for some problems.For gfortran 4.9 or higher, when running nonmem 7.3, IEEE floating point errors may be issued to the console or terminal window. These error messages may be ignored, as they do not impact analysis. To prevent these messages from being issued, you must re-install NONMEM using the compiler switch
-ffpe-summary=none.You can do this by adding the option to line 250 in
SETUP73.bat:if "%f%" == "gfortran" set op=-O3 -ffast-math -ffpe-summary=noneor line 368 and 376 in
SETUP73: line 368:if [[ $ftail == gfortran ]]; then op="-w -ffpe-summary=none"; filine 376:
if [[ $ftail == gfortran ]]; then op="-w -O3 -ffast-math -ffpe-summary=none "; fiIn NONMEM 7.2 and NONMEM 7.3, request to estimate initial THETAs using lower bound 0 information, such as:
$THETA (0,,4.0)results in an error message from NMTRAN. The work around is to provide lower bound that is slightly different from 0:
$THETA (0.0001,,4.0)When population mixture model is used along with two SIGMAs, a memory access violation can occur and the program will fail if IMP, SAEM, or BAYES is the first estimation. A work-around is to run an ITS estimation first (you can set
NITER=0):$EST METHOD=ITS NITER=0 $EST METHOD=IMP...Or one may define THETAS as residual error coefficients, fixing the SIGMAS to 1.0: For example, if you model
$ERROR IF(TYPE==1) then Y=Y+F*EPS(1) Else Y=Y+F*EPS(2) Endif ... $SIGMA 0.3 0.3You can instead replace the two SIGMAs with two THETAs:
$ERROR IF(TYPE==1) then Y=Y+THETA(21)*F*EPS(1) Else Y=Y+THETA(22)*F*EPS(2) Endif ... $SIGMA (1.0 FIXED) (1.0 FIXED) ... $THETA ... ... 0.54 0.54When a non-random variable is first defined and used within an
IF/THENblock as part of a random variable, such as in the following code, where constantNRis used first defined in theIF/THENblock, and is then used to define random variableXNR:B=1*EXP(ETA(1)) IF (1.EQ.1) THEN NR=1 XNR=NR*THETA(1)*B ENDIFThe derivatives may not be correctly constructed (for example, 0 valued gradients may appear), and can affect ITS/FO/FOCE/Laplace estimations. A work-around is to add
$ABBR NOFASTDERjust after$PROB. This bug can affect NONMEM 7.2 and NONMEM 7.3.
In addition, the following bug was fixed in version NONMEM 7.4.1 (the fix of bug 13 resulted in another bug):
When a non-random variable (one not associated with etas or epsilons) is introduced within an
IF/THENblock, and utilized in a nestedIF/THENblock or later used outside the block, the parsing of user code into intermediate variables by NMTRAN occurs incorrectly and can result in incorrect evaluations based on that non-random variable. For example, in the following code:... IF (AGE.GE.16) THEN SCRMM=SCR*10/MWTCR IF (SCRMM.GE.0.06) THEN CLCR=0.516*(112-AGE)/(112-40)*FSEX/SCRMM ELSE CLCR=0.516*(119-AGE)/(119-40)*FCPR/SCRMM ENDIF ENDIF ...The non-random variable
SCRMMis introduced in the aboveIF/THENblock, and then used in the subsequentIF/THENblock. The result is an incorrect assessment of 0 forSCRMM, and a value of Infinity forCLCR. A work-around for this is to initialize the non-random variable unconditionally outside of allIF/THENblocks:... SCRMM=0.0 IF (AGE.GE.16) THEN SCRMM=SCR*10/MWTCR IF (SCRMM.GE.0.06) THEN CLCR=0.516*(112-AGE)/(112-40)*FSEX/SCRMM ELSE CLCR=0.516*(119-AGE)/(119-40)*FCPR/SCRMM ENDIF ENDIF ...This bug has been fixed in NONMEM 7.4.1.
Bugs found in version NONMEM 7.4.1, fixed in NONMEM 7.4.2
When using the
FASToption, and any Mu referenced THETAs with OMEGA 0.0 FIXED are not at the end of the list of THETAs to be estimated, then those THETAs will not be moved during estimation.If no THETAs are to be estimated, and only OMEGAS and/or SIGMAS are to be estimated, then an error in the gradient setup occurs, and the estimation fails.
Because of inappropriate memory allocation, when applying the SIR algorithm, if the number of THETAS in the model is greater than the total number of parameters to be estimated (non-fixed THETAs, OMEGAs, and SIGMAs), an error can occur in assessing the variance from the SIR analysis.
ADVAN14andADVAN15can have memory allocation problems, or it may report that initial advance from t to tout is too small.An access violation sometimes occurs if the there are more than one SIGMA, and the first estimation method is IMP, SAEM, or BAYES. This bug has occurred since NONMEM 7.2.
For ITS, IMP, SAEM, BAYES, and NUTS problems, if a theta is MU modeled but fixed, ordinary differential equations (ODE) problems may run inefficiently because it evaluates an unneeded derivative for it. This is now corrected in NONMEM 7.4.2.
For ITS, MAP, SAEM, and BAYES, if the theta is MU modeled and estimated (not fixed), but has a 0 valued OMEGA associated with it, then the gradient is properly calculated. However in NONMEM 7.4.1, analytical first derivative assessment is turned on for all THETAs, which may become much less efficient than evaluating by finite difference for the few THETAs that are needed, as was done in earlier NONMEM versions. When there are only a few THETAs that have no OMEGAS or zero valued OMEGAS associated with them, finite difference derivative evaluation may be more efficient. Therefore, for NONMEM 7.4.2, the default action for MU referenced THETAs associated with 0 valued OMEGAs has been reverted back to be finite difference evaluation, as was done in versions NONMEM 7.3 and earlier. The user may still turn on analytical evaluation of derivatives for MU referenced THETAs with 0 valued OMEGAs by setting
MUM=M(x)for Theta x.The
NPDandNPDEdiagnostics do not perform properly on BQL data. This error has occurred since NONMEM 7.3.During jobs that are parallelized, the
CWRESandCWRESIvalues for some subjects may be those ofWRESandWRESI. This is due to some of the worker processes not having available the empirical Bayes estimates for some subjects, necessary for evaluatingCWRESandCWRESI.Data files with records longer than 1000 characters may prevent NMTRAN from completing the data input.
In defining the compartments in
$MODEL, if the first compartment is initially set to OFF, such as:$MODEL COMP=(One,INITIALOFF,NODOSE) COMP=(PKCENT)NONMEM may issue an error statement:
0DATA REC 1: COMPARTMENT ASSOCIATED WITH THE PREDICTION IS OFFThis error has been present since NONMEM 7.1.
Left-strings appearing in
$ABBR REPLACEmay not be replaced if there is a space preceding or trailing the left-string in the abbreviated code. For example:$ABBR REPLACE THINDEX=1 $ABBR REPLACE THBASE=0.0 ... $PK ... CL=THETA(THINDEX ) + THBASETHINDEXandTHBASEin the abbreviated code will not be replaced. However, when the space is removed:CL=THETA(THINDEX)+THBASETHINDEXwill be replaced with the right_string1, andTHBASEwill be replaced with the right string0.0.The leading space bug has been present since NONMEM 7.3, the trailing space bug has been present since NONMEM 7.4.0, and these have been fixed for NONMEM 7.4.2.
Bug found in version NONMEM 7.4.2, fixed in NONMEM 7.4.3
A new bug was inadvertently introduced in NONMEM 7.4.2, and corrected in NONMEM 7.4.3:
- If
MSFOoption is used with IMP, SAEM, ITS, or BAYES, the problem fails with an access violation at the$COVstep.
Bug found in version NONMEM 7.4.3, fixed in NONMEM 7.4.4
The following bugs found in version NONMEM 7.4.3 have been fixed in NONMEM 7.4.4:
The
$PRIOR TNPRImethod may not work correctly when there are fixed THETAs and the prior information is brought in from an MSF file by a$MSFIrecord. This bug has been present since NONMEM VI. A work-around is to convert fixed THETAs to fixed scalar parameters in the$PKrecord so they are not defined in the theta vector, in the control stream generating the MSF file, and in the control stream using it via the$PRIOR TNPRIrecord.The
CWRESandCPREDare incorrectly calculated asCIWRESandCIPREDwhenINTERACTIONis not specified in the$ESTrecord. This error has been present since NONMEM 7.4.0. As a work-around, always setINTERACTION(this is default for EM and Bayes methods) for the$ESTrecord. SettingINTERACTIONdoes not impact the analysis when the residual error is homoscedastic, andINTERACTIONshould always be used when residual error is heteroscedastic.When
$ABBR PROTECTis used andEXP(),PEXP()orX**Yexpressions are used, the protect routines may occasionally not accurately evaluate eta derivatives due to a low threshold (100.0) placed on the argument to avoid floating overflow upon exponentiation. If this occurs, you will likely see poor objective function values when implementing$ABBR PROTECT, orPEXP(), or observe 0 gradients. A modifiedprotect.f90file is available with a higher threshold (350.0), can be downloaded from https://nonmem.iconplc.com/nonmem743 and can be used as a plug-in with the control stream statement$ABBR SUBROUTINES ... other=protect.f90.In general, the
protect.f90file is available for the user to modify the behavior of protection functions and their derivatives, if necessary. See the section Stable Routines for Estimation Methods and Automated Protection Against Floating Point Exceptions inintro7.pdffor further information.Negative valued Lower bounds with an upper bound on THETAs can result in an NaN valued theta for EM algorithms. Work-around is to remove the upper or lower bound, or scale theta so bounds are in positive region. This bug has been present since version NONMEM 7.1.0.
When using
VARCALC=1in a$TABLErecord, if a label exceeds 5 characters, an internal Fortran write error will occur while writing variance labels in the.vpdtable. To prevent this from occurring, either enter aFORMATstatement in the$ESTrecord that will define at least S=2X+2 characters, where X=largest label length in the$TABLErecords and S is the character length thatFORMATis describing, or shorten the labels used in the$TABLErecord.For example, the largest label is 10 characters long. The format could be set to
$EST ... FORMAT=s1PE23.16This format defines a 24 character length, which is more than 2*10+2=22.
Or, shorten the labels in the
$TABLErecord to less than 6 characters:$TABLE ... SHORT=LONGNAME...During parallelization, the
THINsetting is not transferred to workers during$EST METHOD=BAYES THIN=...method, and theBAYES_EXTRAsetting is not transferred to workers during the$EST METHOD=NUTSmethod. When a user desires to control printing of additional individual parameters to a file using theBAYES_EXTRAswitch, such as is shown inexample8.ctl:IF(BAYES_EXTRA==1 .AND. ITER_REPORT>=0 .AND. TIME==0.0) THEN " WRITE(51,98) ITER_REPORT,ID,CL,V1,Q,V2 " 98 FORMAT(I12,1X,F14.0,4(1X,1PG12.5)) ENDIFThe
BAYES_EXTRAis never set to 1 for workers duringMETHOD=NUTS, so no records are placed in the file. WhenMETHOD=BAYES THIN=..., theBAYES_EXTRAis 1 for every iteration, instead of everyTHINiteration, so worker’s files contain too many records.As a work-around, incorporate the source code file
extrasend.f90(located in https://nonmem.iconplc.com/nonmem743) into your control stream as an OTHER routine:$SUBROUTINES ... other=extrasend.f90In
$PK, place the following line, after the lastMU_referencing declaration (or just before the firstIF(BAYES_EXTRA==1...statement):" CALL EXTRASEND()The
extrasend.f90will transfer the appropriateBAYES_EXTRAandTHINPRINToption values from manager to worker.For data sets with many items (columns), and when
=DROPrequests are made on several of these items, theFDATAfile may not be correctly constructed. As a work-around, add the optionWIDEto the$DATArecord.When using
ADVAN13orADVAN14with the-2LLoptions, such as:$EST METHOD=1 LAPLACE -2LLNMTRAN fails to create second derivatives in the
$ERRORsegment. The problem will fail immediately with an error message. As a work-around, add the optionNUMERICAL.In the Windows environment, when
-tprdefaultis used, and NMTRAN reports that certain predpp routines need to be recompiled so that some arrays are resized for the problem, thenmfe74.batscript should force a predpp recompile. However, this does not occur because of the ordering of certain lines innmfe74.bat. The problem is likely to fail with access violations or some other error. As a remedy, download the updatednmfe74.batlocated at https://nonmem.iconplc.com/nonmem743, and replace the values ofdir,f, andopdefined in the first several lines of the script with the appropriate values for your NONMEM installation.In Windows and linux, if
LVRis set to a value higher than 93 with$SIZESrecord, such as$SIZES LVR=95then diagnostic items such as
CPRED,CWRES, will be incorrectly selected from what the user requested, due to NMTRAN not inserting the correct table ID’s in theFCONfile for NONMEM to use. As a remedy, download the updatednmfe74.bat(windows) ornmfe74(Linux, MAC) file, located at https://nonmem.iconplc.com/nonmem743, and replace the values ofdir,f, andopdefined in the first several lines of the script with the appropriate values for your NONMEM installation. Furthermore, download also thetabindex_correct.*files, and place them in the..\utildirectory of your nonmem installation. Thetabindex_correctutility will be called by the updatednmfe74scripts and correct theFCONtable item ID’s. This bug does not occur in versions of NONMEM earlier than 7.4.0.A warning message was omitted. With FOCE/Laplace during the
$COVstep there is now a warning if the R matrix is forced to be positive definite.
A series of built-in probability densities have been introduced in NONMEM 7.4.2. Please see I.34 Probability Density Functions (NM742).
A new parallel file option, called PARSE_PRESERVE, to improve efficiency of load distribution. See The PARAFILE in I.75 Parallel Computing (NM72).
A new “Time after dose” (TAD) example has been added to on-line help and Guide VIII.
v7.3
The main new features of NONMEM 7.3 compared to NONMEM 7.2.0 are as follows:
Execution script (nmfe73) offers more control in discerning location of compiler and mpi system. This option can facilitate execution of NONMEM in which there can be potential conflict with other software that may use alternative compilers and mpi systems. See section I.9 Invoking NONMEM, and the -locfile option.
Increased number of mixed effects levels. Random effects across groups of individuals, such as clinical site, can be modeled in NONMEM. Sites themselves may be additionally grouped, such as by country, etc. See section I.60 Adding Nested Random Levels Above Subject ID (NM75).
Easy to code inter-occasion variability. ETA’s to be referenced by an index variable related to the inter-occasion data item. See section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
Symbolic labels to THETAs, etas, and epsilons. See section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
Priors for SIGMA matrix. A SIGMA prior matrix may be added (assumes inverse Wishart distributed) to provide prior information for SIGMAs. See section I.43 A Note on Setting up Prior Information.
Optimizing settings for some options in SAEM and Importance Sampling. User may request an optimal ISAMPLE setting be determined for each subject by NONMEM for SAEM and IMP, rather than relying on a pre-specified value. Similarly, user may request IACCEPT and DF settings be optimized for each subject by NONMEM when performing IMP. For BAYES and SAEM, user may request that most appropriate CINTERVAL be determined based on the degree of Markov chain correlation across iterations, rather than the user having to assess appropriate CINTERVAL by trial and error. See section I.38 Monte Carlo Importance Sampling EM and I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.
An AUTO option to allow NONMEM to determine the best options for Monte Carlo Expectation-Maximization (EM) and Bayesian Markov Chain Monte Carlo methods, instead of the user having to determine these settings for each problem. See section I.45 Some General Options and Notes Regarding EM and Monte Carlo Methods.
Perform a Monte Carlo search or select from a pre-existing list of initial THETAs, OMEGAs and SIGMAs that provide the lowest starting objective function for estimation. See I.66.
Perform a Monte Carlo search for initial best estimates of etas for each subject. Together with a Monte Carlo search of best initial THETAs, OMEGAs, and SIGMAs, this provides a global search technique for the traditional, deterministic estimation methods, with less reliance on starting position for incidence of success. See MCETA in section I.32 General New Options for $ESTIMATION Record (NM73).
FOCE/Laplace and ITS to be assessed using only numerical eta derivatives for search of best etas and/or eta Hessian matrix assessment. This feature relaxes the requirement that analytic derivatives be computed for FOCE and Laplace by either NMTRAN or the user, which makes it easier to write user-supplied subroutines. Particularly useful for general stochastic differential equation analysis. See OPTMAP and ETADER in section I.32 General New Options for $ESTIMATION Record (NM73).
Conditional Individual Weighted Residual (CIWRES) added to residual variance diagnostics. While CIWRES for uncorrelated data is readily evaluated as (DV-IPRED)/W, CIWRES provides a proper individual weighted residual for L2 correlated data as well, which requires more extensive linear algebraic calculation. Furthermore, individual predicted and individual residual values, what are typically designated as IPRED and IRES and has often been inserted by hand into the control stream by users, is now assessed by NONMEM (called CIPRED, and CIRES, respectively) and can be requested in the $TABLES record. See section I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
A range of Etas may be requested to be outputted. Instead of requesting for each eta to be outputted in a $TABLE record as ETA1, ETA2, ETA3, etc., a range of etas using the format of ETAS(x:y) may be requested. See I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
Boot-strap simulations to be performed in NONMEM. See section I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74).
Example control stream files demonstrating how to model population densities of individual parameters that are t-distributed. See section I.62 Model parameters as log t-Distributed in the Population (NM73).
Option to use Nelder-Mead optimization for obtaining best fit individual etas, particularly useful to improve robustness for importance sampling. See OPTMAP in section I.32 General New Options for $ESTIMATION Record (NM73).
Option to use either eigenvalue square root or Cholesky square root algorithms for assessing weighted residual diagnostics. See WRESCHOL in section I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
Option to have etabar and eta shrinkage information include only subjects which influence the etas. Furthermore, you may specify certain etas of particular subjects to be excluded, or specify certain etas of certain subjects to be included from the average eta shrinkage assessment by using a reserved variable (ETASXI) in the $PK or $PRED section. An alternative eta shrinkage evaluation using empirical Bayes variances (EBVs, or conditional mean variances) are now also reported. See information on shrinkage in section I.63 Format of NONMEM Report File, and information on the .shk and .shm files in I.65 $EST: Additional Output Files Produced.
Subscripted variables may be used in abbreviated code, with fewer restrictions on DOWHILE. See section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75) for an example on residual variance correlation, and see section I.60 Adding Nested Random Levels Above Subject ID (NM75) for another use.
Additional reserved variables may be declared in the control stream file not natively recognized by NMTRAN. Some useful but not often needed global variables may be accessed by listing them in an NMTRAN include file referenced in a control stream file, which can also be used in abbreviated code. See section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
Enhanced non-parametric analysis methods, such as extended grid of support points, use of an outsize inter-subject variance to obtain support points that fit outlier subjects better, and built-in bootstrap analysis methods for obtaining empirical confidence ranges to non-parametric probability variables. See I.35 Some Improvements in Nonparametric Methods (NM73).
The TRANSLATE option of the $DATA record has been expanded. Now any value may be given for dividing time and II values, and any precision may be requested. Examples are:
TIME/1.0000or
TIME/1/4for formatting times in FDATA with 4 digits to the right of the decimal. Or
II/0.01/6which divides II values by 0.01, and writes 6 digits to the right of the decimal for the II data item. See Help guide for more details.
Times may be optionally encoded as hh:mm:ss instead of just hh:mm. For example, 8:45:29 will be acceptable, and incorporates the seconds values.
The $ANNEAL record provides a means of SAEM simulated annealing to provide global search techniques for THETAs that do not have OMEGAs associated with them. See I.57 $ANNEAL to facilitate EM search methods (NM73) for this additional annealing technique.
Population weighted residual diagnostic values can be calculated for normally distributed data even though there are also non-normally distributed data values in the same subject. See the MDVRES option in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
When $TABLE values exceed 0.3E+39, a warning is issued, but the table is still produced.
A utility program to fill in extra records with small time increments, to provide smooth plots. This utility program can also fill in by various interpolation techniques missing covariate values for original records. Also, if an MDV is set to a value greater than or equal to 100, it is converted to that value minus 100 upon input, but will also not be used at all during estimation, only for table outputting. This option allows you to use a data file that was enhanced with extra records for both estimation as well as Table outputs, without significantly slowing down the estimation. See I.85 finedata Utility Program (NM73).
A utility program to fill in substitution variables in template control stream files. See I.101 nmtemplate Utility Program (NM73).
New command line options, -tprdefault, and -maxlim, are provided for more dynamic assessment of needed memory allocation. Furthermore, the dynamic memory allocation has been made even more efficient in assessing memory requirements. See I.10 Dynamic Memory Allocation (NM72) and I.11 Changing the Size of NONMEM Buffers.
The various random number generating techniques, including Sobol quasi-random sampling with scrambling have been expanded for use with SAEM, BAYES, simulations, and Monte Carlo assessed population diagnostics. See the descriptions on RANMETHOD in I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format, I.38 Monte Carlo Importance Sampling EM, and I.33 Bootstrap, Selecting a Random Method, and Other Options for Simulation (NM73, NM74). In addition, an option to have each subject retain their own random number sequence is available, so that near identical estimation results are obtained for Monte Carlo methods in single process or parallelized process problems. See the RANMETHOD item and the P descriptor in I.38 Monte Carlo Importance Sampling EM.
Initial etas may be introduced in the control stream file or from an external source. See I.67 $ETAS and $PHIS Record For Inputting Specific Eta or Phi values (NM73).
For the $DATA record, .EQN. may be used in the IGNORE/ACCEPT option to indicate a numerical comparison rather than a literal comparison as is done for .EQ. and .NE.. See Numerical Equality Comparison for IGNORE option in $DATA Record (NM73) in section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
Informative record names for prior information of THETAs/OMEGAs/SIGMAs provide easier entry of NWPRI prior information. See I.43 A Note on Setting up Prior Information.
Maximal number of numerical integration steps is now easy to modify for ADVAN9, ADVAN13, ADVAN14, ADVAN15, ADVAN16, ADVAN17, and ADVAN18. See discussion on MXSTEP in I.18 $SUBROUTINES: New Differential Equation Solving Method: LSODA (ADVAN13).
Mu model checking by NMTRAN can be turned off. If you wish to turn this off (checking mu statements can take a long time for very large control stream files), then include the NOCHECKMU option on the $ABBR record:
`$ABBR` NOCHECKMUNMTRAN will allow & as a continuation marker on abbreviated code lines. Furthermore, the total length of a control stream record, whether on a single line or continued on several lines using &, may be up to 67000 characters long. See Continuation indicator is allowed in abbreviated code (non-verbatim) lines (NM73) in section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
More user functions for use in abbreviated code may be defined, using FUNCA through FUNCI. See Guide VIII.
Additional functions MIN, MAX, MOD, and GAMLN may be used in abbreviated code. See MIN,MAX Functions (NM73), MOD Function (NM73), and GAMLN Function (NM73) in section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
ATOL now also acts on ADVAN9’s differential equation solver, where by default absolute significant digits accuracy (absolute tolerance) is 12.
Enhanced selection methods from CHAIN records for use in multiple sub-problems. For each sub-problem, population parameters may be randomly (with or without replacement) or sequentially selected from a chain file. See SELECT option in I.66.
Total CPU time is reported in the NONMEM report file (Tag #CPUT:) and in the root.cpu file. See #CPUT: (nm73) in section I.63 Format of NONMEM Report File and root.cpu (NM73) in section I.65 $EST: Additional Output Files Produced.
Analytical and numerical derivatives of predicted and residual variance values with respect to eta may be outputted. See NUMDER=0 (default) (NM73) in I.32 General New Options for $ESTIMATION Record (NM73).
The SUBP option in $SIML may be greater than 9999 (new limit is 231-1).
All EM/Bayes methods are now estimated with the INTERACTION option on by default, unless NOINTERACTION is specified.
When NOPRIOR=1 is set, the estimation will not use TNPRI prior information (TNPRI should only be used with FO/FOCE/Laplace estimations). In previous versions of NONMEM, NOPRIOR=1 did not act on TNPRI priors.
New elements are available in the NONMEM report xml file: termination_nfuncevals, termination_sigdigits, termination_txtmsgs which catalog termination text messages by number, which can be mapped to ..\source\txtmsgs.f90, etabarn, ebvshrink, np_objective_function, and total_cputime.
If inputted omega or sigma elements are not positive definite because of rounding errors, a value to the diagonal elements will be added to make it positive definite. A message in the NONMEM report file will indicate if this was done.
In root.ext, Iteration -100000006 indicates 1 if parameter was fixed in estimation, 0 otherwise. See I.64 $EST: Format of Raw Output File.
THETAs may be inputted and reported in their natural domain, even when linear MU referencing. See I.55 \(THETAI (\)THI) AND \(THETAR (\)THR) Records for Transforming Initial THETAs and Reporting THETAs (NM73).
Covariance assessment may be turned off for a particular estimation. See NOCOV=[0,1] (NM73) in section I.40 Stochastic Approximation Expectation Maximization (SAEM) Method.
If an interruption occurred during FOCEI/Laplace/FO during the $COV step, covariance analysis may be resumed where it left off. See RESUME (NM73) in section I.58 $COV: Additional Options and Behavior.
Bugs Fixed
The following bugs have been fixed that were in NONMEM 7.2.0:
Some operating systems do not like the word
nulfor a file name forFNULL. Work-around for earlier versions of NONMEM: changenultoJUNKin..\resource\nmdata.f90, rebuild NONMEM by runningSETUP72orSETUP72.batin the installed NONMEM directory. For example, for Windows gfortran, ifc:\nm72gis your installed NONMEM directory, then fromc:\nm72gexecute the following command in the command window:setup72 c:\nm72g c:\nm72g gfortran y ar same rec nIn parallelization, Windows 64, gfortran compiled, using population mixture model, a variable is not initialized and causes parallelization failure. Work-around for earlier versions of NONMEM is to add the gfortran compiler switch
-finit-integer=0. To do this, editsetup72.bat(line 247) orsetup72(362), adding-finit-integer=0just before-ffast-math(do not place it as the last optimizing option). Then, rebuild NONMEM.“BY USER INTERUPT” is misspelled.
SAEM terminates on some problems. Cause is access violation when
CONSTRAINis called. Work-around for earlier versions of NONMEM is to setCONSTRAIN=0. Or, setMAXOMEGusing$SIZESsuch that they are at least(NEPS+1)*NEPS/2.When defining compartments in
$MODEL, NMTRAN does not always terminate DATA CMOD code lines properly with respect to continuation markers, resulting in a failed compilation ofFSUBS. Work-around is to have more than an integer multiple of 6 compartments named (for example, if you have 24 compartments, define a 25th compartment).When
$CHAINrecord is used,ISAMPLEmay not be less than 1. Work-around for earlier versions of NONMEM is to change the index number (iteration number for a raw output file of a previous analysis) of the desired record in the file to a positive number.When a simulation is desired using the results of a previous estimation using
$MSFI, NONMEM sometimes prevents its use because of a flag indicating it was not properly estimated. Work-around for earlier versions of NONMEM: use the record$CHAIN FILE=file.ext ISAMPLE=xxxx, wherefile.extis the name of the raw output file of the previous analysis, andxxxxis the iteration number, typically the last iteration.During an estimation with FO or FOCE, and the last subject in the data set has non-influential etas (for example, with interoccasion variability, if the last subject had no data during the last inter-occasion, the eta for that last inter-occasion is non-influential), the estimation may become inefficient due to incorrect gradient assessments. This has been corrected for some types of problems, but this may still persist in other problems, which may be remedied with the
SLOWoption.When only THETAs are in a problem, and there are single-subject data, then standard errors are printed out, but covariance, inverse covariance, and correlation matrices are reported as 0. Work-around for earlier versions of NONMEM: If possible, pose the problem as multi-subject, insert one eta as
$OMEGA 0.0 FIXED.When using
DOWHILE(DATA)in abbreviated NMTRAN code, there should be no comment on that line, such asDOWHILE(DATA) ; start of dowhile.In abbreviated code, recursion code and
$INFN DOWHILE(DATA)cannot both be present in the same control stream. The error message isMUST BE "DO WHILE (CONDITION) ...ENDDO". Workarounds for earlier versions of NONMEM: (1) avoid unnecessary recursive variables by defining them asCOM(1),COM(2), etc.
- use
$MSFto put the$INFNblock in another problem.
With large numbers of THETAs and or OMEGAs, the xml file may incorrectly print out the various variance matrices of estimates (covariance, correlation, inverse covariance, etc.). This has been corrected.
When a series of
$TABLEstatements withoutFILE=specification is followed by$TABLEstatements withFILE=specification, not all tables print out, and an error is issued in the NONMEM report file:0ERROR IN WRITING FILE : TABLE FILE; USER FORMAT ERROR IN FORMAT_SWRITE. Work-around is to setLFORMAT=NONEandRFORMAT=NONEon the first$TABLErecord with aFILE=option.Problems with temporally over-lapping dosing records and with
$ESTand$COVrecords may fail during a parallelization run at the$COVstep. Work-around is to perform the$COVstep without parallelization.Repetition variables and data items (
RPTI,RPTO,RPT_) useful for repeated records for convolution problems did not work properly for estimation methods other than FO. This has been corrected in NONMEM 7.3.If the partial derivative of
MTIMEwith respect to any eta is negative (such asMTIME(1)=THETA(5)-ETA(5)), then the predicted value of F and its derivatives will probably be incorrect. The bug exists in all versions of PREDPP from NONMEM VI to NONMEM 7.2. It is corrected for NONMEM 7.3. A work-around is to useALAG’s in place ofMTIME’s, but this is somewhat complicated. A fix is to edit the filePRED.f90(orPRED.ffor older versions) in theprdirectory. Locate the charactersDSUM=DSUM+GG(IMTGG(MTPTR),K+1)Change to
DSUM=DSUM+ABS(GG(IMTGG(MTPTR),K+1))
v7.2
The main new features of NONMEM 7.2 compared to NONMEM 7.1.2 are as follows:
Dynamic Memory Allocation: No need to modify SIZES for unusually large problems. Memory is automatically sized according to the number of parameters and number of subjects. User may override computer generated values using a $SIZES statement as the first executed line of the control stream. Often for moderate sized problems, this results in much smaller memory usage, compared to the standard memory usage in NONMEM 7.1. Particularly helpful for parallel computing when using multiple cores on a single computer. Please see section I.10 Dynamic Memory Allocation (NM72) and I.11 Changing the Size of NONMEM Buffers.
Parallel Computing: The computation of a single problem that can take many hours or days may be distributed over two or more cores and/or computers to complete in a shorter time. After the primary installation of standard NONMEM described below, parallel computing may require additional setup in order to implement, which can be very specific to the operating system and Fortran compiler used. In addition, you may need assistance from your IT administrator. Please read the installation notes below, and Section I.75 Parallel Computing (NM72).
MSF file system fully expanded to Monte Carlo Methods: Seamless resumption of expectation-maximization and Bayesian methods in case of sudden interruption, since the last print iteration.
XML Formatted Output: An XML markup version of the standard results output file is automatically produced.
Control Stream Files may be written in mixed case. User defined data labels and file names retain their case designation.
Stochastic Differential Equations (SDE): Additional data items have been added to facilitate SDE problems. Specialized data labels allow repeated PRED and ERROR calls for a single record, but with different EVID values (XVID1, XVID2, XVID3, XVID4, XVID5). In addition, a plug in routine (OTHER=SDE.f90) is available for Monte Carlo methods (but not for FOCE methods), that evaluates the stochastic differential equations, without requiring coding of these equations in the control stream file by the user. See sections I.76 Repeated Observation Records (NM72) and I.77 Stochastic Differential Equation Plug-In (NM72).
$CHAIN statement that is applicable to the entire $PROB, that allows incorporation of initial parameters from raw output files or randomization, and serves as parameters for simulations. The $EST METHOD=CHAIN supplies initial parameters from raw output files or randomizations only for the estimation method. See I.66.
Both covariance and correlation matrices to OMEGAs and SIGMAs are now printed in the NONMEM report file. Also, all correlation matrices, whether to OMEGAS and SIGMAS, or pertaining to the correlation matrix of estimates, are printed out with diagonal elements equal to the square root of diagonal element of covariance matrix (standard error).
Allow user to input OMEGAs and SIGMAs as standard deviations and/or correlations, or Cholesky format. See Alternative Inputs for $OMEGA and $SIGMA Values: VARIANCE/ CORRELATION/ CHOLESKY (NM72) in section I.8 Expansions on Abbreviated and Verbatim Code and Other Items (NM72,NM73,NM74,NM75).
New options for $EST: SIGLO, MAPINTER, MAPITER, NOHABORT, ORDER, METHOD=DIRECT, ISCALE_MIN, ISCALE_MAX, CONSTRAIN, FNLETA, ATOL. See the following sections:
- I.28 Controlling the Accuracy of the Gradient Evaluation and Individual Objective Function Evaluation
- I.29 The SIGLO level (NM72)
- I.38 Monte Carlo Importance Sampling EM
- I.39 Monte Carlo Importance Sampling EM Assisted by Mode a Posteriori (MAP) estimation
- I.40 Stochastic Approximation Expectation Maximization (SAEM) Method
- I.41 Full Markov Chain Monte Carlo (MCMC) Bayesian Analysis Method
- I.44 Monte Carlo Direct Sampling (NM72)
- I.46 MU Referencing
- I.48 Termination testing
- I.49 Use of SIGL and NSIG with the new methods
New options for $COV: SIGLO, ATOL, NOFCOV. See section I.58 $COV: Additional Options and Behavior.
$TABLE has two new special output variables, OBJI and NPD. OBJI is individual objective function (same as given in the root.phi file). NPD is the correlated (or non-decorrelated) NPDE value. Also, whole record format options are now available, LFORMAT and RFORMAT. See section I.17 $TABLE: Additional Statistical Diagnostics, Associated Parameters, and Output Format.
Native parameters are intermediately printed to the console during classical estimation, along with scaled parameters and gradients.
Alternative convergence criterion for FO/FOCE/Laplace: See Section I.30 Alternative convergence criterion for FO/FOCE/Laplace (NM72).
S Matrix evaluation of Variance-covariance Allowed when NOPRIOR=1. If $EST NOPRIOR=1 is set and $COV MATRIX=S is set, NONMEM will evaluate the variance-covariance matrix, unlike in earlier versions of NONMEM 7.
Three digit limitation indexed Variables. The limitation of number of digits expressing the index to THETAs, etas, OMEGAs, Mus, and SIGMAs has been increased from 2 (1-99) to 3 (1-999).
Bugs Fixed
The following bugs have been fixed that were in NONMEM 7.1.2:
With very large problems of more than to 180 estimated parameters (THETAs, OMEGAs, and SIGMAs), the eigenvalues list with two sets of column labels.
When the number of records in a subject exceeds 250, a “stack overflow” in the Intel version of NONMEM may occur.
On occasion after an analysis with SAEM with a very complex problem, estimation of objective function with IMP or IMPMAP results in ever increasing objective function values without stabilization, even though the SAEM result is reasonable. The usual adjustment of options in nm 7.1.2 fails to correct the problem. In NONMEM 7.2, some internal scaling parameters have been adjusted. Also, the user can further adjust these scaling parameters.
For certain estimation problems, ADVAN 5 and ADVAN7 provide inaccurate prediction values, which are sensitive to the initial THETAs. The work-around for earlier releases is to use ADVAN6 or ADVAN9.
During a simulation problem, if symmetric band matrix patterns are used in the OMEGA, including a block matrix which has all covariances of 0, the first simulated data set will be correct, but subsequent data sets will be incorrect. This occurs because the banding information is re-initialized after the first sub-problem simulation. This is corrected in NONMEM 7.2. As a work-around for earlier releases, during simulations, replace the 0 valued covariances with very small values of covariances (such as
1.0e-05).During an estimation with FO or FOCE, and the last subject in the data set has non-influential etas (for example, with interoccasion variability, if the last subject had no data during the last inter-occasion, the eta for that last inter-occasion is non-influential), the estimation may become inefficient due to incorrect gradient assessments.
If
DROPis used in$INPUTto not include a data item in any problem, thisDROPattribute continues to the next problem. This is corrected in NONMEM 7.2. As a work-around with earlier releases, do not useDROPin control streams with more than one problem unless the same items are dropped in all problems.
v7
Many changes and enhancements have been made from NONMEM VI release 2.0 to NONMEM 7. In addition to code modification and centralization of common variables for easier access and revision, the program has been expanded to allow a larger range of inputs for data items, initial model parameters, and formatting of outputs. The choice of estimation methods has been expanded to include iterative two-stage, Monte Carlo expectation-maximization (EM) and Monte Carlo Bayesian methods, greater control of performance for the classical NONMEM methods such as FOCE and Laplace, and additional post-analysis diagnostic statistics.
Attention: NONMEM 7 and higher produces a series of additional output files which may interfere with files specified by the user in legacy control stream files. The additional files are as follows:
root.agh
root.clt
root.cnv
root.coi
root.cor
root.cov
root.cpu
root.ets
root.ext
root.fgh
root.grd
root.imp
root.npd
root.npe
root.npi
root.npl
root.phi
root.phm
root.rmt
root.shk
root.shm
root.smt
root.vpd
root.xml
Where root is the root name (not including extension) of the control stream file given at the NONMEM command line, or root="nmbayes" if the control stream file name is not given at the NONMEM command line.
Modernized Code
All code has been modernized from Fortran 77 to Fortran 90/95. The IMSL routines have also been updated to Fortran 90/95. Furthermore, machine constants are evaluated by intrinsic functions in FORTRAN, which allows greater portability between platforms. All REAL variables are now DOUBLE PRECISION (15 significant digits). Error processing is more centralized.