Return-Path: <John.Krumm@IUS2.CS.CMU.EDU>
Received: from IUS2.CS.CMU.EDU by K.GP.CS.CMU.EDU;  9 Nov 88 10:35:00 EST
Received: from IUS2.CS.CMU.EDU by IUS2.CS.CMU.EDU;  9 Nov 88 10:29:33 EST
To: bovik@IUS2.CS.CMU.EDU
cc: krumm@IUS2.CS.CMU.EDU
Subject: math software
Date: Wed, 09 Nov 88 10:29:28 EST
Message-ID: <13006.595092568@IUS2.CS.CMU.EDU>
From: John.Krumm@IUS2.CS.CMU.EDU

	I've been searching around for some good math software lately,
and I thought I'd tell you all what I found.  My goal was to get some
routines, callable from C, that I could use for least squares fitting
of arbitrary functions and some high-powered linear algebra.

	There just does not exist a lot of numerical software for C.
One source for some C routines is Quantitative Technology Corporation
(800-234-0168).  They have a bunch of routines for matrices and image
processing in your choice of C, Ada, or FORTRAN.  The other source I
found is the routines in the book _Numerical_Recipes_, Press et al.,
Cambridge University Press.  The E&S Library has a copy.  They have
a version of their book with FORTRAN and Pascal routines, and another
version with C.  The programs in the book are available on a disk which
you can order separately.  There is a big variety of routines whose
algorithms are limited in sophistication to what can be explained in a
few pages.  However, for many tasks, this is quite adequate.

	There are at least two good sources of general routines if you
let yourself use FORTRAN.  One nice commercial package is IMSL.  They've
got subroutines for statistics, differential equations, linear algebra,
special functions, image processing, optimization, and more.  Documentation
for IMSL is in the reference section of the E&S Library.  Part of the
package exists on a.gp.cs.cmu.edu, and all of it on vb.cc.cmu.edu and on
the local disks of some random Andrew workstations.  It seems that the
closest CMU could come to getting an IMSL site license was to buy a whole
bunch of individual licenses.  These are available from Chuck Augustine in
Academic Computing (x2649) at $250 per workstation license.  In my humble
opinion, this is a ridiculously good bargain, and it will probably be at
the top of the Christmas list I give my advisor.

	If your advisor is not so generous, you may want to try the FORTRAN
routines in LINPACK (linear algebra), MINPACK (optimization), and EISPACK
(eigenvalues).  I always thought these were public domain until I called
the National Energy Software Center at the Argonne National Laboratory.
They wanted about $1600 per package!  This seemed strange since NSF funded,
at least, the development of LINPACK.  Conventional wisdom around CMU had
them as public domain, however.  I verified this by calling someone in the
Applied Math group at NBS.  They distribute the routines as public domain,
so I concluded that they were public domain, and you'd be silly to get them
from Argonne Labs.  MINPACK is on vb.cc.cmu.edu in the directory
UCC_ROOT:[PACKAGES.MINPACK.TAPE].  Mike Meyer posted this on the unix-forum
bboard:

07-Nov-88 19:11    Michael Meyer                Re: LINPACK, MINPACK, EISPACK?
From: Michael Meyer <mm8s+@andrew.cmu.edu>
Linpack, eispack and minpack are available on andrew (in /usr/local/lib on
andrew workstations, otherwise on /afs/andrew/@sys/usr/local/lib ).  Source
code is also available, in the /afs/andrew/ac/src/local/packs directory tree.

--Mike
----------

I've got one of the MINPACK routines successfully running from C, and I
expect the other PACK's will work as well.  For information on calling
FORTRAN from C, see _A_Portable_Fortran_77_Compiler_ in the document room,
the Sun _FORTRAN_Programmer's_Guide_, or me.  It turns out, according to the
NBS guy, that much of IMSL and the NAG library (whatever that is) are
based on these various PACK routines.  Also, if you have a particular task,
NBS can determine just the routines you need from these packages so you 
don't have the overhead of all the rest.  The NBS person is David Kohner,
(301) 975-3808.

	Another commercial FORTRAN package for optimization is OPDES.
Talk to CMU's Mark Sapossneck about it.

					John

