Known Issues for the NAG Library FL Interface
This document reflects all reported and resolved issues that affect recent releases of the NAG Library FL Interface.
Some of these issues may have been fixed at intermediate "point" releases of the Library, while other fixes are scheduled for incorporation at future releases. For library Marks where those fixes are not yet incorporated, a workaround for the known issue is provided wherever possible.
To find the Mark and point release number of your library, call NAG routine a00aaf( ).
For issues that affect releases of other interfaces, please also see
Order the issues by
Synopsis  Overflow may occur if the routine attempts to scale the polynomial coefficients. 
Description  In rare circumstances overflow may be observed if ${\mathbf{scal}}=\mathrm{.TRUE.}$. 
Severity  Noncritical 
Issue Since Mark  16 
Workaround  Set argument ${\mathbf{scal}}=\mathrm{.FALSE.}$. 
Synopsis  d02ngf can fail on stationary problems. 
Description  d02ngf can fail on stationary problems.. 
Severity  Critical 
Issue Since Mark  23 
Fixed at Mark  27.3 
Synopsis  d06acf returns ${\mathbf{ifail}}={\mathbf{2}}$ error for some boundary meshes due to an internal scaling issue. 
Description  d06acf returns ${\mathbf{ifail}}={\mathbf{2}}$ error for some boundary meshes due to an internal scaling issue. 
Severity  Noncritical 
Issue Since Mark  20 
Fixed at Mark  28.4 
Workaround  Scale input boundary mesh prior to calling d06acf so that ${\mathbf{}}{\mathbf{}}=0$ and ${\mathbf{}}{\mathbf{}}=1$. 
Synopsis  e01shf will occasionally incorrectly identify a point as being outside the region defined by the interpolant. 
Description  e01shf will occasionally incorrectly identify a point as being outside the region defined by the interpolant. This leads to the function value being extrapolated rather than interpolated and can lead to incorrect results. 
Severity  Noncritical 
Issue Since Mark  26.0 
Fixed at Mark  27.1 
Workaround  None. 
Synopsis  No check that a mandatory call to the initialization routine has been made. 
Description  Whilst it is necessary to call initialization routine e04wbf prior to calling the named e04 routines, no software check is made to ensure that this has happened. 
Severity  Noncritical 
Issue Since Mark  20 
Workaround  Ensure that initialization routine e04wbf has been called. 
Synopsis  ${\mathbf{stats}}$ and ${\mathbf{rinfo}}$ were not correctly filled by the presolver. 
Description  The arrays ${\mathbf{stats}}$ and ${\mathbf{rinfo}}$ were not correctly filled when the problem was entirely solved by the presolver. It now returns the correct values.
The optional parameter ${\mathbf{Print\; Solution}}$ now correctly writes the linear constraints dual variables when no bounds are defined on the variables.

Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  27 
Workaround  Don't rely on ${\mathbf{rinfo}}\left(1\right),{\mathbf{rinfo}}\left(2\right)$ to hold the primal and dual objective in this case and recompute it as ${c}^{\prime}x$ and $by$, respectively. 
Synopsis  e04mtf does not report the correct solution when $3$ or more columns are proportional to each other in the constraint matrix. 
Description  e04mtf does not report the correct solution when $3$ or more columns are proportional to each other in the constraint matrix. In such a case, the solution reported may be infeasible. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  27 
Workaround  A workaround is to disable the more complex presolve operations by setting the optional parameter ${\mathbf{LP\; Presolve}}=\mathrm{BASIC}$. This may slow down the solver depending on the problem. 
Synopsis  In some very rare cases, the solution reported presents big violations on a small number of linear constraints. 
Description  In some very rare cases, the solution reported presents big violations on a small number of linear constraints. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  27.1 
Workaround  A workaround is to deactivate the more complex presolver operations with the optional parameter ${\mathbf{LP\; Presolve}}=\mathrm{BASIC}$. 
Synopsis  In some very rare cases, e04mtf reports problem infeasibility for a feasible problem. 
Description  In some very rare cases, the solver reports problem infeasibility when there are numerical difficulties. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  28.6 
Workaround  Unfortunately there is no convenient workaround. 
Synopsis  In some very rare cases, at presolve phase the solver declares unboundedness on a bounded problem. 
Description  In some very rare cases, especially when there are a large amount of singleton variables, the solver might report unbounded error message on a bounded problem. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  29.0 
Workaround  A workaround is to deactivate the more complex presolver operations with the optional parameter ${\mathbf{LP\; Presolve}}=\mathrm{BASIC}$. This may slow down the solver depending on the problem. 
Synopsis  In some cases the solver declares dual infeasibility during presolving for feasible and bounded problems. 
Description  For a bounded problem, the solver reports dual infeasibility during dominated columns removal at the presolving stage. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  29.1 
Workaround  A workaround is to deactivate the more complex presolver operations with the optional parameter ${\mathbf{LP\; Presolve}}=\mathrm{BASIC}$. This may slow down the solver depending on the problem. 
Synopsis  Infeasible bounds defined by e04rjf of a variable are ignored and infeasibility is not reported. 
Description  When infeasible bounds are defined by e04rjf for a variable, instead of reporting problem infeasibility, the bounds are overridden and wrong solution may be reported. 
Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  27.1 
Workaround  A workaround is to deactivate the more complex presolver operations with the optional parameter ${\mathbf{LP\; Presolve}}=\mathrm{BASIC}$ for e04mtf and ${\mathbf{SOCP\; Presolve}}=\mathrm{BASIC}$ for e04ptf. 
Synopsis  Optional parameters ${\mathbf{List}}$ and ${\mathbf{Nolist}}$ are not handled correctly. 
Description  Routines e04nrf, e04vkf and e04wef do not handle optional parameters ${\mathbf{List}}$ and ${\mathbf{Nolist}}$ correctly. Specifying ${\mathbf{List}}$ does not alter the behaviour of subsequent routines in the suite, and specifying ${\mathbf{Nolist}}$ erroneously reports an error. 
Severity  Noncritical 
Issue Since Mark  8 
Fixed at Mark  27.3 
Workaround  Routine e04nsf should be used instead to set optional parameters ${\mathbf{List}}$ or ${\mathbf{Nolist}}$. 
Synopsis  Information about the last constraint might not be printed. 
Description  If the problem has a nonlinear objective function without a linear part and ${\mathbf{objrow}}<{\mathbf{nf}}$, the last constraint is not printed in the final information about the solution (Rows section). 
Severity  Noncritical 
Issue Since Mark  21 
Fixed at Mark  26 
Workaround  None. 
Synopsis  When ${\mathbf{ifail}}={\mathbf{4}}$ is returned, the expected value of ${\mathbf{nvar}}$ in the error message may be wrongly reported. 
Description  When ${\mathbf{ifail}}={\mathbf{4}}$ is returned, the expected value of ${\mathbf{nvar}}$ in the error message may be wrongly reported. This incorrect behaviour may occur when the internal solver works with a different number of variables than what is declared during handle initialization, e.g., when some variables are fixed by the user. 
Severity  Noncritical 
Issue Since Mark  28.3 
Fixed at Mark  30.2 
Workaround  None. 
Synopsis  Multithreaded versions of the routines f11bef, f11bsf, f11gef and f11gsf may produce slightly different results when run on multiple threads. 
Description  Multithreaded versions of the routines f11bef, f11bsf, f11gef and f11gsf may produce slightly different results when run on multiple threads, e.g., the number of iterations to solution and the computed matrix norms and termination criteria reported by the associated monitoring routines. A bug affecting f11bef and f11gef has been fixed, and parallel vector dot products have been modified in all routines to improve consistency of results. 
Severity  Noncritical 
Issue Since Mark  19 
Fixed at Mark  27.1 
Workaround  None. 
Synopsis  f16rbf and f16ubf return $0$ if ${\mathbf{kl}}$ or ${\mathbf{ku}}$ is $0$, instead of the correct norm. ${\mathbf{ldab}}$ is incorrectly forced to be at least ${\mathbf{m}}$ when $m=n$. 
Description  f16rbf and f16ubf mistakenly make a quick return if ${\mathbf{kl}}$ or ${\mathbf{ku}}$ is $0$, instead of computing the correct value for the requested norm. Also, ${\mathbf{ldab}}$ is incorrectly forced to be at least ${\mathbf{m}}$ when $m=n$. 
Severity  Critical 
Issue Since Mark  23 
Fixed at Mark  27.3 
Workaround  None. 
Synopsis  If the first row or column of the weight matrix ${\mathbf{h}}$ consists only of zeros, then the routine will fail to find the nearest correlation matrix for that weight matrix. 
Description  An error can occur when the first row or column of the weight matrix ${\mathbf{h}}$ consists only of zeros, then the routine will fail to find the nearest correlation matrix for that weight matrix. 
Severity  Critical 
Issue Since Mark  25 
Fixed at Mark  30.1 
Workaround  The workaround is to apply a small weight (relative to other nonzero weights given in ${\mathbf{h}}$) to one of the elements in the first row/column. 
Synopsis  A segmentation fault is likely to occur if a model with multiple random statements is supplied to the routine, where at least one of those statements does not have a ${\mathbf{Subject}}$ term. 
Description  A segmentation fault is likely to occur if a model with multiple random statements is supplied to the routine, where at least one of those statements does not have a ${\mathbf{Subject}}$ term.
For example, a model specified using:
V1 + V2 / SUBJECT = V3 V4 + V5 / SUBJECT = V6would not trigger the error, but one specified using: V1 + V2 V4 + V5 / SUBJECT = V6would. The error is not triggered when there is only a single random statement, so a model specified using just
V1 + V2will not trigger the error. 
Severity  Critical 
Issue Since Mark  27 
Fixed at Mark  27.1 
Workaround  A workaround to this issue is to always supply a ${\mathbf{Subject}}$ term. If the required model is of the form:
V1 + V2 V4 + V5 / SUBJECT = V6then you can specify an equivalent model by using: V1 + V2 / SUBJECT = DUMMY V4 + V5 / SUBJECT = V6where the variable 
Synopsis  The wrong value for ${\mathbf{p}}$ is returned when ${\mathbf{aa2}}$ is large. 
Description  In g08ckf and g08clf the value returned for the upper tail probability ${\mathbf{p}}$ is wrong when the calculated AndersonDarling test statistic ${\mathbf{aa2}}$ is large. In the case of g08ckf, when ${\mathbf{aa2}}>153.4677$ the returned value of ${\mathbf{p}}$ should be zero; in the case of g08clf, when ${\mathbf{aa2}}>10.03$ the returned value of ${\mathbf{p}}$ should be $\text{}\le \mathrm{exp}\left(14.360135\right)$. 
Severity  Critical 
Issue Since Mark  23 
Workaround  Workaround for g08ckf:
Call g08ckf(...) If (aa2 > 153.4677d0) p = 0.0d0Workaround for g08clf: Call g08clf(...) If (aa2 > 10.03d0) p = exp(14.360135d0) 
Synopsis  g13faf may return a negative value as the estimate of the last $\beta $ parameter (i.e., ${\beta}_{p}$) for a subset of models. 
Description  g13faf can result in a negative value for the estimate of the last $\beta $ parameter (i.e., ${\beta}_{p}$) or, if $p=0$, the last $\alpha $ parameter (i.e., ${\alpha}_{q}$).
This issue only affects a subset of models that have normally distributed errors and do not include an asymmetry term.
If the routine did not return a negative value as the estimate of the last $\beta $ parameter (or, if $p=0$, the last $\alpha $ parameter), then that particular model was not affected by the issue.

Severity  Critical 
Issue Since Mark  20 
Fixed at Mark  27 
Workaround  None 
Synopsis  When ${\mathbf{what}}=\text{'V'}$ the information returned in ${\mathbf{plab}}$ and/or ${\mathbf{vinfo}}$ may be incorrect. 
Description  The information returned in ${\mathbf{plab}}$ and/or ${\mathbf{vinfo}}$ may be incorrect in cases where ${\mathbf{what}}=\text{'V'}$ and the underlying linear mixed effects regression model has a random variable, with a single level (so either binary or continuous), that only takes the value zero. 
Severity  Noncritical 
Issue Since Mark  27.0 
Workaround  The work around is to drop the term from the model, as it does not contribute. For example, if the random part of your model was specified as: V1 + V2 / SUBJECT=V3 and the variable V2 was a continuous variable, that only takes a value of zero in the data, then this is equivalent to respecifying the model using: V1 / SUBJECT=V3. 
Synopsis  In some cases, solver returns inaccurate solution when there are binary variables. 
Description  When there are binary variables, the accuracy of the solution will be influenced by the initial values. The solver could return inaccurate solution. 
Severity  Noncritical 
Issue Since Mark  25 
Fixed at Mark  29.1 
Workaround  The work around is to use integer variables with $0$ and $1$ as lower and upper bound, respectively. 
Synopsis  Thread Local Storage default limit was exceeded for delay loaded shared library. 
Description  A fair amount of thread local storage had been allocated by an auxiliary routine which has now been updated to use a very small amount of thread local storage. Prior to the update, this only affected the case where the shared version of the Nag Library was delay loaded, since this assumed a small default maximum amount of thread local storage, which was in fact exceeded.
The issue had been present since the introduction of the auxiliary routine at Mark 26.1. From Mark 28.6, the amount of thread local storage used is very small and this is no longer an issue.

Severity  Noncritical 
Issue Since Mark  26.1 
Fixed at Mark  28.6 
Workaround  None. 
Synopsis  On Linux, static linking of the NAG Library using a recent Intel Fortran compiler results in a link error due to multiple defines. 
Description  (This error report applies to Linux library NLL6I only).
On Linux, static linking of the NAG Library using a recent Intel Fortran compiler results in a link error due to multiple defines.
This is due to the inclusion of some Intel compiler runtime libraries into the static NAG Library. This was originally to simplify the linking of the NAG Library using ifort, where otherwise each such runtime would have had to be specified on the link line.
However, recent versions of ifort and ifx have now added these compiler runtime libraries into the list of libraries to be linked by default. Thus, using these newer versions of ifort/ifx results in the said runtimes being linked twice.

Severity  Critical 
Issue Since Mark  
Fixed at Mark  
Workaround  The recommended workaround is to link to the shared Library when this problem presents itself. 