Path: senator-bedfellow.mit.edu!enterpoop.mit.edu!usc!usc!not-for-mail From: ajayshah@rcf.usc.edu Newsgroups: comp.lang.c,comp.lang.c++,sci.math.num-analysis,sci.comp-aided Subject: Part 2 of 2: Free C,C++ for numerical computation Followup-To: sci.math.num-analysis Date: 30 Jun 1993 00:03:04 -0700 Organization: University of Southern California, Los Angeles, CA, US Lines: 748 Sender: ajayshah@almaak.usc.edu Distribution: world Message-ID: <20rdr8$jut@almaak.usc.edu> Reply-To: ajayshah@rcf.usc.edu NNTP-Posting-Host: almaak.usc.edu Keywords: source code, numerical statistical scientific computation Xref: senator-bedfellow.mit.edu comp.lang.c:73187 comp.lang.c++:46268 sci.math.num-analysis:8940 sci.comp-aided:368 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 : newmat Where : volume34, issue 107 of comp.sources.misc Language : C++ Systems : Unix (g++ 2.3.3 ok), MS-DOS (Borland C++) Description : a very thorough matrix class Author : Robert Davies (robertd@kauri.vuw.ac.nz) Version : v7, 11 Jan 1993 Name : nlmdl Where : in pub/arg/nlmdl at ccvr1.cc.ncsu.edu (128.109.212.20) 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 lyapunov.ucsd.edu (132.239.86.10) Language : various Description : archive of programs in nonlinear dynamics, signal processing Author : various, contact person is mbk@lyapunov.ucsd.edu (Matt Kennel) Name : nrutil Where : pub/incoming/nrutil.shar.Z on hilbert.math.ksu.edu or usenet/alt.sources/articles/6772.Z on wuarchive.wustl.edu 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, posted on alt.sources by James C. Hu (jxh@math.ksu.edu) Version : 8 Dec 1992 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 : Octave Where : ftp.che.utexas.edu:/pub/octave/octave-M.N.tar.Z Systems : Compiles and runs on SPARC, RS/6000, DEC/Ultrix, i386/Linux Language : C/C++/Fortran Author : John W. Eaton Version : 0.72, 11 June 1993 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. 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@rcf.usc.edu Version : v1.00, late 1991 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 : math.ucla.edu, ftp.infia.fr, other sites Description : mainly oriented towards number theory, can and is used for numerical computation. Contains arbitrary precision code for all elementary transcendental functions, many higher ones, numerical integration and summation, etc. Systems : all 32 bit OS. Name : pca Where : in multi on Statlib Description : principal component analysis Name : perlman Where : in misc 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 : pinv Where : in dhlib on elib.ZIB-Berlin.de Description : cholesky decomp. for possibly rank-deficient PD matrices, householder 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 : 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 : 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 nuri.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@rcf.usc.edu Version : February 1992 Comments : there are several other independent implementations, all are quite alike Name : ranlib-c Where : pub/unix on odin.mda.uth.tmc.edu or in general on Statlib Description : large library for random variate generation from many univariate and multivariate distributions Author : Barry Brown, bwb@odin.mda.uth.tmc.edu Version : 16 Jan 1992 Name : rktec.c.Z (20870 bytes) Where : in misc on netlib Description : computes the truncation error coefficients, tecs, of a Runge-Kutta formula, or a pair of formulas, specified in an input file. Author : Mike Hosea (mhosea@sun.cis.smu.edu) Version : v1.1, Dec 4 1992 Name : rlab Where : /pub/alpha/RLaB/rlab-0.50.tar.Z on evans.ee.adfa.oz.au Systems : Compiles and runs on Sun4, RS/6000, DEC/Ultrix, SysV/R4 i386, Linux, HP-UX, SGI Language : C + Fortran Author : Ian Searle (ians@eskimo.com) Version : v0.83, 4 June 1993 Description : "Matlab-like" interactive programming environment for numerical computations. Comments : Includes online help and LaTeX manual. 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 Where : in general on Statlib Description : Routines for recursive partitioning Author : Terry Therneau, therneau@mayo.edu Version : Feb 1991 Name : sa.zoo (40682 bytes) Where : in pub/C-numanal on usc.edu Description : library for simulated annealing Language : versions for C, C++ and Ada exist. Author : Skip Carter (skip@taygeta.oc.nps.navy.mil) Version : Tue Nov 10 12:00:42 PST 1992 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 : 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 : 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 : simpack 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 : 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. Name : submit1 Where : in jcgs on Statlib Description : damped convex minorant algorithm Author : David Eberly, eberly@cs.unc.edu Version : May 1992 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 nuri.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 : tsp Where : pub/dank/tsp.zip at punisher.caltech.edu Systems : Any C environment Description : Simple heuristic Travelling Salesman Problem solver Author : Dan Kegel - from "Discrete Optimization Algorithms," Maciej Syslo Version : 1.1 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 : 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 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: dist/f2c on research.att.com pub/gnu on prep.ai.mit.edu Netlib: research.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. Books ----- Name : C Mathematical Function Handbook Author : Louis Baker Language : C and C++ Version : 757 pages, soft, including floppy, McGraw Hill, 1992, $50 Description : Code implementing the algorithms and formulas in Abramovitz and Stegun, with several chapters added. It will save you a lot of time as compared with writing code out of A&S. 95% of the pages in the book are merely the source code, without even doing pretty printing. It improves on A&S in (broadly) mathematical physics. The code does not show very good C competence. The code and the book betray their development on a computer running MS-DOS. Sometimes, more-recent algorithms which improve on A&S are ignored. Name : Applied Numerical Methods in C Author : Shoichiro Nakamura Version : Prentice Hall, hardback, $48; disk+manual costs $35. 604 pages. Name : Numerical Recipes in C Author : William H. Press, Saul A. Teukolsky, William T. Vetterling and Brian P. Plannery Language : C Version : 2nd edition, 933 pages, Cambridge University Press, 1992, $50 hard, $20 for the floppy. Description : A very thorough first book on numerical computation, with accompanying source code. The methods are often not industrial-strength, and a expert on (say) linear algebra will be disappointed at the treatment of linear algebra. But to a relative novice it's easy to start using, and likely to work pretty well pretty often. Within the constraint of being accessible to a novice to numerical computation, the methods here are uptodate. The text is refreshing and a real pleasure to read. Thus, for example, even if you plan to use Linpack source code to do a SVD, it's well worth reading the text here. The authors are often opinionated in situations where the relative merits of alternative methods are not known "for sure", this gives the reader the benefit of their wisdom (in ways that experts will sometimes consider superficial). I think such editorialising is very useful to the novice, even though it is bound to be misleading at times. The typesetting is superb: it is done using TeX. The second edition has a two-tier treatment where advanced topics are in smaller type. All the source code is printed in the book, and very beautifully at that -- i.e., it's not a mere waste of paper. The floppy has examples of usage of every function; these examples are not in the book. The source code is widely used, but not as much as Linpack. Hence we often hear complaints on the net about subtle errors in their FFT and SVD functions. Presumably there are other errors too. The book exists in a fortran version too, and the development of the C version is not done independently of the fortran. Hence their C is a bit fortran-like. Their C uses base-1 arrays. This is inconsistent with C idiom and incorrect according to the ANSI C standard. It can be fixed by wasting a little memory and fixing nrutil. Perhaps the worst drawback of the source code is that it is copyrighted (unlike (say) Linpack). Thus while you can use it in your programs (after buying the floppy), you are not allowed to send a program containing this source code to anyone else. Thus when you choose to use Numerical Recipes source code for your work, you implicitly give up the right to {give your program to a colleague, or post it on the net, or sell it} without dealing with their lawyers. The file usc.edu:pub/C-numanal/nr.experiences (16158 bytes) will tell why a lot of "real numerical analysts" dislike Numerical Recipes. Name : Computing for Scientists and Engineers: A workbook for analysis, numerics and applications Author : William J. Thompson Language : C Version : 464 pages, $55, John Wiley and Sons 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 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 Of course, we owe infinite gratitude to the authors themselves, for making their work available in the public domain. -- Ajay Shah, (213)749-8133, ajayshah@rcf.usc.edu