Uncmin++

Download | Examples | Requirements

Bradley A. Hanson

Release: 0.001206 (February 10, 2001)

Uncmin++ is a C++ implementation of the UNCMIN routines for unconstrained optimization. Uncmin++ is a translation of Uncmin_F77.java into C++. Uncmin_F77.java was translated into Java from the FORTRAN UNCMIN routines by Steve Verrill. The original UNCMIN routines in FORTRAN are available from the Guide to Available Mathematical Software web site as OPTIF9 and OPTIF0. The UNCMIN routines are based on algorithms presented in Appendix A of:

Dennis, J.E., & Schnabel, R.B. (1996). Numerical methods for unconstrained optimization and nonlinear equations. Philadelphia: Society for Industrial and Applied Mathematics.

Uncmin++ consists of one header file (Uncmin.h) containing the definition of the templated Uncmin class. Documentation of how to use Uncmin++ is included in this header file. For details on the numerical procedures used in Uncmin++ see the book by Dennis and Schnabel.

I have successfully compiled Uncmin++ using the CodeWarrior 6.0 compiler on Mac OS and Windows NT, gcc 2.95.2 on Linux, and the free Borland 5.5 compiler on Windows 95/NT. To use Uncmin++ with Microsoft Visual C++ 6 the symbols BOOST_NO_STDC_NAMESPACE and BOOST_NO_LIMITS need to be defined.

Please contact me if you have any questions or comments about this software

Download

Download - Zip archive containing Uncmin.h, this HTML file, and an examples directory. The files in this archives is stored with DOS line breaks (they are DOS text files).

Examples

A examples directory is included with the Uncmin++ distribution which contains two examples of using Uncmin++ to perform nonlinear regression for data sets from the Statistical Reference Datasets Project (StRD).

The following files are included in the examples folder:

Requirements

Two template parameters to the Uncmin class correspond to types for vector and matrix classes. Classes implementing vectors and matrices are required to use the Uncmin class. The documentation at the top of Uncmin.h gives the requirements of the vector and matrix classes used as template parameters to Uncmin. Two freely available packages which contain vector and matrix classes which meet the requirements for use with Uncmin are the Template Numerical Toolkit (TNT) and the Simple C++ Numerical Toolkit (SCPPNT).
Software by Brad Hanson

Brad Hanson's Home Page

Last updated: February 10, 2001

URL of this page: http://www.b-a-h.com/software/cpp/uncmin.html