In the course of running the MINPACK test problems (here are the materials needed to run the FORTRAN test routines), I noticed some discrepancies among various sets of results:

- The results from the FORTRAN run of lmder.
- The lmder results from JDK 1.1.6 (September 1998 version?)
when Math.pow(x,2)
*has not*been replaced by x*x for the Powell problem. Here. - The lmder results from JDK 1.1.6 (September 1998 version?)
when Math.pow(x,2)
*has*been replaced by x*x for the Powell problem. Here. - The lmder results from Java 2 SDK, version 1.3.0 (June 2000 version?)
when Math.pow(x,2)
*has not*been replaced by x*x for the Powell problem. Here. - The results from the FORTRAN run of lmdif.
- The lmdif results from Java 2 SDK, version 1.3.0 (June 2000 version?)
when Math.pow(x,2)
*has not*been replaced by x*x. Here.

The newer version of Java yields lmder results that differ slightly (5th or 6th digit) from the FORTRAN results for the Meyer problem.

The newer version of Java yields lmdif results that differ from the FORTRAN results for the Brown and Dennis problem. These results can differ in the 4th digit. Presumably (???) this is due to differences in the FORTRAN and Java implementations of the sine and cosine functions.

I am not a numerical analyst and have made no effort to analyze these
differences further. I did hand recheck the code and I did run debugging
sessions to follow the development of differences. I assume that the
differences are due to problems associated with semi-pathological
functions and machine precision. However, it is of course possible
that there are errors in the Java translation. If you detect an
error, PLEASE contact me (Steve Verrill) at
`sverrill@fs.fed.us`.

Last modified on 2/6/02.