Last-Modified: $Date: 1995/09/01 06:00:49 $ Submitted-By: ajayshah@cmie.ernet.in (Ajay Shah) Version: $Revision: 1.31 $ Frequency: Monthly Welcome to of the index of resources for numerical computation in C or C++. It is a collection of pointers to: - free source code available on the net, - articles and documents, especially those available over the net. This file is ftp://usc.edu/pub/C-numanal/numcomp-free-c.gz ftp://ftp.math.psu.edu/pub/FAQ/numcomp-free-c or c/numcomp-free-c on netlib (slightly outdated). Also see the last item on http://www.math.psu.edu/OtherMath.html The book reviews which were here have been deleted in order to combat bloat. You can find them in http://www.cmie.ernet.in/~ajayshah but be warned that we have a slow leased line and our systems are only up from 9 to 7 GMT+0530. Please see the section "interesting sites" below to get some help on how to retrieve software listed here. Table of Contents: * Explanations of fields * The index * f2c * Other pointers * Interesting sites * Credits The index is biased towards fields I work in. Please send me suggestions, corrections and improvements. -Ajay Shah, ajayshah@cmie.ernet.in Explanations of fields ---------------------- Name if the archive has a obvious name, then that is shown. Otherwise I invent something sensible. Where is a pointer into a ftp site, or sufficient information to figure that out. The information at EOF may enlighten you if you are still stuck. Ideally I try to give information which is explicit enough for use with (say) ftpmail. Systems The default is Unix. If it runs on other systems this is shown, if it does NOT run on Unix this is shown. Language The default is ANSI C. The alternatives are K&R and C++. Author I try to give the name(s) and email addresses. Sometimes the email address is a contact person, even if it's not the author. Version This tries to identify a most-recent version and gives it's date. Description A one-line description Comments Are a few keywords thrown in to help you egrep. Many things are incomplete; tell me of anything which hurts your eyes. Please point me to goodies I've overlooked. If you have source code which may be of wide interest, please make it available to the net. The index --------- Name : AIPS++ library (beta) Where : ftp://aips2.cv.nrao.edu/pub/aips++/RELEASED/libaips-3 Systems : Unix Language : C++ Author : AIPS++ consortium, aips2-request@nrao.edu Version : 3 Description : A class library under development for radio astronomical calibration and imaging. Comments : Released library has multidimensional array classes, FFT's gridding of ungridded data, containers, tables, a documentation extractor (from comments), etc. Name : ADOL-C Author : Andreas Griewank et al. (griewank@mcs.anl.gov) Systems : Unix, cfront or g++ Version : 1.5 (Dec 1993) Description : Automatic differentiation package in C++ Where : In pub/ADOLC at ftp sites info.mcs.anl.gov and nbtf02.math.tu-dresden.de Comments : Contains LaTeX documentation. Associated with article in TOMS. See book "Automatic differentiation of algorithms" edited by George Corliss and Andreas Griewank, SIAM, Dec 1991, where the chapter by D. Juedes lists many other automatic differentiation packages. Name : ajay Where : in general on Statlib Description : cholesky decomposition and drawing from MVN Author : Ajay Shah, ajayshah@cmie.ernet.in Version : 23 Sept 1991 Name : as274_fc.tar.z (42748 bytes) Author : Alan Miller (alan@dmsmelb.mel.dms.CSIRO.AU) Port to C and packaging by Ajay Shah (ajayshah@cmie.ernet.in) Systems : Unix Version : 1 May 1993 Description : High accuracy least squares routines with facilities for WLS for a subset of variables, changing the order of variables, dealing with singularities, calculating an estimated covariance matrix of the coefficients. Both fortran and C versions are presented, along with a regression testing setup using ten test programs. See article "Least Squares Routines to Supplement those of Gentleman" in Applied Statistics 41(2), 1992 by Alan Miller. Where : pub/C-numanal on usc.edu Comments : note the .z is the new gzip compression. Name : ASA Where : file ASA.tar.gz. ASA.tar.Z, ASA-shar.Z, ASA-shar in ftp.alumni.caltech.edu:/pub/ingber [131.215.139.234] Description : adaptive simulated annealing: performing adaptive global optimization on multivariate nonlinear stochastic systems Language : either K&R or ANSI C Authors : Lester Ingber (ingber@alumni.caltech.edu) Comments : Is very actively developed. Version : 10.3, Tue Sep 19 13:22:51 GMT+0530 1995 Name : AutoClass C Authors : Diane Cook & Joe Potts - U. Texas at Arlington Description : C implementation of AutoClass: an unsupervised Bayesian classification system that seeks a maximum posterior probability classification. Systems : SunSparc SunOS 4.1.3 Where : http://ic-www.arc.nasa.gov: /ic/projects/bayes-group/group/html/autoclass-c-program.html or send e-mail to taylor@ptolemy.arc.nasa.gov Language : ANSI C, GNU gcc version 2.6.3 Version : 1.0 Comments : source code provided Date : 26 April 95 Name : awesime Description : a C++ task library explicitly designed for simulation. Where : pub/cs/misc/Awesime on ftp.cs.colorado.edu Author : Dirk Grunwald (grunwald@foobar.cs.colorado.edu) Version : II Name : bignum Where : pub/bignum on rpub.msu.edu ; ripem.msu.edu Description : directory filled with bignum software, and a file BIGNUMS.TXT which summaries bignum alternatives. Author : BIGNUMS.TXT is by Mark Riordan (mrr@scss3.cl.msu.edu) The ftp site is maintained by him. Version : April 1993. Name : bignum.tar.Z Where : in tars/math on einstein.mse.lehigh.edu (128.180.9.162) Systems : Unix Description : Arbitrary Precision Integer Arithmetic Author : Serpette, Vuillemin, Jean-Claude Herve Version : 23 Sept 1990 Comments : Excellent. very fast. possible problems with unalloc call. Name : blas.cpp.shar.z Where : in pub/C-numanal on usc.edu Author : Damian McGuckin (damianm@eram.esi.com.au) Description : a BLAS in C++ Version : beta, 8 May 1993 Name : c++ (5665 bytes) Author : U. Ruede (ruede@informatik.tu-muenchen.de) Description : Summary of 1992 workshop "Scientific Computing in C++" (plain text file) Where : mgnet/papers/Ruede on casper.cs.yale.edu Date : August 4 1992 Name : C++SIM Where : on arjuna.ncl.ac.uk pub/C++SIM/Source/C++SIM_PR1.0_tar.Z pub/C++SIM/Papers/C++SIM_EuropeA4.ps.Z pub/C++SIM/Papers/C++SIM_USLetter.ps.Z Description : SIMULA and SIMSET style simulation package in C++ with accompanying documentation. Authors : Mark Little (M.C.Little@newcastle.ac.uk) Daniel McCue (Daniel_McCue.WBST102A@xerox.com) Version : 1.0 (June 14th 1993) Comments : A complete simulation package for creating process based discrete event simulation as in SIMULA. The linked-list manipulation facilities provided by SIMSET are also provided in the package. The system is built in an object- oriented manner and the documentation provides information on how it can be modified and extended. Active objects in C++ can also be provided outside of the simulation package by simply inheriting the desired thread characteristic. Name : cdhc Where : ftp://pasture.ecn.purdue.edu/pub/mccauley/grass/cdhc.tar.gz Systems : Unix Language : C Author : Darrell McCauley, mccauley@ecn.purdue.edu Version : 1.0 (12 Sep 1994) Description : A library for testing normality & exponentiality Comments : Draft docs at ftp://pasture.ecn.purdue.edu/pub/mccauley\ grass/tutorials/libcdhc-tutorial.ps.gz. Includes D'Agostino's D, Anderson-Darling, Cramer-Von Mises W^2, Kolmogorov-Smirnov, Chi-Square, Shapiro-Wilk, many others. Expands and fixes bugs in general/cdh in statlib. Name : cephes Author : Stephen L. Moshier, moshier@world.std.com Description : Emphasis on high accuracy special functions, but also contains useful code for matrices, eigenvalues, integration, ODEs, complex arithmetic, chebyshev approximation. Where : the many files in directory cephes on netlib Version : 2.2, June 1992 Name : Cfortran Where : zebra.desy.de [131.169.2.244] Systems : VAX VMS or Ultrix, DECstation, Silicon Graphics, IBM RS/6000, Sun, CRAY, Apollo and HP9000. Language : C, FORTRAN Author : Burkhard Burow, burow@vxdesy.cern.ch, University of Toronto Version : 2.5 Description : A set of macros (cfortran.h = 1000 lines) allowing function calls to be made from C to FORTRAN and vice-versa. Comments : Good compact way of calling functions without translating. Easy to use. Name : chernikov Author : Ata Etemadi (atae@spva.physics.imperial.ac.uk) Where : Volume 26, Issue 91 of comp.sources.unix Description : computes the stochastic webs produced by the Chernikov equations (see Nature Vol. 326, April 1987) and produces a PGM image based on occupancy of cells. The equations essentially describe the path of a non-relativistic charged particle rotating about a magnetic field line, and experiencing a periodic electric field impulse. Version : v1.0, 3 April 1993 Name : clapack Where : Start at http://www.netlib.org/clapack/index.html http://www.netlib.org/clapack/clapack.tar.z (10187795 bytes) Description : f2c translation of Lapack, with minor, mostly cosmetic improvements. Author : Jim Demmel (demmel@cs.berkeley.edu, http://http.cs.berkeley.edu/~demmel) Xiaoye Li (xiaoye@cs.berkeley.edu) Contact lapack@cs.utk.edu Version : Built off Lapack 2.0, 30 Sep 1994 Comments : They have ported the Lapack testing and timing code also. Their clapack is known to pass all the tests. Name : code++ Where : in pub/code++ on elib.ZIB-Berlin.de Language : C++ Systems : UNIX, GNU g++ and cfront Description : C++ class library for ordinary differential equations and related problems. Contains lots of useful classes for linear algebra (vectors, matrices, linear solvers, pseudoinverses), and other utilities (minimal tool command language, etc.). The integration classes for ODEs are based on adaptive extrapolation methods (explicit Euler discretization for non-stiff, and implicit for stiff ODEs). Classes for continuous output, stepsize freezing, and variational equations are also provided, as well as an experimental multiple shooting environment for BVPs. Author : Andreas Hohmann, hohmann@sc.zib-berlin.de Name : cvmath.cc (12263 bytes) Where : in pub/C-numanal on usc.edu Systems : Unix Language : C++ Description : An include file to make complex math look like regular math. Author : Leonard Kamlet, lik@engin.umich.edu Version : 8 March 1993 Comments : The file uses a lot of operator overloading, so that if x=a+ib and y=c+id, the code for multiplying the two together looks like z = x*y; Also, the file includes nrutil from Numerical Recipes, and adds the complex versions for vectors and matrices. Name : CVODE Where : netlib/ode/cvode.tar.Z Author : Choen, Scott D. and Alan C. Hindmarsh Version : 5 October 1994 Language : Ansi C Description : ODE solver Comments : Integrates ODE's. BDF or Adams-Moulton Formula. Implicit equation is solved with Functional or Newtontype iteration. Direct or iterative solution of the lin. eq. of the Newton iteration. Dense, diagonal, banded or sparse approximation of the Jacobimatrix of the right hand side of the ODE. Manual (91 p.) in postscript. Name : dcdflib Authors : Barry W. Brown, James Lovato, Kathy Russell Description : Library of Routines for Cumulative Distribution Functions, Inverses, and Other Parameters Systems : Unix Where : odin.mda.uth.tmc.edu in pub/unix/dcdflib.c-1.0-tar.Z Language : K&R and ANSI C available. Version : 1.0, February 1994 Name : dcg.shar Where : in c on Netlib Description : preconditioned conjugate gradient method Author : Mark K. Seager, seager@lll-crg.llnl.gov Name : dddd Where : in pub/dddd on madvax.uwa.edu.au Description : dynamical data determinism detector (works with time-series data). exploits Open windows 3. Systems : Unix Version : 21 Oct 1992 Author : Dave Watson, watson@maths.uwa.edu.au Name : Diffpack Authors : Hans Petter Langtangen (hpl@math.uio.no) Are Magnus Bruaset (Are.Magnus.Bruaset@si.sintef.no) + contributions from several other people Description : A development environment for object-oriented simulators based on PDEs. C++ source code and documentation. Systems : Tested on SGI/IRIX 5.2, C++ 3.2.1 HP/HP-UX 9.05, C++ 3.50 SPARC/Solaris 2.3, C++ 4.0 IBM/AIX 3.2.5, C++ 2.1.3.0 Relatively easy to port to other Unix platforms, does not work very well with g++. Where : netlib.att.com and mirror sites, directory diffpack Language : C++ (and a few C functions for GUI) Version : 1.0 Comments : See the Diffpack WWW Home Page on http://www.oslo.sintef.no/avd/33/3340/diffpack for presentation and the latest news. Date : April 28, 1995 Name : drpn Where : ftp://ftp.alumni.caltech.edu/pub/dank/drpn.tar.Z Systems : Unix Description : RPN calculator for digital signal processing Author : Dan Kegel, JPL Version : 1.1 Comments : A simple way to do add, multiply, FFT, sum, shift operators on a stream of fixed-length records of data. Handles several data types (16 bit int, 32 bit float). Used, for example, to process a synthetic aperture radar image. Name : dstool Where : somewhere on macomb.tn.cornell.edu Systems : Unix, uses xview3 and open windows 3 Description : Dynamical systems simulation package Plots Lorenz attractors and "other chaotic things" in realtime. Includes a expression evaluator. Author : Version : 1.1 Name : dtoa.c Where : in fp on Netlib Description : correctly rounded decimal <--> binary conversion Name : eigen.1.01.shar.Z (80545 bytes) Version : 1.01, 25 March 1993 Author : Nadav Har'El (nyh@gauss.technion.ac.il) Description : Find the N largest eigenvalues and their eigenvectors of a real matrix ( < 700x700). Includes postscript documentation. Where : eigen directory on gauss.technion.ac.il (132.68.112.60) Name : Euler Where : By anonymous ftp from ftp.ku-eichstaett.de Files : 212 kb /pub/unix/math/euler.tar.Z Language : ANSI-C Author : Rene Grothmann (rene.grothmann@ku-eichstaett.de) Version : 3.18 Description : Runs on UNIX/XWindow systems (OS/2 version available). Real and complex numbers and matrices. Lots of built in functions. Programming language. 2D/3D plots. ASCII- documentation and demo mode. Matlab like. Comments : Tested on IBM Risc, Linux and Sun (with acc compiler) Name : fec Authors : B. Bagheri (email?) Description : A collection of finite element libraries in C++ Where : pub/Math on karazm.math.uh.edu Language : GNU C++ Version : 1.1 Date : Name : FElt Where : pub/felt on cs.ucsd.edu Description : introductory finite element analysis Systems : Unix commandline or Unix + X HP-SUX, Sun, Linux, DOS. Version : 2.0, 28 February 1994 Author : Jason Gobat, jgobat@ucsd.edu Darren Atkinson, atkinson@ucsd.edu Comments : postscript manual and mailing list exists. Name : femlib-1.1.tar.gz Author : Michael Tiller (tiller@solace.me.uiuc.edu) Where : pub/C-numanal on usc.edu Systems : UNIX Language : C++ Version : 1.1, June 17 1993 Description : C++ class libraries for doing Finite Element simulations, Garbage Collection, Automatic Differentiation as well as a library for Sparse Matrices. Comments : This release is still pretty rough but should compile with gcc-2.4.3, gnumake-3.6x, libg++-2.3.1 and makedepend (from X11 distribution). Name : fft.shar Where : in c++ on Netlib Description : radix 2 FFT Name : fft-sstuff.tar.z Where : in pub/C-numanal on usc.edu Description : summary about FFT code in C, including lots of source Author : Peter J. McKinney (pm860605@longs.LANCE.ColoState.Edu) and Ron Mayer (mayer@acuson.com) Version : 19 March 1993 Comments : Includes DDJ's improved version of Numerical Recipes four1(). Name : fftsing Where : ftp://wuarchive.wustl.edu/edu/math/software/msdos/modelling/ Description : FFT of extremely long series; Singleton's mixed radix algo Author : Javier Soley, FJSOLEY@UCRVM2.BITNET Name : frac Where : in c on Netlib Description : finds rational approximation to floating point value Author : Robert Craig, AT&T Bell Labs - Naperville Name : fromskip Where : send email to Skip Carter (address at EOF) Language : C++ Description : numerical derivatives with richardson extrapolation, runge-kutta code, monte-carlo integration, fredholm and voltera integral equation solvers, etc. Name : FSQP, CFSQP Where : send email to andre@eng.umd.edu Systems : many (including DOS) Language : FORTRAN (FSQP), C (CFSQP) , Authors : Jian L. Zhou (jzhou@eng.umd.edu) and Andre L. Tits (andre@eng.umd.edu) (FSQP); Craig T. Lawrence (craigl@eng.umd.edu), Zhou and Tits (CFSQP). Version : FSQP: 3.3b, 9/93; CFSQP: 2.3, 11/8/95 Description : solution of constrained continuous optimization problems, possibly minimax (cost function is max of finitely many functions). CFSQP also includes efficient scheme to handle problems with many "sequentially related" objectives or constraints (e.g., finely discretized minimax problems or semi-infinite problems). Comments : modified SQP scheme; successive iterates are all feasible (inequality constraints) or "semi-feasible" (equality constraints). 70 page manual. keywords nonlinear minimisation maximisation nonlinear programming Name : fudgit_2.31.tar.Z (451691 bytes) Author : Martin-D. Lacasse, isaac@physics.mcgill.ca Where : pub/Fudgit on ftp.physics.mcgill.ca Description : C-based fitting and data manipulation program (works on top of gnuplot). Gives you a C-like interpreted script language. Systems : Unix only. Comments : See entry on gnuplot elsewhere in this document. Version : 2.31, 13 April 1993 Name : gaut Where : in general on Statlib Description : upper-tail probabilities on normal and t densities Author : Ajay Shah, ajayshah@cmie.ernet.in Version : 12 May 1991 Name : ga's Where : pub/galist/source-code/ga-source on ftp.aic.nrl.navy.mil (192.26.18.74) Description : many genetic algorithm optimisation libraries, all in C Comments : they are GAucsd 1.4 (Nici Schraudolph, nici@cs.ucsd.edu), GENEsYS 1.0 (Thomas Baeck, baeck@home.informatik.uni-dortmund.de) Genesis 5.0 (John J. Grefenstette, gref@aic.nrl.navy.mil), Goldberg's SGA in C (with a nCube version) by Rob Smith, rob@galab2.mh.ua.edu Also see survey of GA software in file GAsoft.txt at cs.ucsd.edu Name : gemmw Description : a highly portable Level 3 BLAS implementation of Winograd's variant of Strassen's matrix multiplication algorithm Where : in misc on Netlib Author : Craig C. Douglas, douglas-craig@CS.YALE.EDU Version : 22 May 1992 Name : genocop{,2}.tar.Z Where : in coe/evol on unccsun.uncc.edu (152.15.10.88) Description : nonlinear maximisation with linear constraints. You write C code for the function to optimise and link into genocop. Allowable ranges for each parameter can be defined. Author plans to do nonlinear constraints "soon". Author : ??, zbyszek@unccvax.ucc.edu Version : 2 Name : geometry Description : archive containing many programs on geometry Where : pub/contrib/comp_geom on geom.umn.edu Comments : Short summary as of 5 June 1993 geomview -- interactive geometry viewing for SGI IRIS evolver -- models evolution of surfaces driven by forces hcad -- drawing hyperbolic polyhedra in 3d poincare disk (for X) invriemann -- inverse riemann mapping by circle packing riemannmap -- riemann mapping by circle packing kali - 2D euclidean symmetry pattern editor for SGI IRIS minneview -- general 3d viewing program for SGI IRIS polycut -- covering spaces of 3d euclidian space from inside crsolver -- conformal mapping, complex analytic functions (NeXT) automata -- automatic groups programs epsilon -- utility for squashing FP roundoff errors in data files hyper -- projective <--> conformal models of hyperbolic space omni_interp and interpolate -- interpolating between formatted data files kaleido -- constructing uniform polyhedra qhull -- general dimension convex hull computations program snappea -- hyperbolic structures computations vcs -- 3d voronoi diagram program viewwld -- viewing line drawings in 3d space (for Suns) vor2d -- 2d voronoi and delaunay diagrams, with cheyenne graphics kaos -- interactive dynamical systems package (Suns) Name : gle Description : graphics layout editor script or menu driven program for composing a graphics page. Graphics primitives + PostScript file inclusion, plot generation from equations or tabular data + manipulation. Various output formats (X,ps,hpgl..) and utility programs (contour, surface, fits..) Systems : Unix, PC Where : wuarchive.wustl.edu:/graphics/graphics/packages/gle Version : 3.3b Language : ANSI C Author : Chris Pugmire, srghcxp@grv.grace.cri.nz Name : gmp-1.3.tar.z Description : GNU multiple precision library Where : in pub/gnu on prep.ai.mit.edu Version : 1.3, May 10 1993 Author : ? Name : gmt Where : kiawe.soest.hawaii.edu:/pub/gmt Description : great scientific graphics Author : ? Systems : Unix Comments : Fits the Unix philosophy. Postscript output supported. Language : C Name : Gnans Where : in ftp.mathematik.uni-Bremen.de:/pub/gnans Systems : Solaris 2.x, SunOS 4.1.x, SGI IRIX 5.x. Language : C++ Author : Bengt Martensson Version : 1.3, 26 August 1994 Description : Analyse deterministic and stochastic dynamic systems Comments : A program (and language) for dynamical systems. Includes simple scripting language. Graphical user interface. Copyleft. There is a mailing list. Name : gnufit10.tar.gz Author : Carsten Grammes (cagr@rz.uni-sb.de) Description : Gnuplot 3.2 with nonlinear regression features added Systems : Most Unix, OS/2 2.x. Needs popen(3). Where : pub/utils in coli.uni-sb.de Version : 1.0 Comments : Levenberg-Marquadt nonlinear least squares Date : 28 June 1993 Name : gnuplot3.5.tar.Z Authors : coordinated by Alex Woo (woo@playfair.stanford.edu) Description : plotting package for functions and data Systems : all systems, all graphics file formats, all output devices Where : in pub/gnuplot on ftp.dartmouth.edu Version : 3.5 Comments : Includes probability functions, 3d plotting with contours and hidden line removal, parametric functions. Has manual, online help, commandline editing and a newsgroup comp.graphics.gnuplot Can be used as a C library. Date : 17 August 1993 Name : go.c.Z (7288 bytes) Where : in pub/C-numanal on usc.edu Description : Calculate gaussian quadrature rules. Translation of Netlib: go/gausq.f using f2c with some hand-cleaning. You need a log gamma function. Comments : numerical integration Name : hare (Hazard Regression) Where : file hare (a shar file) in S directory on statlib Author : Charles Kooperberg (clk@stat.washington.edu) Description : estimates the conditional hazard rate based on possibly censored data and covariates. Includes parametric and non-parametric, additive and non-additive proportional and non-proportional hazards model as special cases. Addition and deletion of basis functions make the fit highly adaptive. Version : statlib, last update April 21, 1993 Comments : actually the objective of this file is to give a end-user of the S statistical package this functionality. But the actual computation is done in C. Described in Univ. of California, Berkeley, Stat tech rep 389. Available from the author. Name : heft (Hazard Estimation with Flexible Tails) Where : file heft (a shar file) in S directory on statlib Author : Charles Kooperberg (clk@stat.washington.edu) Description : estimates the unconditional hazard rate using splines. Knot addition, deletion and two extra tail terms make the fit highly adaptive. Version : statlib, last update April 21, 1993 Comments : actually the objective of this file is to give a end-user of the S statistical package this functionality. But the actual computation is done in C. Described in Univ. of California, Berkeley, Stat tech rep 388. Available from the author. Name : hepC++.html Authors : Marcus Speh (?) Description : Information on C++ applications in HEP Where : in pub/www/projects on info.desy.de Language : access through WWW Date : June 21 1993 Name : HL_Vector.shar Authors : oleg@ponder.csci.unt.edu, oleg@unt.edu Description : Aitken-Lagrange interpolation over the table of uniform or arbitrary mesh, and the Hook-Jeevse multidimensional minimizer. Systems : Unix Where : netlib (ftp://netlib.att.com/netlib/c++/hl_vector.shar.Z) Language : C++ (gcc 2.5.8) Version : 1.0 Comments : Test drivers and test run outputs are included, too. Commented. Needs LinAlg.shar Date : May 27, 1992 Name : hooke.c Authors : Mark Johnson Description : Hooke and Jeeves Algorithm Where : netlib/opt/hooke.c Language : C Name : IR-STAT-PAK Where : ftp://potomac.ncsl.nist.gov/pub/irstat/irstat.tar.gz Systems : Written for Solaris but it has been compiled under Linux and : SunOS. An AIX version required a few changes but not many. : The documentation discusses the O/S specific code. Language : ANSI C except that there are three arguments to main(). This : is unnecessary and will be removed in the next release. Author : J. Blustein Version : 1.02 (released 30 August 1995) Description : Descriptive and analytic statistics for the TREC IR trials Comments : information retrieval recall precision Tukey Name : ieeetest.zoo (65783 bytes) Where : in pub/C-numanal on usc.edu Author : Stephen L. Moshier, moshier@world.std.com Description : includes a improved version of paranoia, and code for testing the precision of the C I/O library on FP I/O. Version : 8 March 1993 Name : IND Tree Package Where : available in the US only, contact author Systems : Unix Description : Tree classification routines (supervised learning) including reimplementations of parts of CART, C4.5, and Bayesian and MDL methods with tree smoothing and "decision graphs". The package is made up of a collection of interconnected Unix tools. It comes with a lot of documentation. Author : Wray Buntine, wray@kronos.arc.nasa.gov Version : Version 2.1, January 1993 Name : in-spice Where : part of Spice. SPICE3E1 is free, SPICE3E2 is not-free less-buggy. Description : files src/lib/ni/ni{integ,comcof}.c are first- (backward euler) and second- (trapezoidal) order integrator and a >6 order GEAR. Name : jgraph.Z Author : Jim Plank (jsp@princeton.edu) Description : filter for producing {encapsulated,} postscript using input in a script language. Presentation quality results. Systems : Unix Where : in pub on princeton.edu, also jgraph.shar in misc on netlib Language : C Version : 8.3 Comments : Very useful for post-processing the results of a computational program. E.g. an awk program can turn numbers into jgraph code, or a C program can generate jgraph directly. The script language gives a very high degree of control over the final appearance. There is a mailing list. Date : Nov 30 1992 Name : kalman.tar.gz (22747 bytes) Where : in pub/C-numanal on usc.edu Author : Skip Carter (skip@taygeta.oc.nps.navy.mil) Description : A class library for Kalman filtering Language : C++ (works with g++ 2.4.2 also) Version : v1.0, 3 July 1993 Name : Karma Where : graphics/graphics/packages/karma on wuarchive.wustl.edu Description : DSP package Name : Kaskade Description : Linear elliptic FEM solver written in C. Reads problem description from plain text file - can be (mis)used as triangular mesh generator. Graphical output under X11 and MacOS. Mailing list. Authors : 2-D -- Rainer Roitzsch (roitzsch@sc.zib-berlin.de) 3-D -- Bodo Erdmann (erdmann@sc.zib-berlin.de) Konrad-Zuse-Zentrum fuer Informationstechnik (ZIB) Systems : compiles on Unix and Macintosh Where : elib.zib-berlin.de:/pub/kaskade. (The slightly outdated user manual is in pub/kaskade/AltesZeug/tr-89-4.ps - in english) Name : Kinetic Compiler and Integrator (kci) Where : ftp://mac-dev.ruc.dk/pub/kneth/kc.tar.Z Systems : Unix and MS-DOS Language : ANSI-C and the tools lex and yacc Author : Kenneth Geisshirt (kneth@fatou.ruc.dk) and Keld Nielsen Version : 1.05 Description : Chemical reaction simulator and ODE solver Comments : The kci package is able to simulate a set of chemical reactions and/or solve ODEs. The package also comes with many numerical libraries e.g. matrices (very small lib.), ODE solvers, integration of real functions, and find eigen- values/vectors of general matrices. There is also a small library for symbolically manipulating expressions. Name : Lapack++ Authors : J. Dongarra, R. Pozo, D. Walker Description : C++ version of some of lapack fortran code. Where : ftp from netlib2.cs.utk.edu in lapack++/* Language : C++ Version : 0.9 beta Comments : C++ version of some of lapack fortran code. Developmental version of proposed C++ version of lapack. Contains blas.h++ etc, but needs Fortran library to link. Has overview paper (9 pages ps), release notes (7 page ps) Date : Name : LASSPTools Where : /pub/LASSPTools at ept.msc.cornell.edu Systems : Unix Description : Data manipulation and entry tools for Unix. Author : Various people in the Cornell physics department Comments : A diverse set of tools by various people at the Laboratory of Atomic and Solid State Physics at Cornell. Most useful for a set of X-windows applications and UNIX filters for interactive data manipulation. For instance, there's a mouse-operated track-ball that outputs a rotation matrix describing the orientation of the ball. Name : leda Description : library of efficient data types and algorithms Version : v3.0, 26 Nov 1992 Where : in pub/LEDA on ftp.cs.uni-sb.de (134.96.252.31) Author : Stefan Naeher (stefan@mpi-sb.mpg.de) Comments : includes code on computational geometry There is a mailing list on it; contact listserv@dworkin.wustl.edu Name : LinAlg.shar Authors : oleg@ponder.csci.unt.edu, oleg@unt.edu Description : Basic Linear algebra in C++ Systems : Unix/Mac Where : netlib (ftp://netlib.att.com/netlib/c++/lin_alg.shar.Z) or ftp://replicant.csci.unt.edu/pub/oleg/LinAlg.shar Language : C++ Version : 3.1 Comments : Contains declarations of the Matrix, Vector, subMatrix over the real domain, and *efficient* and fool-proof implementations of level 1 & 2 BLAS (element-wise operations + various multiplications), transpositions and determinant evaluation/inversion. There are operations on a single row/col/diagonal of a matrix. The "new style" of returning matrices (via LazyMatrix) and filling them out. See LinAlg.h for the complete list of classes and functions, and vmatrix.cc, vvector.cc test drivers as to how the features can be used. See README for hints. The code made ANSI-C++ compliant and very portable (compiles with gcc v2.6.3). Date : Feb 7, 1995 Name : logspline Where : file logspline (a shar file) in S directory on statlib Author : Charles Kooperberg (clk@stat.washington.edu) Description : logspline density estimation fully automatic nonparametric density estimation adaptive smoothing using splines Version : statlib, last update April 21, 1993 Comments : actually the objective of this file is to give a end-user of the S statistical package this functionality. But the actual computation is done in C. Described in Journal of Computational and Graphical Statistics, (1993), vol 1, 301-328. Name : lpsolve Where : volume02 of comp.sources.reviewed Description : very good mixed integer linear program solver Author : Michel Berkelaar (michel@es.ele.tue.nl) Version : 1.4, 18 January 1994 Comments : Its core is a sparse matrix dual simplex LP solver. MILP problems are solved with a branch-and-bound iteration over LP solutions. It uses a lex+yacc parser to read a human-friendly algebraic input format. The author has used the program to solve LP problems up to about 30000 variables and 50000 constraints (on a 22 MFLOPS HP9000/750). Name : lsqrft15.zip Author : Michael Courtney (michael@amo.mit.edu) Systems : OS/2 2.x, UNIX Version : 1.5, 28 February 1994 Description : Non-linear least squares fitting program that opens a pipe to gnuplot and plots data and attempted fit. It's easy to define your own functions and recompile. Can fit multidimensional data to functions of more than one independent variable. You can choose whether to vary parameters. Language : ANSI C Where : pub/os2/2_x/unix/lsqrft*zip on ftp.cdrom.com Name : machar Where : in misc on Netlib Description : find out properties of floating point hardware Author : William J. Cody, cody@antares.mcs.anl.gov, and Tim Hopkins Version : October 1985 Name : madpack Where : Netlib, in pdes/madpack Description : MADPACK is a a compact package for solving systems of linear equations using multigrid or aggregation disaggregation methods. Imbedded in the algorithms are implementations for sparse Gaussian elimination and symmetric Gauss-Seidel (unaccelerated or accelerated by conjugate gradients or Orthomin(1)). This package is particularly useful for solving problems which arise from discretizing partial differential equations, regardless of whether finite differences, finite elements, or finite volumes are used. Author : Craig Douglas, douglas-craig@cs.yale.edu Comments : see directory mgnet on casper.cs.yale.edu too Name : marsaglia-random Where : archimedes.nosc.mil:pub/ada/random/* Systems : highly portable Language : C, Pascal, Ada Authors : G Marsaglia, M G Harmon & T P Baker, V Broman. Description : highly machine-independent uniform RNG, requires 24-bit fixed point or floating point arithmetic. 953118087 different seed pairs give pseudo-random sequences with period about 2**144. passes stringent randomness tests. Comments : correct operation with 24-bit floats seems to require a guard bit. failing that, try fixed point arithmetic. Name : matcalc Author : M. Gerberg, E.J. Moore, University of New South Wales, Australia Version : 2.1 Systems : Unix, VMS and DOS installation scripts exist Description : Matlab-like numerical solver. Good support of singular problems. Well structured - easy extension with own C routines which can use the matcalc library. Where : netlib/matcalc on draci.cs.uow.edu.au Name : matclass_info Author : Keith Briggs (Keith.Briggs@physics.uwa.edu.au). Where : Posted on sci.math.num-analysis and comp.lang.c++ Also see http://www.pd.uwa.edu.au/Keith/homepage.html Description : A comprehensive catalog of C++ matrix classes. I am not a C++ junkie (yet); it has a lot of information not present here. Version : Last posted 6 April 1994. Name : Matclass Description : a C++ class for numerical computation Author : Chris Birchenhall (chris.birchenhall@mailhost.mcc.ac.uk} Systems : Unix and PC Where : ftp from ftp.mcc.ac.uk pub/matclass/pc and pub/matclass/unix Comments : Offers a general purpose dense, real matrix class Has a family of decomposition classes based on LU, Cholesky, Householder QR and SVD Has a family of OLS regression classes based on above decompositons A family of special function classes Random number class Has a simplified I/O structure Very good tex manual. Date : Version : Name : matcom Authors : yak@techunix.technion.ac.il (Keren Yaron) Description : Matlab --> C++ translator Systems : SunOS (324k), MSW (1.1M) Where : ftp://ftp.funet.fi/pub/sci/math/matlab ftp://ftp.eeng.dcu.ie/pub/matlab/MATCOM Language : Version : Comments : Date : 21 Aug 1995 Name : matmult.tar.z Where : in pub/C-numanal on usc.edu Author : Clark Thomborson Description : Several C-language codes for n * n matrix multiply, n a power of 2, developed as a laboratory exercise in the Spring of 1993 for MIT course 6.891, "Source Code Optimization for Workstations and Supercomputers." The sources are commented, however the recursive SRM (shuffled-row major) algorithm is obscure. Offered "as is" into the public domain by the course instructor. Version : 7 May 1993 Name : matrices.asc Where : inside ddj9106.zip in published/dr-dobbs on ftp.uu.net Description : efficiently raise matrices to an integer power Author : Victor Duvanenko Version : June 1991 Name : matrix-multiply.shar.z Where : in pub/C-numanal on usc.edu Description : collection of net postings and email about fast matrix multiply Includes C source. Version : 1 May 1993, updated 4 June 1993 Comments : also see matmult.tar.z in this file. Name : matrix.tar.Z Where : in ftp-raimund/pub/src/Math on nestroy.wu-wien.ac.at (137.208.3.4) Author : Paul Schmidt, TI Description : Small matrix library, including SOR, WLS Name : matrix041.zip Where : in mirrors/msdos/c on wuarchive.wustl.edu Version : 0.41, Sept 23 1993 Description : Small matrix toolbox Name : Matrix.tar.Z Where : in pub ftp.cs.ucla.edu Description : The C++ Matrix class, including a matrix implementation of the backward error propagation (backprop) algorithm for training multi-layer, feed-forward artificial neural networks Version : 10 July 1993 Systems : Can use either g++ or cfront. SunOS, Solaris 2, NeXT, SGI, Linux. Author : E. Robert (Bob) Tisdale, edwin@cs.ucla.edu Name : mclaughl.lst Where : inside ddj8909.arc in published/dr-dobbs on ftp.uu.net Description : source code (500 lines) associated with article on Simulated Annealing by Michael P. McLaughlin. Version : September 1989 Name : meschach Where : in c/meschach on netlib pub/meschach on thrain.anu.edu.au Systems : Unix, PC Description : a library for matrix computation; matrix, vector, permutation, sparse matrix data structures; basic linear algebra; min/max, sorting & componentwise operations; dense LU, Cholesky, QR, LDL factorisations; dense eigenvalues/vectors, singular value decomposition; sparse matrix factorisations (LU, Cholesky, BKP); iterative methods; error handling; input/output Author : David E. Stewart, des@thrain.anu.edu.au Version : 1.2a, 28 February 1994 Name : meschach Where : in c/meschach on netlib Systems : Unix, PC Description : a library for matrix computation; more functionality than Linpack; nonstandard matrices Author : David E. Stewart, des@thrain.anu.edu.au Version : 1.1, 8 April 1993 Name : mfloat Where : in math on simtel. Systems : DOS Language : written C++ and 80x86 assembly, useful for C, C++, Pascal Author : Kaufmann Friedrich, fkauf@fstgds06.tu-graz.ac.at Mueller Walter, walter@piassun1.joanneum.ac.at Version : 2.0 into beta testing 2 June 1994. Description : fast high precision FP arithmetic (upto 77 digits) Comments : Shareware ($25). Name : MG-mglib.html Authors : Marcus Speh Description : Information on development of a C++ library for multigrid Where : in pub/www/projects on info.desy.de Language : access through WWW Date : June 21 1993 Name : MIDAS Authors : European Southern Observatory Description : Tools for image processing and data reduction, with an accent on applications in astronomy. Systems : all major Unix, Linux, VMS Where : ftphost.hq.eso.org:midaspub/linux for example Language : ANSI C and Fortran f77. Version : 94MAYpl2 Comments : Binaries are freely available, source is free to nonprofit research institutions. A contact person is resy@eso.org Date : 19 October 1994 Name : minit Where : volume 7 of comp.sources.misc Systems : Unix Description : linear programming by dual simplex method Author : Badri Lokanathan Version : 1.0, July 1989 Comments : don't miss minit.p1 Name : mm.c and mmgen.c Author : Mark Smotherman (mark@cs.clemson.edu) Description : benchmarking matrix multiply Where : in pub/programs/mark on ftp.cs.clemson.edu Comments : includes a lot of code for fast matrix multiply Date : 24 June 1993 Name : morrow.arc and gamaze.asc Where : inside ddj9104.zip in published/dr-dobbs on ftp.uu.net Description : genetic algorithm for optimisation, associated with article on the subject by Mike Morrow. Version : April 1991 Name : Mrandom (version 1) Where : Comp.sources.unix, Volume 25, Issue 23, December 1991 Systems : 4.3bsd Unix Language : C Author : Clark Thomborson Version : 1, 12/91 Description : bug fix for 4.3bsd Unix random() Comments : random number generator, 4.3bsd Unix library routine Name : Mrandom (version 2.3) Where : anon ftp from theory.lcs.mit.edu, directory pub/cthombor, have submitted to comp.sources.unix Systems : 4.3bsd Unix Language : C Author : Clark Thomborson Version : 2.3, 8/92 Description : bug fix for 4.3bsd Unix random(), interface to other RNGs Comments : random number generator, 4.3bsd Unix library routine Name : MXYZPTLK (mxyzptlk.tar.Z) Author : Leo Michelotti (michelot@calvin.fnal.gov) Systems : Unix, CC++, g++ (has been ported to others) Version : 3.1 (Sep, 1994) Description : Automatic differentiation and : differential algebra package in C++ Where : ftp calvin.fnal.gov : (in directory pub/outgoing/michelotti/MXYZPTLK Comments : Contains old 1990 PostScript documentation. : Some demo programs demonstrate features not documented. Review : Complements ADOL-C. Features complex mode. Easier to use, but possibly not as efficient for large problems. (Keith Briggs (Keith.Briggs@physics.uwa.edu.au) Name : newmat Where : volume47, issue 38-47 of comp.sources.misc SIMTEL msdos/cpluspls/newmat08.zip ftp://tahi.isor.vuw.ac.nz/pub/newmat08/newmat08.tar.gz Language : C++ Systems : Unix (g++, AT&T), MS-DOS (Borland, Watcom, MS) Description : a very thorough matrix class Author : Robert Davies (robert.davies@vuw.ac.nz) Version : v8, 19 Jan 1995 Name : nlmdl Where : in pub/arg/nlmdl at ccvr1.cc.ncsu.edu (128.109.212.20) in volume 16 of comp.sources.misc Language : C++ Systems : Unix, MS-DOS (Turbo C++) Description : a library for estimation of nonlinear models Author : A. Ronald Gallant, arg@ccvr1.cc.ncsu.edu Comments : nonlinear maximisation, estimation, includes a real matrix class Version : January 1991 Name : nonlinear Where : in pub/inls-ucsd on inls.ucsd.edu Language : various Description : archive of programs in nonlinear dynamics, signal processing Author : various, contact person is mbk@lyapunov.ucsd.edu (Matt Kennel) Name : plplot4p99i.zip or plplot4p99i.tar.gz Authors : Maurice LeBrun and Geoff Furnish Description : scientific plotting package and Tk plotting widget Systems : Unix, VMS, MSDOS, Amiga. Wide variety of output drivers. Where : dino.ph.utexas.edu in /plplot Language : Fortran, C, C++, Tcl Version : 4.99i (beta) Comments : Wide range of plot types including line (linear, log), contour, 3D, fill, etc. Approx 1000 characters (including Greek and mathematical) in extended font set (Hershey). Strong X-windows support, with Tk plotting widget that supports zoom, pan, dump to file or printer, page layout, etc. Distributed rendering supported. Date : 6 Sep 1994 Name : Project Northstar Where : northstarftp.dartmouth.edu (129.170.24.135). Description : courseware supporting mathematics and engineering classes Systems : Unix, known to work on IBM,HP,Sun,DEC,Convex. Comments : Not free, but freely available for .edu use. Name : QMG Author : S. Vavasis, Cornell, vavasis@parc.xerox.com Description : Unstructured finite element mesh generation for 3D polyhedral objects with complicated geometry Systems : Sun/SunOS 4.1, Sun/Solaris, IBM RS6000/AIX, HP9000s800/HP-UX Where : http://www.cs.cornell.edu/Info/People/vavasis/qmg-home.html Language : C++ Version : 1.0 Date : 9 May 95 Name : nrutil Where : ftp://swarm.wustl.edu/pub/nrutil/nrutil.tar.gz Description : Appendix B of Numerical Recipes 2nd ed, a group of vector/matrix initialisation function which NR has standardised on. Author : Numerical Recipes is by William Press et al. This package is maintained by James C. Hu, jxh@cs.wustl.edu. Version : 1 August 1994 Comments : Note this is public domain, while none of the other NR source is. Name : nurbs.tar.Z Where : in /pub/misc/unix/nurbs/nurbs.tar.Z on unix.hensa.ac.uk Author : W. T. Hewitt et.al. Description : Data structures and procedures for creation and manipulation of B-Spline curves and surfaces. Name : ObjectProDSP Authors : Mountain Math Software Contact Paul Budnik, support@mtnmath.com P. O. Box 2124, Saratoga, CA 95070 (408) 353-3989 Description : Tool for DSP and object framework for interactive science and engineering applications. Systems : Linux binaries available, you can build on any Unix+X. Where : pub/linux/packages/dsp on tsx-11.mit.edu pub/Linux/devel/opd on sunsite.unc.edu Language : C++ Version : Beta 0.1, but likely to be more stable than your usual beta 0.1 product. Comments : Released under GPL. Copious documentation. Date : 1 October 1994. Name : Octave Where : ftp.che.utexas.edu:/pub/octave/octave-M.N.tar.gz. Binaries for some systems are also available. Systems : Compiles and runs on SPARC, RS/6000, DEC/Ultrix, i386/Linux, and probably most Unix systems that have a working port of g++ and libg++. A port to OS/2 and DOS is mostly working but not quite ready for release yet. Language : C/C++/Fortran Author : John W. Eaton Version : 1.1, Mon Jan 23 10:16:43 GMT+0530 1995 Description : Matlab-like interactive system for numerical computations Comments : Includes C++ classes for matrix manipulation, numerical integration, and the solution of systems of nonlinear equations, ODEs and DAEs. Distributed under the GPL. 230 page texinfo manual. 2d and 3d plotting using gnuplot. Name : ols Where : ftp.uu.net in usenet/comp.sources.reviewed/volume01/ols Systems : almost anything, but it's most useful under Unix Description : A small linear regression package dressed as a Unix tool Author : Ajay Shah, ajayshah@cmie.ernet.in Version : v1.00, late 1991 Name : opbdp Where : ftp://ftp.mpi-sb.mpg.de/pub/guide/staff/barth/opbdp/ http://www.mpi-sb.mpg.de/~barth Systems : Unix Language : C++ (needs a compiler that supports templates) Author : Peter Barth (barth@mpi-sb.mpg.de) Version : 1.0 #0 (29.5.95) Description : An implicit enumeration algorithm for solving linear 0-1 optimization problems. A bunch of heuristics for selecting a branching literal. Several preprocessing techniques (coefficient reduction, fixing, equation detection). Preprocessed problem can written to a file readable for CPLEX and lp_solve. Comments : Technical report included. If your favorite linear-programming based solver fails on your problem you might give opbdp a chance. Name : p-wavelets.tar.Z Where : ftp://pandemonium.physics.missouri.edu/pub/wavelets : http://theory.physics.missouri.edu Author : Eric L. Veum (veum@pandemonium.physics.missouri.edu) Language : ANSI C Systems : Unix, with X-windows Version : March, 1995 Description : Compactly Supported Wavelets Transform/Inverse Transform Comments : Transform and inverse transform for compactly supported wavelets with variable scaling factors, of which the special case of 2 are the Daubechies wavelets. Generates phase space time-frequency 3-D graphics if desired. Name : pdes (sortof) Where : pub/pdetools at info.mcs.anl.gov Description : extensive collection of C for linear and nonlinear systems, derived principally from pdes. Name : p4.tar.Z Where : pub/p4 on info.mcs.anl.gov Description : a library for writing parallel programs for shared-memory or message-passing. It will work on a network of workstations or on parallel hardware. Author : lusk@mcs.anl.gov Version : July 28, 1992 Name : paranoia Where : research.att.com in dist; check netlib/paranoia too Systems : Unix Description : exercise the edges of your floating point implementation Comments : also see `ieeetest' in this file. Name : Pari/GP Where : ftp://megrez.math.u-bordeaux.fr/pub/pari/pari-1.39a.tar.gz Also at math.ucla.edu Description : PARI/GP is a package which is aimed at efficient computations in number theory, but also contains a large number of functions unrelated to number theory. It is somewhat related to a Computer Algebra System, but is not really one since it treats symbolic expressions as mathematical entities such as polynomials, series, matrices, etc..., and not as expressions per se. However it is often much faster than other CAS, and contains a huge number of specific functions not found elsewhere, essentially for use in number theory. In particular, and especially so in the present release, there is a very large package for working in general algebraic number fields. Systems : Binaries available for SPARC v7, v8, DEC Alpha, HP-PA. In the future, Mac (68k and powerPC). Intel hardware may have unsupported versions. Version : 1.39a, 19 January 1995 Author : pari@math.u-bordeaux.fr Name : pca Where : in multi on Statlib Description : principal component analysis Name : perlman.Z Where : in a on Netlib Description : normal, chi-squared and F distributions Author : Gary Perlman Name : piecewise.tar.Z (68025 bytes) Where : pub/math on monster.resmel.bhp.com.au (134.18.3.1) Language : C Systems : Unix (DOS if getopt available) Description : Piecewise finds a piecewise linear approximation to a 1D function. The program provides two methods to find the approximating segments, both satisfying an L infinity error norm and both SUB-OPTIMAL. The user specifies the tabulated function values and an error bound and the program returns the endpoints of the line segments that approximate the function. The operation is fast (essentially a single pass through the data) and works reasonably well on data with low noise. If the noise level is too high an alternative approach using smoothing splines should be used. Author : Original algorithms by Ivan Tomek and F. Gritzali & G.Papakonstantinou Port to C and packaging by Tim Monks (tim@resmel.bhp.com.au) Version : 3 March 1991 Comments : keywords linear splines Name : pierreQP.tar.Z (17680 bytes) Where : in pub/C-numanal on usc.edu Author : Pierre Asselin, pa@verano.sba.ca.us Description : Extremely good package for calculation of gaussian quadrature rules Comments : numerical integration Name : polyfit.tar.Z Description : fit polynomials to data Where : in ftp-raimund/pub/src/Math on nestroy.wu-wien.ac.at (137.208.3.4) Author : Ted Stefanik, ted@adelie.Adelie.COM Version : 8 August 1989 Name : praxis Where : in math on Simtel Description : derivative-free maximisation Version : July 1987 Name : presto Where : pub/presto1.0.tar.Z on cs.washington.edu Language : C++ Systems : Unix-like OS on (moderate) multiprocessor machines Description : C++ routines for fine-grained parallel programming (lightweight threads) on multiprocessors. Tuned for the Sequent machines, but highly adaptable and customizable. Author : Brian N. Bershad, Edward D. Lazowska, Henry M. Levy Version : Version 1.0 is an optimized version by John E. Faust. (All above are from U. Washington, Seattle) Comments : Presto was the subject of a number of research papers in multiprocessor OS. Version 1.0 looks usable (ie not experimental anymore). Name : proj-4.?.tar.Z Authors : Gerald I. Evenden (gie@charon.er.usgs.gov) Description : Unix tool for cartographic projection and unprojection Where : in pub on charon.er.usgs.gov Language : ANSI and POSIX C Comments : has beautiful (TeX) manual in postscript form Name : psuedo.asc Where : inside ddj9105.zip in published/dr-dobbs on ftp.uu.net Description : implements R250 random number generator, from S. Kirkpatrick and E. Stoll, Journal of Computational Physics, 40, p. 517 (1981). Author : W. L. Maier Name : Radix-2 FFT Authors : oleg@ponder.csci.unt.edu, oleg@unt.edu Description : Radix-2 DFT of a real or complex sequence, or sin/cos/complex Fourier integral of an evenly tabulated function. Systems : Unix/Mac Where : netlib (ftp://netlib.att.com/netlib/c++/fft.shar.Z) Language : C++ (gcc 2.5.8) Version : 1.0 Comments : The input can be either real or complex with/without zero padding, the full complex transform or only real/im/abs_value part of it can be obtained. Test drivers and test run outputs are included, too. Commented. Needs LinAlg.shar Date : May 27, 1992 Name : random Where : bsd-sources/src/lib/libc/gen on gatekeeper.dec.com Description : the BSD C library random number generator Name : random-c Where : in c on Simtel Description : portable, good random number generator Name : range.tar.Z (191867 bytes) Where : in pub/range on math.tamu.edu Description : C++ class for interval arithmetic. Associated with article in TOMS, Dec 1992 title "Precise computation using range arithmetic, via C++" Author : Oliver Aberth and Mark J. Schaefer Version : Dec 1992 (?) Name : ranpm Where : in prog/libraries on ftp.inria.fr (128.93.1.26) also in volume5 of comp.sources.misc in "random" Description : the Park-Miller "minimal standard" random-number generator Author : Ajay Shah, ajayshah@cmie.ernet.in Version : February 1992 Comments : there are several other independent implementations, all are quite alike Name : ranlib-c Where : pub/unix/ranlib.c-1.1-tar.Z on odin.mda.uth.tmc.edu Description : large library for random variate generation from many univariate and multivariate distributions Author : Barry Brown, bwb@odin.mda.uth.tmc.edu Version : v1.1, 24 Mar 1994 Name : rktec.c.Z (20870 bytes) Where : in misc on netlib, or pub/papers/Hosea on math.niu.edu Description : computing truncation error coefficients of Albrecht's error expansion for Runge-Kutta formulas. Version 2.1 adds a radial stability region "plotter". Author : Mike Hosea (mhosea@math.niu.edu) Version : v2.1, 5 June 1994 Comments : The niu site also has some techreports. Name : rlab Where : ftp://evans.ee.adfa.oz.au/pub/RLaB also ftp://csi.jpl.nasa.gov/pub/matlab/RLaB Files 702 kb rlab-1.19a.tar.gz 384 kb rlap-2.0.tar.gz 74 kb rblas-1.1.tar.gz 30 kb rfft-1.2.tar.gz 31 kb rnlib-1.1.tar.gz Systems : Compiles and runs on Sun4, RS/6000, DEC/Ultrix, SysV/R4 i386, Linux, HP-UX, SGI. Broadly, should work on any Unix. Language : C + Fortran Author : Ian Searle (ians@eskimo.com) Version : 1.18d, 16-Mar-95 Description : Matrix oriented, interactive programing environment. Rlab is _not_ a clone of languages such as those used by tools like MATLAB or matrix_X/Xmath. However, as Rlab focuses on creating a good experimental environment (or laboratory) in which to do matrix math, it can be called "MATLAB-like" since its programming language possesses similar operators and concepts. Extensive use has been made of the LAPACK, FFTPACK and RANLIB sources available from netlib. Comments : Includes online help and LaTeX manual. There is a mailing list. The distribution is under GPL Name : robot Description : a scientific graph plotting and data analysis package. Works for Xview v3, and knows to generates postscript. Where : in pub/astrod on ftp.astro.psu.edu (128.118.147.28) Version : v0.46, 7 Feb 1993 Author : Robin Corbet (corbet@astro.psu.edu) Name : rpart (113799 bytes) Where : in general on Statlib Description : Routines for recursive partitioning Author : Terry Therneau, therneau@mayo.edu Version : 9 July 1993 Name : sa.tar.gz (30473 bytes) Where : in pub/C-numanal on usc.edu Description : library for simulated annealing Language : versions for C, C++ and Ada exist. Works with g++ 2.4.2. Author : Skip Carter (skip@taygeta.oc.nps.navy.mil) Version : 3 July 1993 Name : sabre.tar.Z (813499 bytes) Where : in pub on athena.erc.msstate.edu Description : (not clear) a linear/nonlinear simulation system Comments : the `portable math library' directory is definitely very useful (5k lines). I noticed some interesting interpolation, integration, banded LU decomposition, nonlinear solver, etc. Author : ? Version : ? Name : Scilab Authors : scilab@inria.fr Description : Matrix--based scientific computation Systems : Sun, RS6000, HP9000, Mips, Alpha, i386 (Linux) Requires X. Where : ftp.inria.fr (192.93.2.54) in INRIA/Projects/Meta2/Scilab Language : ? Version : 2.1 Comments : Resembles Matlab and Xmath. Has hundreds of builtin mathematical functions, sophisticated data structures, a high--level interpreter, a macro language, and excellent graphics. C and fortran functions can be added as new functions. Comes with toolboxes for control and signal processing, and for analysis of graphs and optimisation of utility networks. Date : 8 March 1995 Name : sdeint.tar.z Where : in pub/C-numanal on usc.edu Systems : Unix, MS-DOS Language : C++ Description : A Runge-Kutta like class for integrating systems of Stochastic Differential Equations Author : Skip Carter, skip@taygeta.oc.nps.navy.mil Version : v1.9 4 May 1993 Name : sga-c Authors : David Goldberg Description : C source for simple genetic algorithm Where : ftp://ftp.dcs.warwick.ac.uk/pub/mirrors/EC/GA/src/sga-c.tar.gz Name : sge.shar Where : in c on Netlib Description : Linpack functions geco, gefa, gesl and a little of BLAS; nonstandard matrices Author : Mark K. Seager, seager@lll-crg.llnl.gov Version : April 88 Name : SGPC Description : Simple Genetic Programming in C Author : Walter Alden Tackett (tackett@ipld01.hac.com) Where : in the pub/Users/tackett on sfi.santafe.edu Version : 28 May 1993 Comments : genetic algorithms, nonlinear maximisation Name : SIMATH Author : SIMATH-Gruppe, Saarbruecken, Germany Systems : Unix Where : via anonymous ftp: ftp.math.uni-sb.de (134.96.32.23), ftp.math.orst.edu (128.193.80.160) in pub/simath Version : 3.6.1 Description : SIMATH contains a lot of C-functions over algebraic structures as arbitrary long integers, rational numbers, polynomials, Galois fields, matrices, elliptic curves, algebraic number fields, modular integers, etc. There is also an interactive calculator (simath) which uses the C-libraries of SIMATH. Comments : version 3.6.1 contains a handbook written in English. The SIMATH package also includes a user interface, which makes it possible to use the on-line documentation of the functions and the keyword index. It is free, but you have to first register, in order to get a "license" file without which it won't compile. Name : simlab Authors : ? Description : circuit simulation environment Systems : Unix, optimised version for connection machine exists. Where : rle-vlsi.mit.edu:/pub/simlab Language : C Name : simpack-2.1.tar.Z (287965 bytes), simpack-2.1++.tar.Z (82683 bytes) Author : Paul A. Fishwick, fishwick@cis.ufl.edu Description : tools for writing simulations with a EECS bias Where : pub/simdigest/tools on bikini.cis.ufl.edu, also see tr92-022.ps.Z from cis/tech-reports/tr92 Language : C and C++ versions exist Version : v2.0, June 1992 Name : smirnov.shar.Z (3599 bytes) Author : David Rapoport (actize@cea.berkeley.edu) Version : 22 February 1993 Description : Kolmogorov Smirnov two-sample statistic Where : in pub/C-numanal on usc.edu Name : SMMS (Sparse Matrix Manipulation System) Description : A collection of about 80 commands to do almost anything you wish to do with sparse matrices VERY EASILY. It is designed as an instructional and prototyping tool, not for "production" work. Where : /pub/smms93/* on eceserv0.ece.wisc.edu Systems : Any Unix system with X-windows, but tested only on Sun, HP and DEC. Also works under DOS Language : Mostly C (any version). One or two routines in Fortran Author : Fernando Alvarado (alvarado@engr.wisc.edu) Version : Release 2 May 1993 Comments : Includes online help for every command and LaTeX and PostScript versions a manual. Expandable by the user. Release 2 handles complex sparse matrices, interval matrices, blocked matrices adn symbolic matrices. Visualization tools. Interfaces to Harwell routines and Boeing-Harwell sparse matrix data. Name : smooth.tar.Z Description : Unix tool for smoothing Where : in ftp-raimund/pub/src/Math on nestroy.wu-wien.ac.at (137.208.3.4) Author : Bill Davidsen (davisen@crd.ge.com) Version : v1.9, 15 Aug 1989 Name : smoothwb (209947 bytes) Authors : Lise Manchester (lise@cs.dal.ca) David Trueman (david@cs.dal.ca) Description : Smoothing Workbench Systems : Unix + Xview (e.g. SunOS, Linux) Where : in general on statlib Language : C (2613 lines) and fortran (1458 lines) Comments : interactive program for exploring smoothing methods Includes postscript documentation. Date : 28 June 1993 Name : SPARSE Where : in sparse on Netlib Description : library for LU factorisation for large sparse matrices Author : Ken Kundert, Alberto Sangiovanni-Vincentelli, sparse@ic.berkeley.edu Name : spline29.zip Where : in mirrors/msdos/c on wuarchive.wustl.edu Description : Interpolation using splines under tension, dressed up as a Unix tool Author : James. R. Van Zandt Version : v2.9, 21 Nov 1992 Name : |STAT Where : in pub/stat on archive.cis.ohio-state.edu (128.146.8.52) Description : collection of around 30 Unix tools for statistical analysis Author : Gary Perlman (perlman@cis.ohio-state.edu) Version : 5.4, 27 May 1993 Systems : Unix, MS-DOS Comments : Has been in use for 13 years. There is a troff|ps manual and man pages. Explicitly designed to work with Unix philosophy. The file stat.tar.Z.crypt.uu is ENCRYPTED; you have to send email asking for the password. There is a handbook available. Name : submit1 Where : in jcgs on Statlib Description : damped convex minorant algorithm Author : David Eberly, eberly@cs.unc.edu Version : May 1992 Name : surf Authors : Weimin Zhao, wzhao@Nimitz.mcs.kent.edu Description : Xlib program to debug, monitor, control largescale numerical simulations (in either fortran or C). Does realtime 3d display. Systems : Aix, HP-UX, Linux. Where : sunsite.unc.edu, pub/Linux/Incoming Version : 1.0, 12 May 1994 Name : SVDPACKC.tar.Z Where : in pub/berry on cs.utk.edu Systems : Sun, IBM RS/6000, HP9000, DECstation, Macintosh II/fx, Cray Y-MP Language : C Description : an ANSI-C library for the singular value decomposition : of large sparse matrices. Lanczos- and subspace iteraton- : based methods are used to iteratively compute several : of the largest (or smallest) singular values and corres- : ponding singular vectors. Sample UNIX C-SHELL scripts : are provided for automatic compiling and testing of the : library routines. Cray Y-MP compatible routines provided. Author : Michael W. Berry (berry@cs.utk.edu) Version : 1.0, June 1993 Name : svd.c.Z (8704 bytes) Where : in pub/C-numanal on usc.edu Description : SVD based on pascal from J. C. Nash book Author : Bryant Marks (bryant@sioux.stanford.edu) Brian Collett (bcollett@hamilton.edu) Version : 14 April 1993 Name : taranto-1.0.shar.Z Where : in prog/libraries on ftp.inria.fr (128.93.1.26) Description : portable, accurate FP to decimal conversion. Name : totinfo Where : in volume7 of comp.sources.misc Description : info statistic and chi-square for 2-D contingency tables Date : August 1989 Name : Tela Authors : Description : Tensor Language Systems : Unix (SGI, Linux, Aix, Sun) Where : ftp.funet.fi:pub/sci/math/tela/ Language : Version : 1.21, 24 Feb 1995 Comments : Includes a C translation of FFTPACK, 20-page user manual, FAQ, graphics examples, etc. See http://www.geo.fmi.fi/prog/tela.html Email addresses are tela-bugs@fmi.fi and tela-suggestions@fmi.fi Name : Tensor.tar.Z Authors : E. Robert Tisdale, edwin@maui.cs.ucla.edu Description : Experimental Tensor Class Systems : Solaris Where : ftp://pink.cs.ucla.edu/pub/Tensor.tar.Z pink.cs.ucla.edu is 131.179.64.80 Language : Gnu C++ 2.6.2 Date : Thu Jan 12 18:10:53 GMT+0530 1995 Name : tsp Where : ftp://ftp.alumni.caltech.edu/pub/dank/tsp.c Systems : Any C environment Description : Simple heuristic Travelling Salesman Problem solver Author : Dan Kegel - from "Discrete Optimization Algorithms," Maciej Syslo Version : 1.1 Name : tsp_solve Where : e-mail request to churritz@crash.cts.com Systems : Borland, sco and Sun with gcc Language : C++ Authors : Chad Hurwitz (churritz@crash.cts.com) Robert.J.Craig (kat3@uscbu.ih.att.com) and anyone else who'd like to test their own TSP tour finder's performance Version : 1.0beta Description : Finds Optimal and Heuristic Solutions to many types of Traveling Salesman Problems (TSP). Comments : tsp_solve finds optimal solutions to geometric TSPs with 100 cities in about an hour (don't go to lenscrafters for this one.) It will soon have an asymmetric TSP optimal solution finder that will perform at approximately the same level. Name : using-lapack.Z (8478 bytes) Where : pub/C-numanal on usc.edu Description : Notes on using Lapack through f2c. Author : S. Sullivan (sullivan@mathcom.com) Version : 14 April 1993 Name : vis5d Where : vis5d.ssec.wisc.edu (128.104.231.66) Systems : SGI, Stardent, IBM PC Language : C, Fortran Authors : Brian Paul (bpaul@vms.macc.wisc.edu) and Bill Hibbard Version : 3.0 (soon to be 3.1) Description : visualizing/animating data made by numerical weather models and similar sources Comments : vis5d interactively provides 3-D isosurfaces, vector-field slices, horizontal and vertical contour and colored slices, and ribbon "particle" trajectories (integral curves) Name : vregion Authors : Seth Teller, seth@tachyon.princeton.edu Description : Computes the voronoi diagram, delaunay triangulation, and convex hull of a two-dimensional point set. It's based on Steve Fortune's algorithm, and partially on his implementation. Systems : Unix Where : comp.sources.misc, volume 41, issue 30 Language : C Date : 14 December 1993 Name : vspline Where : in gcv on Netlib Description : non-parametric estimate of a smooth vector-valued function from noisy data Author : Jeff Fessler Comments : splines Name : wavethresh (wavelet.shar) Where : in directory S on Statlib, and anonymous ftp from gdr.bath.ac.uk, in directory pub/masgpn Language : C (and S functions) Author : Guy Nason (gpn@maths.bath.ac.uk) Version : 2.1 (March 26 1993) Description : wavelet transform & thresholding software in C for linking into S. Comments : Performs 1- and 2-D discrete wavelet transforms using Daubechie's wavelets. Also performs thresholding according to Donoho and Johnstone. Name : weisfeld-simplex.shar (7457 bytes) Where : pub/C-numanal on usc.edu Description : small implementation of simplex method for linear programming. Author : Matt Weisfeld (not on Internet) Version : Feb 1993 Comments : associated with article in Feb 1993 CUJ. For production use (where you want a black-box solver), the `lpsolve' package (above) is better. If you want to open up a simplex implementation and modify it, then this is quite good, using the article as documentation. Name : xgobi Where : in general on Statlib Systems : Unix, needs X Windows Description : a data analysis package emphasising graphical data exploration Author : Debby Swayne, dfs@bellcore.com Dianne Cook, dcook@fisher.rutgers.edu Andreas Buja, andreas@bellcore.com Date : 23 March 1993 Comments : EDA Name : XLispStat Where : pub/xlispstat on umnstat.stat.umn.edu Systems : Unix, Macintosh, MSW Description : a statistical package Author : Luke Tierney, luke%umnstat@umn-cs.cs.umn.edu Version : Comments : object-oriented, EDA, graphics, lisp Name : xtrap.c.Z (4463 bytes) Author : Bryan M. Gorman, gorman@scri.fsu.edu Version : 28 July 1992 Description : extrapolation program. Supports 6 algorithms: VBS approximants, Aitken delta-squared, Wynn epsilon algo, Wynn rho algo, Brezenski theta algo, Levin u-transform. Is dressed up as a Unix tool. Where : pub/C-numanal on usc.edu Name : xvgr/xmgr (open look or motif versions) Where : /CCALMR/pub/acegr on amb4.ccalmr.ogi.edu Systems : Unix, with either open look or motif Description : graphics for EDA Author : Paul J. Turner, pturner@amb4.ccalmr.ogi.edu Version : 2.10, 2 May 1993 3.01 (Motif only), 17 August 1994. Comments : Linux and SunOS 4.1.3 binaries are in bin directory Name: Yorick Author: David Munro - Lawrence Livermore National Laboratory munro@icf.llnl.gov Version: 1.1 Date: 18 May 1995 Description: Yorick is a very fast interpreted language designed for scientific computing and numerical analysis. The syntax is similar to C, but without declarative statements. Operations between arrays yield array results, and Yorick provides a very rich selection of multi-dimensional array indexing operations. Yorick also features a binary I/O package which automatically translates floating point and integer representations on the machine where it is running to and from the format of any other machine. Thus, you can easily share binary files between, for example, Cray YMPs and DEC alphas, or "teach" Yorick to read existing binary databases. Yorick also offers an interactive graphics package based on X windows. X-Y plots, quadrilateral meshes, filled meshes, cell arrays, and contours are supported. Finally, you can embed compiled routines in custom versions of Yorick to solve problems for which the interpreter is too slow. The primary use of Yorick to date has been as a pre- and post-processor for large physical simulation programs. A binary distribution for Linux is available at sunsite. Freely Redistributable Language: ANSI C (some support for Fortran customization) Keywords: interpreter, language, interactive graphics, data analysis, post-processing Where: ftp-icf.llnl.gov /pub/Yorick 1.4 MB yorick-1.1.tar.gz or wuarchive.wustl.edu /languages/yorick Systems: Sun SPARC (SunOS or Solaris), HP PA-RISC (HPUX), IBM RS/6000 (AIX), DEC alpha, SGI (IRIX), Cray YMP (UNICOS), Ix86 (Linux) Requires ANSI C compiler. Interactive graphics requires X window system. Tested on Sun (SunOS and Solaris), HP PA-RISC, IBM RS/6000, DEC alpha, SGI, Cray YMP, and Linux; should not be difficult to build on other UNIX machines. f2c --- In case you had not already noticed it: a public domain, industrial strength, fortran-to-C translator named f2c exists. It has one great strength and one great weakness: "It is a true compiler". Thus the code generated always "works", at the price of frequently looking like fortran. A lot of useful fortran libraries can readily be turned into working C using f2c, and the resulting C can often be made almost human after some hand-editing. The weakest link of f2c is code which involves matrices. A pointer to f2c is at EOF. f2c is also inside Netlib, so you are probably better off figuring out how to use Netlib. Other pointers -------------- There is a lot of interesting C source in these fields which I know nothing about: - signal processing - pattern recognition, neural networks The comp.dsp FAQ has some pointers to source code. Please send me complete entries to include in the above index. A lot of 3rd party source code which hooks into the S statistical package uses computational engines written in C. With a little work you can extract useful source from this. Look in the S directory on Statlib for more pointers. If you find something which is remarkably useful and easy to extract, please tell me about it. The same phenomenon operates to some extent for the XLispStat package. Look around on the umnstat.stat.umn.edu site. Interesting sites ----------------- If you don't have ftp access, send email to ftpmail@decwrl.dec.com saying "help". You will get instructions on how to do ftp via email. Juhana Kouhia (jk87377@cs.tut.fi) has setup a very nice service: Everything in this index (except for what is on {net,stat}lib) is mirrored in pub/sci/math/numcomp-free-c on nic.funet.fi Note: this site is in finland. If you are in the US, please try to find a site closer to you. source-code newsgroups: ftp.uu.net (e.g. usenet/comp.sources.reviewed archives the comp.sources.reviewed newsgroup). f2c: netlib/f2c on netlib.att.com pub/gnu on prep.ai.mit.edu Netlib: netlib.att.com email, ftp ornl.gov email, xnetlib nac.no email, xnetlib for Europe (e.g. send email to netlib@ornl.gov to access by email) unix.hensa.ac.uk is a mail server useful for Europe. ci.cs.uow.edu.au (130.130.64.3) in Australia Statlib: lib.stat.cmu.edu (as statlib) dmssyd.syd.dms.csiro.au (130.155.96.1) others: qiclab.scn.rain.com has a small collection in pub/math, including fft stuff not listed above. elib.ZIB-Berlin.de is quite interesting too. Credits ------- The following people helped me put this index together: Bardo Muller bardo@gonzales.ief-paris-sud.fr David E. Stewart des@thrain.anu.edu.au Skip Carter skip@taygeta.oc.nps.navy.mil http://taygeta.oc.nps.navy.mil/skips_home.html John Gregory jwg@db.cray.com John Eaton jwe@che.utexas.edu P. G. Hamer P.G.Hamer@bnr.co.uk Alan Magnuson awm@osc.edu David Rapoport actize@garnet.berkeley.edu Peter Fraenkel pnf@pwcm.com Martin-D. Lacasse isaac@physics.mcgill.ca Matthew Koebbe phaedrus@alioth.cc.nps.navy.mil Nicolas Ratier ratier@laas.laas.fr Henri Cohen cohen@merak.greco-prog.fr Bill Hutchison bhutchi@godiva.ssw.com Ronald F. Guilmette segfault!rfg@netcom.com Jay Han han@corto.inria.fr Van Snyder vsnyder@math.Jpl.Nasa.Gov Alan Cabrera adc@tardis.cl.msu.edu Vincent Broman broman@peanuts.nosc.mil Piercarlo Grandi pcg@aberystwyth.ac.uk Abed Hammoud abed@saturn.wustl.edu Richard A. O'Keefe ok@goanna.cs.rmit.OZ.AU Fumiaki Kamiya kamiya@slinky.cs.nyu.edu Keith Briggs Keith.Briggs@physics.uwa.edu.au Brian Glendenning bglenden@colobus.CV.NRAO.EDU Bill Gropp gropp@mcs.anl.gov Emmett McLean emclean@sfsuvax1.sfsu.edu Wenfu Ku wk02@lehigh.edu Adrian Ireland aireland@hsc.usc.edu Alexander Frink FRINK@MZDMZA.ZDV.UNI-MAINZ.DE Douglas N Arnold dna@math.psu.edu Jens Ehlers je@ganymed.mt2.tu-harburg.de Bruce Haggerty haggerty@acf2.NYU.EDU Peter Espen espen@math.unm.edu M J Olesen olesen@weber.me.queensu.ca Vincent Broman broman@nosc.mil Of course, we owe infinite gratitude to the authors themselves, for making their work available in the public domain.