Math 版 (精华区)

发信人: zhili (北侠), 信区: Math
标  题: FAQ: Numerical Analysis and Associated Fields Res
发信站: 紫丁香 (Sat Nov  8 15:22:05 1997)

Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!news.bu.edu!inmet!cam-news-feed2.bbnplanet.com!news.bbnplanet.com!mcelwaine.csksoftware.com!xmission!news.eli.net!news.transport.com!not-for-mail
From: sullivan@mathcom.com (Steve Sullivan)
Newsgroups: sci.math.num-analysis,sci.math.symbolic,sci.answers,news.answers
Subject: FAQ: Numerical Analysis and Associated Fields Resource Guide (1/1)
Followup-To: sci.math.num-analysis
Date: Thu, 10 Apr 1997 10:56:36 GMT
Organization: Mathcom, Inc.
Lines: 4527
Approved: news-answers-request@MIT.EDU
Message-ID: <E8F52D.7I5.0.net@indra.com>
NNTP-Posting-Host: gehenna.psgvb.com
Xref: senator-bedfellow.mit.edu sci.math.num-analysis:33673 sci.math.symbolic:25655 sci.answers:6270 news.answers:100263

Archive-name: num-analysis/faq/part1
Last-modified: 1997 April 10

q10. FAQ: Numerical Analysis & Associated Fields Resource Guide

Welcome!  My intent here is to provide reviews of software, texts,
and other resources instead of simply a listing.  My experience is
that for someone looking for a package or system, reviews by previous
users can be a lifesaver.

If you have any suggestions, comments, or contributions please send
them to me at:   sullivan@mathcom.com

Other reviews would be most welcome!  If you use a mathematical
package or set of programs and would care to write one to twenty
sentences on it, please let me know.  If you have a favorite text
or two you'd like to recommend, please let me know.

Sigh, and now the legalities ...

The information contained in this document is believed to be true,
but no guarantees of accuracy are made, and there is no liability
of any sort for any consequences of its use.

This document may be copied and/or reproduced providing that:
        * the use is for non-commercial purposes only, and
        * all copies contain this copyright notice:
        * Copyright 1995-6 S. J. Sullivan


See:
        * q20, "NA FAQ: Introduction"
        * q30, "NA FAQ: Overview of Recent Additions"
        * q40, "NA FAQ: Table of Contents"
        * q50, "NA FAQ: Acknowledgements"


Steve Sullivan
sullivan@mathcom.com

Mathcom, Inc.
8555 Hollyhock St., Lafayette, CO  80026  USA


=========================================================================


q20. NA FAQ: Introduction

Where to find this FAQ:

On the web:
http://www.indra.com/~sullivan/q10.html   Mathcom

This FAQ is usually available from MIT's rtfm and its mirrors:
ftp://rtfm.mit.edu/pub/usenet/news.answers/num-analysis/faq/part1  MIT's rtfm

If not, a compressed (with gzip) version is at:
ftp://ftp.mathcom.com/mathcom/nafaq.txt.gz  Mathcom ftp

A mirror site in Germany, courtesy of Jens Burmeister
(jb@numerik.uni-kiel.de), is:
http://www.numerik.uni-kiel.de/faqs/tda/q10.html  Mirror in Germany

Abbreviations used in this document:



NA      Numerical Analysis

###     Denotes "to be filled in later".  This is work in progress,
and probably always will be.

[]      Reviews are associated with the name of the reviewer in brackets.
Those reviews marked [SJS] are by myself.

[author]        indicates text taken from a package documentation.

10^12   10 to the power 12.  In Fortran, that's 10**12;
in C that's pow(10,12).

x(i)    the i'th element of vector x.  In C, that would be x[i].


Instead of the normal question/answer form, this FAQ is organized
as an outline ... hopefully, you'll find your questions answered here.



=========================================================================


q30. NA FAQ: Overview of Recent Additions

JAVA NUMERICS LIBRARY
JNL, a Numerical Library for Java, is a set of classes for the most
important numerical functions missing in Java.
See q115.10, "Java Numerical/Scientific Libraries"

FFT LIBRARY
FFTW is a C library for performing Discrete Fourier Transforms
in one or more dimensions.  We have performed extensive benchmarks
of the speed and accuracy of available FFT software on a variety of
platforms.  The results are available on our web page.
See q240, "Transforms (FFT, etc) and digital signal processing (DSP)"

GRAPHICS VISUALIZATION FOR PCs
Panda is an interactive graphics visualization
tool for plotting and manipulating numerical data, for Win 3.1 or Win 95.
See q285.3, "Software for Graphics and Sci Vis"


As well as numerous other updates.

=========================================================================

q40. NA FAQ: Table of Contents


        * q10, "FAQ: Numerical Analysis & Associated Fields Resource Guide"
        * q20, "NA FAQ: Introduction"
        * q30, "NA FAQ: Overview of Recent Additions"
        * q40, "NA FAQ: Table of Contents"
        * q50, "NA FAQ: Acknowledgements"
        * 
        * q105, "What is Numerical Analysis?"
        * q110, "Indices of NA Software on the Net"
        * q112, "Indices of Commercial NA Software"
        * q115, "Libraries of NA Software on the Net"
        * q120, "NA Packages on the Net"
        * q125, "Commercial NA Libraries and Packages"
        * q135, "Newsgroups for NA"
        * q140, "Professional Societies for NA"
        * q145, "Electronic Newsletters for NA"
        * q150, "Electronic Journals for NA"
        * q155, "Online Preprints for NA"
        * q160, "Miscellaneous Web Sites for NA"
        * q165, "Books, With and Without Software, for NA"

Specialized Subfields Within Numerical Analysis
        * q205, "Dense (Non-Sparse) Linear Algebra Systems"
        * q207, "Sparse Linear Algebra Systems"
        * q210, "Random Number Generators (RNGs)"
        * q215, "Function Evaluation"
        * q220, "Finding Roots"
        * q230, "Curve Fitting, Data Modelling, Interpolation, Extrapolation"
        * q240, "Transforms (FFT, etc) and digital signal processing (DSP)"
        * q245, "Wavelets"
        * q250, "Integration and Ordinary Differential Equations (ODEs)"
        * q253, "Stochastic Differential Equations"
        * q255, "N-Body and Particle Simulation"
        * q260, "Partial Differential Equations (PDEs) and Finite Element Modeling (FEM)"
        * q265, "Operations Research: Minimization, Optimization"
        * q270, "Computational Geometry"
        * q285, "Graphics and Scientific Visualization"
        * q290, "Miscellaneous NA Software"

Associated Fields
        * q505, "Probability and Statistics"
        * q510, "Chaos Theory (Nonlinear Dynamics)"
        * q520, "Symbolic Algebra"
        * q530, "Cryptography (Cryptology)"
        * q540, "Fractals"
        * q550, "Neural Networks"
        * q560, "Discrete algorithms"
        * q570, "Constraints"
        * q580, "Genetic Algorithms"
        * q590, "Simulated Annealing"

Teaching and Academic Software
        * q800, "Teaching and Academic Software"



===========================================================================


q50. NA FAQ: Acknowledgements

Many thanks to all those who've given their time and advice
in creating this FAQ, including:

   Bob Berman                   berman@FERMAT.macsyma.com
   Ronald F Boisvert            boisvert@cam.nist.gov
   Ted Brown                    tbrown@tekotago.ac.nz
   John Chandler                jpc@a.cs.okstate.edu
   Luiz Henrique de Figueiredo  lhf@csgrs6k1.uwaterloo.ca
   Bill Frensley                frensley@utdallas.edu
   Pawel Gora                   gora@if.uj.edu.pl
   Amara Graps                  agraps@netcom.com
   Vijay Gupta                  gupta@acsu.Buffalo.edu
   Doug Hart                    hart@de01.denver.waii.com
   Albert Hines                 ahines@howmet.com
   Charles Knechtel             doug@scn.org
   Zdislav V. Kovarik           kovarik@mcmail.cis.McMaster.CA
   Dave Linder                  dwl@apmaths.uwo.ca
   George Marsaglia             geo@stat.fsu.edu
   Pierre Maxted                pflm@star.maps.susx.ac.uk
   Allen Mcintosh               mcintosh@bellcore.com
   Sean O riordain              sor@inrets.fr
   Daniel Pfenniger             pfennige@scsun.unige.ch
   Daniel Pick                  pick@lune.math.tau.ac.il
   Brian Ripley                 ripley@stats.ox.ac.uk
   Ramin Samadani               ramin@leland.Stanford.EDU
   Robert Schneiders            robert@Informatik.RWTH-Aachen.DE
   Peter Somlo                  somlo@zeta.org.au
   Tim Strotman                 tim.strotman@sdrc.com
   N. Sukumar                   n-sukumar@nwu.edu
   Stephen Vavasis              vavasis@CS.Cornell.EDU
   Dave Watson                  watson@maths.uwa.edu.au

Many thanks also to the organizers of the many services
listed herein - Netlib, the NIST guide, NA-Net, CAIN, the NASA
Graphics site, and numerous other indices and informative web pages.


===========================================================================

q105. What is Numerical Analysis?

NA is the union of theoretical and computational investigation into
the computer solution of mathematical problems.  NA generally includes
those problems involving continuous functions of real or complex
variables, as opposed to solely discrete variables and functions.

The mixing of theoretical and computational concerns leads to
a strong emphasis on algorithms:  what are the time and memory
usage properties of a certain algorithm?  What errors are introduced
by an algorithm?

The compuational aspects of NA usually take place within
the scope of floating-point arithmetic, and are implemented on
machines ranging from super-computers through PCs to hand-calculators.
The theoretical aspects extend into fields such as Calculus,
Differential Equations, and Analysis.  The field of Linear Algebra
is so often used to model physical systems that the theoretical
study of Linear Algebra is in itself often considered to be
NA at work.

Primary areas of theoretical concern in NA are:
        * global/local error bounding
        * stability of algorithms
        * rates of convergence of algorithms

Primary areas of computational concern in NA are:
        * roundoff error
        * global/local error and its tolerance
        * time and memory requirements of computation
        * High Performance Computing (HPC)
        * parallel computing
        * architechture/platform specific details.


===========================================================================


q110. Indices of NA Software on the Net

For indices of packages oriented towards symbolic algebra,
see q520, "Symbolic Algebra".


The NIST Guide to Available Mathematical Software (Formerly called GAMS)

http://gams.nist.gov/  NIST Guide to Mathematical Software
or telnet to: gams.nist.gov

[SJS]:
Maintained by National Institute of Standards and Technology (NIST)
An index and server for a wide variety of mathematical
software, including most of netlib (see q115.1, "Netlib").
Much of the software is in Fortran.  If you prefer to speak C++ or C,
see q160.1, "C++ Resources", and q115.2, "Fortran, C, and f2c".

[Ronald Boisvert]:
The main focus is on fine-grained software components, e.g.
subroutines, although information about some larger packages are
included.  As of November 1995, nearly 10,000 components from more
than 90 packages have been cross-indexed using a detailed
tree-structured problem classification system.  Both freely available
software (from netlib or developed at NIST) and commercial packages
(used by NIST) are indexed, although source code is available only for
non-commercial software.

===================================

q112. Indices of Commercial NA Software

A large list of commercial NA products may be found at:
http://www.cray.com/PUBLIC/APPS/DAS/  Cray

The Directory of commercial software, by International Computer
Programs, Inc., is at:
http://www.icp.com/softinfo/  ICP

Finally, for packages oriented towards symbolic algebra,
see q520, "Symbolic Algebra".

===========================================================================

q115. Libraries of NA Software on the Net

Libraries are collections of source code, and source code packages.
Much of the code is in Fortran.  If you prefer to speak C++ or C,
see q160.1, "C++ Resources", and q115.2, "Fortran, C, and f2c".

The main library by far is q115.1, "Netlib".
For statistical software, the best resource is q115.3, "Statlib".
Other libraries are q115.4, "NCAR's Mathematical and Statistical Libraries"
and q115.5, "Hensa Unix Parallel Archive".

        * q115.1, "Netlib"
        * q115.2, "Fortran, C, and the f2c Translator"
        * q115.3, "Statlib"
        * q115.4, "NCAR's Mathematical and Statistical Libraries"
        * q115.5, "Hensa Unix Parallel Archive"
        * q115.6, "Modula-3 NA Library"
        * q115.7, "Forth Numerical/Scientific Library"
        * q115.8, "Eiffel Numerical/Scientific Library"
        * q115.9, "Lisp Numerical/Scientific Libraries"
        * q115.10, "Java Numerical/Scientific Libraries"

===========================================================================

q115.1. Netlib
NetLib is probably the world's largest repository of numerical
methods programs. It is located at Oak Ridge National Laboratory,
Knoxville, Tennessee, and at AT&T Bell Laboratories, Murray Hill, NJ.


email: send message "help" to either:
   netlib@ornl.gov
   netlib@research.att.com

http://www.netlib.org                               Netlib main
http://www.netlib.org/netlib/netlib_faq.html        Netlib FAQ
http://www.netlib.org/master/expanded_liblist.html  Netlib index
ftp://netlib.att.com/netlib                         Netlib via ftp

Netlib mirrors:

http://www.netlib.no/  Netlib in Norway
or email to: netlib@nac.no

http://www.hensa.ac.uk/ftp/mirrors/netlib/master/  Netlib in England
or email to: netlib@ukc.ac.uk

http://elib.zib.de/netlib/master/readme.html  Netlib in Germany
or:
http://elib.zib-berlin.de/netlib  Netlib in Germany
or email to: anonymous@elib.zib-berlin.de

ftp://draci.cs.uow.edu.au/netlib/  Netlib in Australia
or email to: netlib@draci.cs.uow.edu.au

Netlib in Taiwan: email only: netlib@nchc.edu.tw


Some gems of netlib:

Machine/architecture dependant Basic Linear Algebra Subroutines
(BLAS) are the keystone of Netlib.

LAPACK, in Fortran 77, is the modern replacement
of EISPACK, LINPACK, etc.

CLAPACK is a C version of LAPACK.  See the Caution on
Using Arrays in q115.2, "Fortran, C, and f2c".

LAPACK++ is a C++ version of, sadly, only a subset of LAPACK.
LAPACK++ is work in progress, and hopefully the full
functionality of LAPACK will be supported soon.

ScaLAPACK is for distributed memory machines.




===================================


q115.2. Fortran, C, and the f2c Translator

For C++ and C resources, see q160.1, "C++ Resources".

Most of the programs in netlib are in Fortran.  However, netlib
contains an excellent Fortran-to-C conversion utility, f2c.
While f2c produces working C code, it is visually complex
and ugly.  Using f2c on a large package like LAPACK can require
a good deal of time to get all the options correct.
Fortunately, LAPACK has already be converted to C: see CLAPACK.

The utility f2c can also be invoked by email.  Send email
to netlib@research.att.com, with the subject "execute f2c",
and body containing the non-confidential Fortran program to be converted.
But the email option is of use only for very small, simple programs,
since a resulting C program of any size must be linked with the
f2c libraries.  Usually one will have to download the f2c package
anyway to generate the libraries.  Generally it's easier
to download the f2c package, build the libraries and the
f2c conversion program, and do the conversion locally.

CAUTION: Programs created by f2c conversion use parameter passing
conventions different from most C or C++ programs.  Their
callers must create the appropriate parameters before using them.
See the file f2c.ps in the f2c distribution.
A good description of this issue may also be found in
the "readme" file for clapack in netlib.


===================================

q115.3. Statlib

Statlib is a huge repository of statistics related software and info.
Probability, statistics, random variables, distribution functions.

http://lib.stat.cmu.edu/   Statlib at CMU
ftp://lib.stat.cmu.edu     Statlib via ftp
email: send message "send index" to statlib@lib.stat.cmu.edu


===================================


q115.4. NCAR's Mathematical and Statistical Libraries

NCAR's libraries contain some overlap with netlib.

http://http.ucar.edu/SOFTLIB/mathlib.html  NCAR


===================================

q115.5. Hensa Unix Parallel Archive

General info, software, articles, etc., on parallel computing.

http://www.hensa.ac.uk/parallel/environments/pcn/  Hensa
Note: this web server can be very slow!



===================================

q115.6. Modula-3 NA Library

http://www.eskimo.com/~hgeorge/  Modula-3 NA
and pick the link to m3na.
This is a libraried collection of numerical analysis routines written
in Modula-3.  Includes linear algebra, roots, ffts, and a bit
of statistics.


===================================

q115.7. Forth Numerical/Scientific Library

http://www.taygeta.com/fsl/sciforth.html  Skip Carter's Forth Library at Taygeta

===================================

q115.8. Eiffel Numerical/Scientific Library

http://www.eiffel.com/products/math.html  Commercial Eiffel library at I.S.E.

===================================

q115.9. Lisp Numerical/Scientific Libraries


http://euler.bd.psu.edu/lispstat/   statistical tools.

http://setosa.uwaterloo.ca/~ftp/Quail/features.html   U. Waterloo

http://eksl-www.cs.umass.edu/research/clip-clasp-overview.html  instrumentation and statistical analysis packages

ftp://ftp.cs.cmu.edu/user/ai/lang/lisp/code/math/0.html  CMU's library


===================================

q115.10. Java Numerical/Scientific Libraries

http://www.vni.com/products/wpd/jnl/jnl_1_0.html  Visual Numerics' Java package
[author]:
JNL, a Numerical Library for Java, is a set of classes for the most
important numerical functions missing in Java. The library is
comprised of one numerical type class, Complex, and three categories
of numerical functions classes: the special functions class, the    
linear algebra classes, and the statistics class. All classes use
double precision floating point as the underlying float type.

 







===========================================================================


q120. NA Packages on the Net

Packages generally include an NA library and an interpretive
language for a front end.

Also see q520, "Symbolic Algebra", for free symbolic algebra packages.

        * q120.1, "Octave"
        * q120.2, "RLaB"
        * q120.3, "Scilab"
        * q120.4, "Tela"
        * q120.6, "Medal"
        * q120.7, "Euler"
        * q120.8, "Prophet"
        * q120.9, "Yorick"
        * q120.10, "PETSc"

===================================

q120.1. Octave
http://www.che.wisc.edu/octave        Octave
ftp://ftp.che.wisc.edu/pub/octave     Octave via ftp

[Dave Lindner]: Octave is considered the closest-to-Matlab
of the Matlab clones.

[author]:
Octave is a high-level language, primarily intended for
numerical computations. It provides a convenient command line
interface for solving linear and nonlinear problems
numerically.

Octave can do arithmetic for real and complex scalars and matrices,
solve sets of nonlinear algebraic equations, integrate functions over
finite and infinite intervals, and integrate systems of ordinary
differential and differential-algebraic equations.

The Octave distribution includes a 200+ page Texinfo manual.
Two and three dimensional plotting is fully supported using gnuplot.

The underlying numerical solvers are currently standard
Fortran ones like Lapack, Linpack, Odepack, the Blas,
etc., packaged in a library of C++ classes.

===================================

q120.2. RLaB

http://www.eskimo.com/~ians/rlab.html   RLaB
ftp://csi.jpl.nasa.gov/pub/matlab/RLaB  RLaB via ftp
ftp://evans.ee.adfa.oz.au/pub/RLaB      RLaB via ftp in Australia

[author]:
Rlab is an interactive, interpreted scientific programming
environment. Rlab is a very high level language intended to provide
fast prototyping and program development, as well as easy
data-visualization, and processing.

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 the programming language
possesses similar operators and concepts.

===================================

q120.3. Scilab

http://zenon.inria.fr/Logiciels/SCILAB-eng.html  Scilab
ftp://ftp.inria.fr/INRIA/Scilab                  Scilab via ftp

[Dave Lindner]: Scilab is another good Matlab clone.

[author]:
Scilab is a high-level language for numerical computations
in a user-friendly environment. It features:
Elaborate data structures (polynomial, rational and string
matrices, lists, multivariable linear systems,...).
Sophisticated interpreter and programming language with
Matlab-like syntax.
Hundreds of built-in math functions (new primitives can easily be
added).
Stunning graphics (2d, 3d, animation).
Open structure (easy interfacing with Fortran and C via online
dynamic link).

Many built-in libraries :
        * Linear Algebra (including sparse matrices, Kronecker
        form, ordered Schur,...).
        * Control (Classical, LQG, H-infinity, ...).
        * Signal processing.
        * Simulation (various ode's, dassl,...).
        * Optimization (differentiable and non-differentiable, LQ solver).
        * Metanet (network analysis and optimization).
Symbolic capabilities through Maple interface.

===================================

q120.4. Tela

http://www.geo.fmi.fi/prog/tela.html  Tela
ftp://ftp.funet.fi/pub/sci/math/tela  Tela via ftp

General NA package with graphics, linear algebra, FFT, etc.
Is this another Matlab clone?

[author]:
It is mainly targeted for prototyping large-scale
numerical simulations and doing pre- and postprocessing for them, and
it replaces a compiled language like C++ or Fortran in this respect.
The feature set is therefore biased to operations needed in partial
differential equation solvers.




===================================

q120.6. Medal

ftp://excel2.uwaterloo.ca/pub  Medal

Apparently there is also available is a commercial version of Medal:
Email : medal@excel2.uwaterloo.ca

[author]:
MEDAL is a novel expert system development environment which is integrated
within a control system design environment, and which supports a tight
coupling of symbolic and numeric processing.  MEDAL supports the development
of coupled systems in engineering and science.

MEDAL (Matrix and Expert system Development Aid Language) is an interactive
program.  The language syntax of MEDAL is similar to the popular MATLAB
(Matrix Laboratory) language.  MEDAL retains all of the main features of
MATLAB, including the MATLAB syntax and M-files.
In addition, MEDAL includes an integrated expert system shell for the
development of knowledge-based systems which can perform
sophisticated numeric calculations.   Hence, the additional
expert system predicates extends the MATLAB command language syntax.
Also, MEDAL supports a rich set of data structure for representing
objects in the programming environment.  Knowledge can be
represented using facts, rules and frames.

Main features of MEDAL :
------------------------
        * interactive computing environment ( command-drive )
        * language syntax and user-interface similar to MATLAB
        * all basic MATLAB-type of matrix functions are provided
        * flexible 2-D graphics
        * design of linear control systems
        * packed matrix representation, as well as regular matrices
        * automatic loading of M-files ( open philosophy )
        * build-in knowledge base development facilities (expert shell )
        * knowledge repesentation : rules, facts, objects ( frames )
        * simple knowledge base of the Systematic Design Approach is included
        * runs on Sun Sparc workstations (X-window), PC (DOS), DEC (Ultrix)

References:

(1) Pang, G.K.H.,``Knowledge-based Control System Design'', in
Recent Advances in Computer-Aided Control Systems Engineering,
Jamshidi, M and  Herget, C.J. (ed.), Elsevier Science Publishers, 1992.

(2) Pang, G.K.H., ``A Knowledge Environment for an Interactive Control
System Design Package'', Automatica, Vol. 28. No. 3, pp. 473-491, May 1992.

===================================

q120.7. Euler

ftp://am.ku-eichstaett.de/pub        Euler via ftp

[author]:
EULER started as a MatLab clone. It is now a program, which can handle 
real, complex and interval numbers and matrices, has a 2D/3D graphics, a 
builtin modern programming language (extension of MatLab's), an exact 
scalar product, and the Windows 95 version can call functions in an 
external DLL. The OS/2 and Windows versions interact nicely with the GUI, 
and have a notebook style interface.

The Unix version is free, the OS/2 version free for educational use, and 
the Windows version cheap shareware.

These features make EULER an ideal tool for the tasks such as
        * Inspecting and discussing functions of one real or complex
        variable.
        * Viewing surfaces in parameter representation.
        * Linear algebra and eigenvalue computation.
        * Testing numerical algorithms.
        * Solving differential equations numerically.
        * Computing polynomials.

===================================

q120.8. Prophet

http://www-prophet.bbn.com/   Prophet
ftp://www-prophet.bbn.com     Prophet via ftp
email: prophet-info@bbn.com

[author]:
Prophet is an NIH-sponsored Unix workstation software package for life
science computing.  Prophet includes tools for data management,
statistical analysis, curve fitting, data graphing, mathematical
modeling, and genetic sequence analysis.

One of PROPHET's greatest assets is its new graphical
user interface . Employing the latest advances in software
technology, PROPHET lets you store,
analyze and present Data Tables, Graphs, Statistical Analyses and
Mathematical Modeling, and Sequence Analyses with high-resolution
graphics and multiple windows. Anyone, from the computer-naive to the
computer-sophisticate, can learn to use it quickly and effectively.
PROPHET is a National Computing Resource for Life Science Research
sponsored by the National Center for Research Resources of the
National Institutes of Health.

Unfortunately, prophet is distributed in binary form only.
It is large: it takes something like 65 MB disk space.

===================================

q120.9. Yorick
   wuarchive.wustl.edu: /languages/yorick/yorick-1.2.tar.gz
   sunsite.unc.edu: /pub/languages/yorick/yorick-1.2.tar.gz
   sunsite.unc.edu: /pub/Linux/apps/math/matrix/yorick-1.2.tar.gz
   netlib.att.com: /netlib/env/yorick-1.2.tar.gz
   netlib2.cs.utk.edu: /env/yorick-1.2.tar.gz

[author]
Yorick is an interpreted language.  It has:
        * A C-like language, but without declarative statements.  Operations
        between arrays require no explicit loops, which accounts for
        Yorick's high speed.  Scientific computing and numerical analysis
        are the goals of most Yorick sessions.
        * An X window system interactive graphics package.
        * A library of functions written in the Yorick language.
Because Yorick can read either text or binary files, it can be used
"out of the box" as a pre- and post-processor for most existing
physics simulation programs.

As a pre-processor, you can write a Yorick program that produces
complicated input files for a simulation.  These might be based on
output from other programs, or might require evaluation of complicated
functions or involve a lot of repetition.

As a post-processor, Yorick allows you to compare the results of
several simulations or to analyze results of a single simulation in
ways you did not forsee when you ran it.


===================================

q120.10. PETSc
ftp://info.mcs.anl.gov/pub/petsc   PETSc by ftp
http://www.mcs.anl.gov/petsc/petsc.html  PETSc by www

[author]:
Portable, Extensible Toolkit for Scientific Computation (PETSc).
   PETSc provides many tools for the parallel (and uniprocessor),
numerical solution of PDEs that require solving large-scale, sparse
nonlinear systems of equations.  PETSc includes nonlinear and linear
equation solvers that employ a variety of Newton techniques and Krylov
subspace methods. In addition, PETSc provides several parallel sparse
matrix formats, including compressed row, block compressed row, and
block diagonal storage.

   PETSc is fully usable from Fortran, C and C++, and runs portably on
on most UNIX systems.  PETSc uses MPI for all parallel communication.

   One of the unique features of PETSc is that it enables the
application programmer to easily and efficiently assemble parallel
vectors and sparse matrices.  Users can create complete application
programs for the parallel solution of nonlinear PDEs without writing
much explicit message-passing code themselves.

   In addition, PETSc is designed to facilitate extensibility.  Thus,
users can incorporate customized solvers and data structures when
using the package.



===========================================================================

q125. Commercial NA Libraries and Packages

Commercial libraries and packages tend to merge, so I've combined
them in one category.  Typically a commercial product contains:
        * a library of numerical routines
        * graphics routines
        * an interactive interpreted language

Many symbolic algebra packages also contain NA packages.
For info on these packages, see q520, "Symbolic Algebra".

An good article on commercial software is:
Braham, Robert.  "Math & Visualization: new tools, new frontiers",
IEEE Spectrum 32, 11 (November 1995), p. 19-36.
The article contains tables comparing large number of commercial products.
There is no mention of the many excellent free products though.

        * q125.1, "NAG"
        * q125.2, "IMSL and PV-WAVE"
        * q125.3, "Matlab and Simulink"
        * q125.4, "WavBox"
        * q125.5, "CraySoft Libraries"
        * q125.6, "IDL"
        * q125.7, "Comparison of IDL and Matlab"
        * q125.8, "Mlab"
        * q125.9, "Gauss"
        * q125.10, "MathViews"
        * q125.11, "Matcom: Matlab to C++ Compiler"

===================================


q125.1. NAG

http://www.nag.co.uk      NAG in England
http://www.nag.com/       NAG in USA

[SJS]: Numerical, symbolic, statistical, and visualization libraries in
Fortran 77, Fortran 90, C, Pascal, Ada, and parallel machine versions.
High performance Fortran 90 and Fortran 77 compilers.

NAG Ltd (The Numerical Algorithms Group)

   Wilkinson House
   Jordan Hill Road
   OXFORD
   OX2 8DR
   UK
   Tel: +44 1865 511245

NAG Inc
   1400 Opus Place
   Suite 200
   Downers Grove
   IL 60515-5702
   USA
   Tel: +1 708 971 2337


===================================

q125.2. IMSL and PV-WAVE

http://www.vni.com    Visual Numerics, Inc.

[SJS]: IMSL is a set of routines in C, C++, and Fortran
libraries for general NA, statistics and graphics.
PV-WAVE is a visual programming environment that includes IMSL
as a "plug-in".

Visual Numerics, Inc.
   IMSL and Stanford Graphics Products
   9990 Richmond Avenue, suite 400
   Houston, Texas 77042-4548
   USA
   Tel: 800-222-4675
   Tel: 713-784-3131
   FAX: 713-781-9260
   e-mail: marketing@houston.vni.com

Visual Numerics, Inc
   PV-WAVE Products Division
   6230 Lookout Road
   Boulder, Colorado 80301
   USA
   Tel: 800-447-7147
   Tel: 303-530-9000
   FAX: 303-530-9329
   info@boulder.vni.com

[author]:
        * Comprehensive Mathematical Functionality
                * integration and differentiation
                * transforms
                * differential equations
                * linear systems
                * interpolation and approximation
                * eigensystem analysis
                * optimization
                * special functions
                * basic matrix/vector operations
                * nonlinear equations
                * utilities

        * Extensive Statistical Functionality
                * basic statistics
                * tests of goodness-of-fit
                * time series analysis and forecasting
                * analysis of variance
                * regression
                * nonparametric statistics
                * correlation
                * random number generation
                * cluster analysis
                * categorical and discrete data analysis
                * probability distribution functions and inverses
                * factor analysis
                * utilities

        * Exponent Graphics includes:
                * Presentation quality graphs for application development
                * Application program interface provides easy access to either
                FORTRAN or C
                * Two function calls can automatically produce one of over 30
                different plot types.
                * Maximum flexibility for modifying plot chacteristics
                * Powerful interactive editing and customization tools
                * CGM, PostScript, HPGL and other device drivers
                * Support for popular graphics accelerators and output systems
                * Full Windows-based online documentation with hypertext links

PV-WAVE is a software environment for solving problems requiring the
application of graphics, mathematics, numerics and statistics to data
and equations.
PV-WAVE uses an intuitive fourth generation language (4GL) that
analyzes and displays data as you enter commands. With it you can
perform complex analysis, visualization, and application
development quickly and interactively.

Robust integrated graphics, numerics, data I/O, and data management
has made PV-WAVE the number one selling Visual Data Analysis software
family.

PV-WAVE and the IMSL numerical and statistical routines, which are
seamlessly integrated in PV-WAVE Advantage, are being used by more
than 300,000 technical professionals on workstations worldwide.


===================================

q125.3. Matlab and Simulink

http://www.mathworks.com/    Mathworks

The MathWorks, Inc.
   24 Prime Park Way
   Natick, MA 01760-1500
   (508) 653-1415

For a comparison of Matlab and IDL, see
q125.7, "Comparison of IDL and Matlab".

[SJS]: Matlab is an interactive general NA package, including graphics.
A huge variety of "toolboxes" are available, both from the
vendor and on the net, for various specialized NA areas:
control systems, neural nets, optimization, symbolic math,
and on and on.
Simulink is modeling, simulation, and system analysis tool.

[author]:
MATLAB is a technical computing environment for high-performance
numeric computation and visualization. MATLAB integrates numerical
analysis, matrix computation, signal processing, and graphics in an
easy-to-use environment where problems and solutions are expressed
just as they are written mathematically - without traditional
programming.

MATLAB has evolved over a period of years with input from many users.
In university environments, it has become the standard instructional
tool for introductory courses in applied linear algebra, as well as
advanced courses in other areas. In industrial settings, MATLAB is
used for research and to solve practical engineering and mathematical
problems. Typical uses include general purpose numeric computation,
algorithm prototyping, and special purpose problem solving with matrix
formulations that arise in disciplines such as automatic control
theory, statistics, and digital signal processing (time-series
analysis).

MATLAB also features a family of application-specific solutions that
we call toolboxes. Very important to most users of MATLAB, toolboxes
are comprehensive collections of MATLAB functions (M-files) that
extend the MATLAB environment in order to solve particular classes of
problems. Areas in which toolboxes are available include signal
processing, control systems design, dynamic systems simulation,
systems identification, neural networks, and others.

SIMULINK is a tool for modeling, analyzing, and simulating an
extraordinarily wide variety of physical and mathematical systems,
including those with nonlinear elements and those which make use of
continuous and discrete time.

As an extension of MATLAB, SIMULINK adds many features specific to
dynamic systems while retaining all of MATLAB's general purpose
functionality.

Using SIMULINK, you model a system graphically, sidestepping much of
the nuisance associated with conventional programming.

===================================


q125.4. WavBox

http://www.wavbox.com/  Wavbox
email: info@wavbox.com

A wavelet Toolbox for Matlab.
[author]:
A software toolbox for wavelet transforms and adaptive
wavelet packet decompositions with new satisficing search algorithms.
Requires Matlab.



===================================

q125.5. CraySoft Libraries

http://www.cray.com/PUBLIC/product-info/craysoft/CS_home_txt.html  Cray product info
http://www.cray.com/           Cray main
http://www.cray.com/craysoft/  Craysoft main
email: crayinfo@cray.com

Corporate Headquarters:
   Cray Research, Inc.
   655 Lone Oak Drive
   Eagan, Minnesota 55121
   (800) 289-2729 or (612) 683-3030,

[author]
Fortran 90 compilers and NA library for Cray, Sparc,
Macintosh, and Windows environments.
        * Seismic migration
        * Structural analysis
        * Financial modeling
        * Decision support analysis
        * General scientific
        * Computational chemistry
        * Computational physics
        * Intelligence, signal and image processing
        * Electronic simulation


===================================

q125.6. IDL

Research Systems Inc.

http://www.rsinc.com/  Research Systems, Inc.
Research Systems, Inc.
   2995 Wilderness Place
   Boulder, CO  80301  USA
   Phone: 303-786-9900
   email: info@rsinc.com

For a comparison of IDL and Matlab, see
q125.7, "Comparison of IDL and Matlab".

IDL binaries are available at:
ftp://ftp.rsinc.com/pub/idl               Research Systems, Inc.
ftp://boulder.colorado.edu/pub/idl        U. of Colorado
ftp://ftp.Germany.EU.net/shop/CreaSo/IDL  Germany

Following are two sets of comments on IDL:
1. By Pierre Maxted
2. By Amara Graps

================

1. Comments by Pierre Maxted

I find that IDL is good for "playing" with data. This works well for
astronomers who seem to end up always wanting to do something a little
different to last time to data that always has slightly different quirks
everytime. I also find that it is a rather easy language in which to
write my own routines. This is probably because I can start with
interactive IDL to get the feel for what the data is like and what I want
to do with it - this then becomes a simple batch file which can be turned
into a routine if the procedure is useful - this seems to be a natural
way to develop things. These libraries of routines are what makes IDL
really powerful in my opinion. I found that adding the astronomy user's
library to IDL was like adding wheels to a car. I would recommend to
anyone considering using IDL to find out what libraries are out
there (e.g. starting at the IDL WWW homme page).

Whatever you add to the FAQ, make one point clear - calling IDL a fancy
plotting package is like calling a Formula 1 racing car good for picking
up the kids from school - IDL can do plotting, but that is not its
strength.

Well, I agree that the hard copy manuals are rather opaque but Version 4
of IDL has online help (Hyperhelp) that is rather good - especially since
it had text searching capabilites so that you can go straight to the bit
you need (usually).


================

2. Comments by Amara Graps

Following is an excerpt of comments by [Amara Graps]:
For the full text of her review, please see:
http://www.amara.com/papers/miscpap.html   Amara Graps' Papers
ftp://ftp.amara.com/papers/IDL_Matlab.txt  Amara Graps' Papers via ftp

If you install IDL without a valid license, you will get IDL's
7 minute demo mode. This mode is designed for users who are
considering buying the package.

IDL is a vector-based language that makes it easy to manipulate arrays
and matrices.  I've done testing comparing IDL speed to
Fortran in various actions, and IDL was as fast as a Fortran program for
the IDL array computations where loops were removed (i.e., when
using implicit loops in IDL instead of explicit FOR statments).

The scientific functions and procedures that come with IDL are often all
that scientists need.  In addition, there are net archives
containing contributed routines.  The archives at
John Hopkins and at Goddard are especially good (see below).

The language, for the most part is "open", i.e. you can see the
text of any particular procedure or function, in case you doubt the
technique, or want to modify it. Some functions and procedures are
black-box, intrinsic functions or procedures, but not nearly as many as
Matlab (see below) are.

Most work in IDL is done at the command line level.  However, IDL supplies
rudimentary "widgets" to wrap a GUI around your procedures and
functions. You can create buttons, menus, scrollboxes etc.

Three-d plotting is currently not very well documented, and the way that
IDL does it is very convoluted. Other users and I have complained about
it, and I think RSI are taking steps to better document how to do it.

Image procesing and animation is pretty slick.
If you need to do "slicing and dicing" of a volume, in a way like
Spyglass Dicer, IDL has a really great widget routine to do it.
The IDL plots are high quality enough to use in initial journal
submissions.

RSI's support (writing to support@rsinc.com) is pretty good, I
usually get responses within 24-34 hours. You have to pay yearly technical
support costs, though- about $200 year (don't remember exactly how much).
The Usenet group: comp.lang.idl-pvwave has some smart programmers giving
answers if you don't want to pay for the IDL technical support. RSI
usually doesn't answer questions on that newsgroup (they have a company
policy against promoting IDL there because it's shared by two products:
IDL and PV-WAVE).

I've never liked the IDL documention very much. The information that you
need probably *is* in the manuals, but it's somewhat hard to find (the
manuals are organized in a wierd way).  [Note, however, the comments
by Pierre Maxted above].

The anonymous ftp sites below contain public domain IDL code.


http://fermi.jhuapl.edu/www/s1r/idl/idl.html  JHU/APL/S1R IDL library
ftp://fermi.jhuapl.edu/pub/idl                JHU/APL/S1R IDL library via ftp

NASA IDL Astronomy User's Library, run by Wayne Landsman:
http://idlastro.gsfc.nasa.gov/homepage.html   NASA IDL Astro Library
ftp://idlastro.gsfc.nasa.gov/pub              NASA IDL Astro Library via ftp

ftp://iuesn1.gsfc.nasa.gov     IUE RDAF library at NASA
ftp://cetus.colorado.edu/pub   IUE RDAF library at U. of Colorado

ftp://ftp.astro.psu.edu/pub/nefftp/icur  ICUR Spectral Analysis Software

ftp://legacy.gsfc.nasa.gov/rosat/software/idl  IDL ROSAT software

ftp://ftp.sma.ch/pub/idlmeteo  IDLmeteo library

ftp://eos.crseo.ucsb.edu/pub/idl  ESRG library


Hal Mueller has a Digital U.S. Map browser based on images
created by Ray Sterner at Johns Hopkins University using IDL:
http://www.zilker.net/~hal/apl-us//  Map browser

E. Loren Buhle, Jr. Ph.D. made a page on AVS IN MEDICAL TREATMENT
PLANNING which also discusses IDL:
http://archive.xrt.upenn.edu/0h/buhle/manuscripts/avs94_paper.html  Medical Treatment Planning



===================================

q125.7. Comparison of IDL and Matlab

Following is an excerpt of a paper by [Amara Graps]:
For the full text of her review, please see:
http://www.amara.com/papers/miscpap.html   Amara Graps' Paper
ftp://ftp.amara.com/papers/IDL_Matlab.txt  Amara Graps' Paper via ftp

IDL is a package that began life as an image-processing utility that has
grown to be a general-purpose numerical analysis tool. Matlab started as
a numerical analysis package that now includes [at extra cost] image
processing tools. Now the two have a similar scientific data-analysis
environment, with capabililties to build GUI programs and do very robust
data analysis.

(Note: all prices are approximate October 1995 prices - SJS)
They each cost about the same: ~$1500 for Mac and PC versions and more for
Unix (~4000 -- single user to $15,000 -- unlimited number of users).

Matlab is popular among education institutions because it has exceptional
educational discounts. If you are an academic, Matlab can be had for
$495 and each toolbox only $195. My NASA colleagues thought that
MathWorks "nickled- and-dimed" them with the costs of the Toolkits (like
the signal processing toolkit), but given what you get, it probably
isn't that unreasonable.

IDL seems to be more widespread in the NASA communities probably because
the original developer used several spacecraft teams (Pioneer Venus and
Voyager) as test beds for the IDL software.

IDL is more of a true programming language. Matlab has scripts and
functions and no way to explicitly type a variable. IDL has programs,
procedures, and functions and a language syntax sort of like a cross
between Fortran, Pascal, and APL. If you have programmed in Fortran
before, then the syntax will be a snap to learn. Matlab's syntax is much
more compact than IDL's. For example: x = transpose(y) in IDL is x=y' in
Matlab.

Matlab has many more built-in, intrinsic functions than IDL.
MatLab has many optional Toolkits, such as a Signal Processing
Toolkit and an Image Processing Toolkit, which are libraries
of more intrinsic functions.

Reading and writing files, and handling formats such as GIF,
PICT, GDF, and custom formats, seems much easier in IDL than MATLAB.
Handling directories is difficult in MATLAB when run on non-unix
machines.

Matlab has more types of graph types than IDL, and handling
colors is simpler than IDL. However, I found most
other Matlab graphical programming non-intuitive. It uses a system where
each element in a graph is an "object." These objects can have
sub-objects. So to change an element in a graph, say the axis color, you
have to first find the object (a "get" function), and then set it to the
color you want. IDL has system variables storing all graphics elements
which can be easily changed. One can also customize a graph upon making
the graph, with a keyword.

IDL's technical support is pretty good, but Matlab's is better. Post
a question on comp.soft-sys.matlab and either a developer, the company
president, or a tech support person will respond that day. You can call
them, too, but it's not a toll-free call.

===================================

q125.8. Mlab

http://www.civilized.com/MLAB.htmld/  Civilized Software

Civilized Software, Inc.
   7735 Old Georgetown Rd. #410
   Bethesda, MD 20815
   U.S.A.
   1-301-656-4714
   1-301-656-1069 fax
   Email: csi@civilized.com


[author]:
MLAB, (for Modeling LABoratory), is a program for interactive
mathematical and statistical modeling. MLAB was originally developed
at the National Institutes of Health. It includes curve-fitting,
differential equations, statistics and graphics as some of its major
capabilities.

===================================


q125.9. Gauss

email: info@aptech.com
Aptech Systems has a web page on Gauss at:
http://www.netaxis.qc.ca/~j.breslaw  Aptech Systems

Aptech Systems, Inc., Tel: (206) 432-7855, Fax: (206) 432-7832
   23804 South East Kent-Kangley Road
   Maple Valley, WA 98038 USA
   (206) 432-7855

[author]:
The GAUSS Mathematical and Statistical System is available for IBM PCs and
compatibles as well as UNIX workstations

As a complete programming language, the GAUSS system is both
flexible and powerful. Immediately available to the GAUSS user is a wide
variety of statistical, mathematical and matrix handling routines. Powerful
data handling capabilities including a data loop allow transformations in a
data set by directly using variable names inexpressions. This greatly
simplifies data transformations and makes for shorter more readable programs.
GAUSS can be used in either command mode(interactively) or in edit mode. In
command mode; one-line commands, or small screen-resident programs, can be
issued and the results of calculations seen immediately. In edit mode you
can write complex programs and store them in files.

GAUSS has over 400 functions built in, including LINPACK and EISPACK
routines.

===================================


q125.10. MathViews

http://www.mathwizards.com  MathViews

[author] MathViews for Windows is matlab look-alike. It
has a full set of linear algebra and signal processing
functionality.  It provides easy access to: matrix and linear
algebra, digital signal processing, instrument control, image
processing, time series analysis, data visualization and 
waveform display and editing.
MathViews is highly compatible with the matlab syntax and will
execute most matlab m-files with no changes.
We also have WaveTool.
WaveTool is an interactive software tool for creating, editing
and analyzing captured waveshapes. Waveforms can be created
using any combination of drawing, math expressions (matlab
syntax), insertion from a library of waveforms or data values
pasted from other applications such as Microsoft Excel.

===================================


q125.11. Matlab to C++ Compiler and C++ Matrix Class Library

http://www.mathtools.com  Mathtools
or email: info@mathtools.com

[author]:
MATCOM V2 is a Matlab(R) to C++ compiler. MATCOM creates MEX files 
and standalone C++ applications, with royalty free distribution.
MATCOM translates Matlab code to C++, which is compiled by your
optimizing C++ compiler. The resulting code runs significantly faster
than the original interpreted source.
Prior knowledge of C++ is not necessary to use MATCOM. The compilation
is fully automated by a smart project manager.
Fully functional, time limited evaluation version of MATCOM V2 can be
downloaded freely from the MathTools web site.

MAT<LIB>, a Matlab Compatible C++ Matrix Class Library,
is designed for development of advanced 
scientific high-level C++ code. Evalution version of the MAT<LIB> 
can be downloaded from the home page noted above.
The library includes Complex math, Binary and unary operators, 
Powerful indexing capabilites, Signal processing, File I/O, Linear
algebra, String operations and Graphics. Over 300 mathematical 
functions are included in MAT<LIB>.
MAT<LIB> supports matrices of doubles, floats, ints and chars
mixed in the program. Images can be stored in matrices of chars,
using 1/8 memory storage. On many applications, where 8 digits of
precision are sufficient, float-precision matrices can save half
the memory usage. Memory allocation and  de-allocation is managed
automatically.



===========================================================================

q135. Newsgroups for NA


Newsgroups related to numerical analysis are:


sci.math.num-analysis   The primary group for NA issues.

sci.math.symbolic       Covers symbolic algebra: Mathematica, Maple,
Macsyma, Derive, Reduce, Mcad, etc.

comp.soft-sys.math.mathematica:  Devoted to Mathematica.

sci.op-research         Covers operations research, linear programming,
non-linear programming.

sci.stat.math           Covers probability and statistics.

sci.math                Covers a broad range of mathematical subjects, at
levels from trivial to advanced.

sci.math.research       Covers advanced mathematics, and
is generally theoretical as opposed to applied.



===========================================================================

q140. Professional Societies for NA

        * q140.1, "The (AMS) American Mathematical Society"
        * q140.2, "(SIAM) The Society for Industrial and Applied Mathematics"
        * q140.3, "ACM, Inc. (Association for Computing Machinery)"
        * q140.4, "IEEE  The Institute of Electrical and Electronic Engineers"

===================================

q140.1. The (AMS) American Mathematical Society

http://www.ams.org/  AMS
email: ams@math.ams.org

General organization information, preprint titles, pointers to
other preprint servers and net resources.  Also includes:

MathDoc, the document delivery service offered by the AMS, provides
copies of original journal, collection and conference proceedings
articles from publications covered by Mathematical Reviews, Current
Mathematical Publications, and the MathSci database.  This costs
roughly US$14. per ten pages, as of October 1995.

MathSciNet is a searchable database available on the World Wide Web.
It is based on the data in Mathematical Reviews and Current
Mathematical Publications, leading publications that catalog and
review research literature in mathematics.  This costs roughly
US$5500. per year, as of October 1995.

===================================

q140.2. (SIAM) The Society for Industrial and Applied Mathematics

http://www.siam.org/  SIAM
email: siam@siam.org

General organizational information, tables of contents
of SIAM journals, and recently accepted articles.
Society for Industrial and Applied Mathematics
3600 University City Science Center
Philadelphia, PA 19104-2688
(215) 382-9800

Journals include:
SIAM Scientific Computing
SIAM Matrix Analysis
SIAM Control and Optimization

===================================

q140.3. ACM, Inc. (Association for Computing Machinery)

http://acm.org/  ACM
email: ACMHELP@acm.org

General organizational information, info on journals and conferences.
Of particular interest are:

Transactions on Mathematical Software (TOMS)
http://www.acm.org/pubs/toms/  ACM TOMS

Collected Algorithms of the ACM (CALGO)
Software can be found in netlib (toms directory); see q115.1, "Netlib".

SIGNUM (Special Interest Group in Numerical Mathematics)
http://www.acm.org/sig_hp/SIGNUM.html  ACM SIGNUM

ACM Headquarters
One Astor Plaza
1515 Broadway
New York, New York 10036
212-869-7440

===================================

q140.4. IEEE  The Institute of Electrical and Electronic Engineers

http://www.ieee.org  IEEE
email: member.services@ieee.org

General organizational information, journals, books, conferences.
   Tel: (800) 678-IEEE
   Tel: (212) 705-7900

===========================================================================

q145. Electronic Newsletters for NA

http://www.netlib.org/na-net/na_home.html  NA-Net
http://www.netlib.org/na-digest/topics     NA-Net Index

email: nanet@na-net.stanford.edu

[author]:
The NA-Net is a system developed to serve the community of numerical
analysts and other researchers. The Na-Net provides two independent
databases and a weekly digest to its members. The Email Database is
the electronic mail address of each of its members, and is capable
of forwarding mail to them. In addition, this database serves as the
distribution list for the NA Digest (see below). The White Pages
Database is basically a directory service. It provides a way to
exchange personal information among its members. Contained in the
database are phone numbers, postal mailing addresses, research
interests, affiliations, etc. The NA Digest is a way to provide its
members with a weekly collection of articles on topics related
to numerical analysis and those who practice it. To get on the
mailing list for the digest and enter yourself in their database,
you can use email or the World Wide Web. Take advantage of this very
useful service!

===========================================================================

q150. Electronic Journals for NA

Indices of Journals

See the large list of online journals, and other resources,
at Penn State's Mathematics web site.

http://www.math.psu.edu/OtherMath.html  Penn State Mathematics

See also:
http://rattler.cameron.edu/swjpam/  The Southwest Journal of Pure and Applied Mathematics



===================================

BIT

http://math.liu.se/BIT/  BIT
BIT emphasizes numerical methods in approximation, linear algebra, and
ordinary and partial differential equations, but also publishes papers
in areas such as numerical functional analysis and numerical
optimization.

===================================

ETNA (Electronic Transactions in Numerical Analysis).

http://etna.mcs.kent.edu/  ETNA
An online peer reviewed journal.  Keyword searching.
Most documents are postscript and may be downloaded.
Started in 1993.  Indexes only itself.

===================================

EJDE, The Electronic Journal of Differential Equations

http://ejde.math.swt.edu/  EJDE
A purely on-line peer-reviewed journal.

===================================

The Electronic Journal of Linear Algebra

http://gauss.technion.ac.il/iic/ela/  Electronic J. of Linear Algebra

===================================

New York Journal of Mathematics

http://nyjm.albany.edu:8000/nyjm.html  NY J. of Mathematics
Appears more abstract than applied.  Started in 1994.  Indexes only itself.


===========================================================================

q155. Online Preprints for NA

General
See the listings for professional societies, especially the AMS,
in q140, "Professional Societies for NA".

Springer-Verlag
Preprints: See the Springer-Verlag preprint service via email.
Not free.
http://www.springer.de/server/services.html  Springer Verlag

Virtual Library Math Journals Preprints
http://euclid.math.fsu.edu/Science/Preprints.html  Virtual Lib Math Jnls Preprints
Links to numerous organizations offering preprints.


===========================================================================

q160. Miscellaneous Web Sites for NA

See also:
        * q160.1, "C++ Resources for NA"
        * q160.2, "Math FAQ"
        * q160.3, "Math Dictionary"


Caltech guide to mathematics resources
http://www.ama.caltech.edu/resources.html  Caltech Guide to Math Resources
Good collection of pointers to quality sites.

Penn State's Math Guide
http://www.math.psu.edu/OtherMath.html  Penn State Math Guide
Huge site with information on many fields within mathematics.

U. C. Berkeley
gopher://math.berkeley.edu     U.C. Berkeley gopher site (large)
ftp://math.berkeley.edu /pub   U.C. Berkeley ftp site (large)
http://math.berkeley.edu/      U.C. Berkeley ftp site (small)
Berkeley has a large gopher & ftp site, including courseware, pointers
to inet libraries, lecture notes, seminars, and software.

Indiana University:  Mathematical Computing Resources Guide
http://www.indiana.edu/~statmath/mathsites.html   Indiana University.
An excellent large site.


The World-Wide Web Virtual Library: Mathematics
http://euclid.math.fsu.edu/Science/math.html  Virtual Lib: Mathematics
Specialized fields (topology, cryptography, optimization, etc),
academic departments, miscellaneous math societies and institutes,
pointers to commercial software, newsgroups, nice collection
of preprints pointers, electronic journals

U. Tennessee Knoxville Mathematics Archives WWW Server
http://archives.math.utk.edu/  U. Tenn Knoxville Math Archives

MathSoft's Favorite Mathematical Constants
http://www.mathsoft.com/asolve/constant/constant.html  Mathsoft Constants
Constants and algorithms for their generation.

Tomasz Plewa's list of www sites for numerical methods
http://tonic.physics.sunysb.edu/docs/num_meth.html  Plewa's NA page, USA
http://www.math.psu.edu/dna/num_methods.html  Plewa's NA page, USA
http://zar.unizar.es/www/num_meth.html  Plewa's NA page, Spain
http://www.labyrinth.net.au/~ctrans/tomasz.html  Plewa's NA page, Australia

Amara Graps' list of science links
http://www.amara.com/science/science.html  Amara Graps' list

A Catalog of Mathematics Resources on WWW and the Internet
http://mthwww.uwc.edu/wwwmahes/files/math01.html  Catalog of Math Resources
By M. Maheswaran, University of Wisconsin Marathon Center.
Another large site, with a sizeable section on Applied Mathematics.

Altug Koker's list of simulation software
http://piranha.eng.buffalo.edu/simulation/comp.simulation/FAQ.html   Simulation Software
(See his Q15.).  Contains pointers to software for:
aerospace, automotive, chemistry / biotechnology, graphics and imaging,
electronics / electrical engineering, petroleum

The Yahoo server's index of Mathematics topics.
http://www.yahoo.com/Science/Mathematics  Yahoo's Math index
Includes commercial products, conferences, journals, and various
subfields of mathematics, primarily in applied mathematics.


Scientific Applications on Linux Web Page
http://lusk1.mines.edu/hjjou/linux_old.html  Scientific Apps on Linux
Contents:
        * Commercial Scientific Software
        * MatLab Alike and Related Packages
        * Mathematics and Statistics
        * Finite or Boundary Element
        * Numerical Analysis
        * Signal, Communication, Data and Image Processing/Visualization
        * CAD, Graph, Drawing and Modelling Tools
        * Scientific Data Plotting Packages
        * Scientific Data Plotting Libraries
        * General Purpose Graphic Libraries
        * Word Processing, Typesetting And Office Software
        * X-Window GUI Construction
        * Misc Scientific Packages or Libraries and Links
        * Other Links


For a wide variety of links to mathematical and scientific software, see:
http://www-ocean.tamu.edu/~baum/linuxlist-m.html  S. Baum's site

===================================

q160.1. C++ Resources for NA

Ajay Shah's index of resources for NA in C or C++
http://www.math.psu.edu/FAQ/numcomp-free-c.txt  Ajay Shah's C++ Resources
ftp://usc.edu/pub/C-numanal/numcomp-free-c.gz  Ajay Shah's C++ Resources via ftp
ftp://ftp.math.psu.edu/pub/FAQ/numcomp-free-c  Ajay Shah's C++ Resources via ftp

The Object-Oriented Numerics Page
http://monet.uwaterloo.ca/blitz/oon.html  Object-Oriented NA
Pointers to C++ libraries and classes.

Also see q590, "Skip Carter's Home Page".

Also see Roldan Pozo's page:
http://math.nist.gov/acmd/Staff/RPozo/index.html  Pozo's page

Also see Joerg Arndt's web page on FFT code, at
q240, "Transforms (FFT, etc) and digital signal processing (DSP)"

===================================

q160.2. Math FAQ

The sci.math FAQ by Alex Lopez-Ortiz is a good reference for
many mathematical questions.  It is more oriented towards
pure mathematics than NA.
http://daisy.uwaterloo.ca/~alopez-o/math-faq/math-faq.html  Alex Lopez-Ortiz's list 
ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/sci-math-faq/  Alex Lopez-Ortiz's list via ftp

===================================

q160.3. Math Dictionary

For an on-line mathematics dictionary, see:
http://www.gps.caltech.edu/~eww/math/math.html  Eric's Treasure Trove

===========================================================================

q165. Books, With and Without Software, for NA

See also specific subject areas in this FAQ
at q80, "NA FAQ: Table of Contents".

For an on-line mathematics dictionary, see:
q160.3, "Math Dictionary".


Petkovsek, Marko; Wilf, Herbert; Zeilberger, Doron.  1995
   "A=B"
   Publisher: AK PETERS, Ltd., 289 Linden Street, Wellesley, MA 02181
   Telephone to (617) 235-2210.  $39.
   ISBN 1-56881-063-6
[Donald Knuth]  Science is what we understand well enough
to explain to a computer.  Art is everything else we do.
During the past several years an important part of
mathematics has been transformed from an Art to a
Science: No longer do we need to get a brilliant insight in order to
evaluate sums of binomial coefficients, and many similar formulas that
arise frequently in practice; we can now follow a mechanical procedure
and discover the answers quite systematically.

I'm especially pleased to see the appearance of this book, because its
authors have not only played key roles in the new developments, they
are also master expositors of mathematics. It is always a treat to
read their publications, especially when they are discussing really
important stuff.

Science advances whenever an Art becomes a Science. And the state of
the Art advances too, because people always leap into new territory
once they have understood more about the old. This book will help you
reach new frontiers.


Acton, Forman S.  1990
   Numerical methods that [usually] work
   Harper & Row, Publishers
   ISBN 0883854503.

[Daniel Pick] This book is almost worth its price just for the cathartic
interlude in the middle of the book on what not to compute.  You should
require your students to read it, learn it, live it.  You may find just
giving them the railroad problem found at the beginning of the book a
worthwhile exercise. [Bill Frensley] Amen, brother! The only complaint
that I have about Acton's interlude is that after demolishing the notion
of "fitting exponential data," he fails to point out that this is the
inverse Laplace transform problem.  Perhaps if everyone read this and
made the connection, we would be spared the monthly "is there any good
algorithm for the inverse Laplace transform?"


Golub, Gene H.; Van Loan, Charles F.  1996
   Matrix Computations, Third edition
   Johns Hopkins, Baltimore
   ISBN 0-8018-3739-1
   Telephone: 410-516-6900

[SJS] A classic for handling matrices.  Many current programs
are based on this text.  Good mix of theory and implementation.


Golub, Gene H.  1984
   Studies in Numerical Analysis
   Mathematical Association of America
   ISBN 0883851261.

[Daniel Pick] This contains several outstanding essays from several
numerical analysts, including Wilkinson's The Perfidious Polynomial,
which explains why rootfinding of polynomials numerically is such a
tricky problem.  It gives an great introduction to the thinking of
recent numerical analysts. [Amara Graps] All of the chapters are really
good- my favorites are: "Fast Poisson Solvers" and "Multigrid Methods
for Partial Differential Equations."


Dahlquist, Germund; Bjorck, Ake  1974
   Numerical Methods
   translated by Ned Anderson, Prentice-Hall, 1974.

A nice mix of theory and practice.
Used as a text at Stanford, among other places.[John Chandler]


Forsythe, George; Moler, Cleve B. 1967
   "Computer Solution of Linear Algebraic Systems"
    Prentice-Hall

I consider this possibly the best textbook I have ever seen
in any field.  Covers only linear systems, of course.[John Chandler]


Kahaner, David; Moler, Cleve; Nash, Stephen. 1989
   Numerical Methods and Software
   Prentice Hall, Englewood Cliffs, NJ
   ISBN 0-13-627258-4
   Telephone: 800-947-7700

An excellent book which touches on a variety of topics and makes
use of the publicly available software like the QUADPACK and SLATEC
libraries to illustrate the points. [Vijay Gupta]


Knuth, Donald E. 1981
   Seminumerical algorithms, 2nd edition.
   Addison-Wesley.

Once was the reference; now a bit dated.


Lau, H. T. 1995
   A Numerical Library in C for Scientists and Engineers
   CRC Press, Boca Raton, FL
   ISBN 0-8493-7376-X
   Telephone: 407-994-0555

This book is basically a compilation of program listings,
with a diskette containing source code.  The listings
are accompanied by brief overviews of the algorithms
involved, and generally include references.  There is
no discussion of theory.  While the text by Stoer & Bulirsch is at
the theoretical end of the NA spectrum, this text is at the
application end.  Although the program calling parameters
are well described, as far as I could see the programs
contain no internal documentation whatsoever.
Although this book is copyright 1995,
the references contain one source dated 1992 (Press et al's volume),
one source dated 1981 (NUMAL in Fortran), and one source dated
1980 (NUMAL in Algol).  The remainder of the references
are dated 1976 and earlier.  It's not clear to me that this book
offers anything over Press et al's text.  Lau has far less discussion of
theory and methodology, and while Press's internal documentation
of programs is poor, Lau's book has none whatsoever.  [SJS]



Mathews, John H.  1992
   NUMERICAL METHODS: for Mathematics, Science & Engineering
   Prentice Hall, Englewood Cliffs, NJ
   ISBN 0-13-624990-6  and
   ISBN 0-13-625047-5

   Source for the programs is available in several languages:
ftp://ftp.mathworks.com/pub/books/mathews/matlab   Matlab (ftp)
ftp://ftp.mathworks.com/pub/books/mathews/c   C (ftp)
ftp://ftp.mathworks.com/pub/books/mathews/fortran   Fortran (ftp)
ftp://ftp.mathworks.com/pub/books/mathews/pascal   Pascal (ftp)
ftp://ftp.wri.com/pub/Publications/BookSupplements/Mathews-1996/   Mathematica (ftp)
http://www.wri.com/MathSource/Publications/BookSupplements/Mathews-1996/0207-874  Mathematica (http)


Press, William H.; Teukolsky, Saul A.;  Vetterling, William A.;
   Flannery, Brian P. 1992
   Numerical Recipes in C, Second edition
   Cambridge University Press, Cambridge and New York
   ISBN 0-521-43108-5 Text
   ISBN 0-521-43720-2 Example book
   ISBN 0-521-43714-8 PC diskette, 5.25 inch
   ISBN 0-521-43724-5 PC diskette, 3.5 inch
   ISBN 0-521-43715-6 Mac diskette, 3.5 inch
   Telephone: 212-924-3900, 800-872-7423

Seperately purchasable diskette contains C source code.
A compendium of a wide variety of NA areas.  Contains some
good introductions to theory and overviews of algorithms.
The bridge from algorithm overview to implementation
is often missing.  The programs should be viewed with
some skepticism.  They are often poorly documented, and some users
have reported numerical problems with the various programs. [SJS]
Additional information may be at:

http://nr.harvard.edu/numerical-recipes  Numerical Recipes
ftp://ftp.std.com/vendors/Numerical-Recipes  Numerical Recipes via ftp
email: nr@nr.com

Some Numerical Recipes Reviews are at:
http://www.lysator.liu.se/c/num-recipes-in-c.html  N.R. Review
http://math.jpl.nasa.gov/nr  N.R. Reviews


Sedgewick, Robert. 1988
   Algorithms, Second edition
   Addison-Wesley, Reading, Mass
   ISBN 0-201-06673-4
   Telephone: 617-944-3700, 800-822-6339


Stoer, Josef; Bulirsch, Roland 1980
   Introduction to Numerical Analysis
   Springer-Verlag, New York, 1980
   ISBN 0-387-90420-4
   Telephone: 212-460-1500, 800-777-4643

The classic NA text.  A standard for graduate
and upper undergraduate courses in NA.
Difficult going, but covers a wide set of fields in depth.
Strong theoretical orientation. [SJS]


Strang, Gilbert  1988
   Linear Algebra and It's Applications, Third Edition
   Harcourt Brace, San Diego
   ISBN 0-15-551005-3

A well-written introduction to theory.


Watkins, David S. 1991
   Fundamentals of Matrix Computations
   John Wiley, New York, 1991.
   ISBN 0-471-61414-9
   Telephone: 212-850-6000, 800-225-5945

More readable than Stoer & Bulirsch or Golub & Van Loan, and contains
some implementation techniques not present in Golub & Van Loan.
Has good descriptions of theory and implementations,
and many implementations are covered as straightforward exercises.
Not as wide a variety of fields as either Golub & Van Loan or
Stoer & Bulirsch. [SJS]


Dubois, Paul.  1996
   Object Technology for Scientific Computing
   Object-Oriented Numerical Software in Eiffel and C
   Prentice Hall, 1996, paper, 350 pages
   ISBN 0-13-267808-X
   Comes with CD-ROM
   Price: $40.00 



Nash, John C., 1987, 1996
   Nonlinear Parameter Estimation: an integrated system in BASIC
   Sample chapters and portions of the code are at:
http://www.nashinfo.com/~nis/  Nash's Sample Chapters



Baker, Louis.  1991
C Mathematical Function Handbook

### many others!


===========================================================================



q205. Dense (Non-Sparse) Linear Algebra Systems

The best resources for linear algebra are:

The texts by Golub & Van Loan and by Watkins.

On the net, library package LAPACK, with BLAS, from netlib
(see q115.1, "Netlib") is a widely recommended replacement
for EISPACK and LINPACK.  It handles dense matrices only.

As far as complete packages, nearly all NA packages, both on
the net and commercial, include linear algebra as part of their
core.  See the listings above.

===================================

q207. Sparse Linear Algebra Systems

Netlib (see q115.1, "Netlib") has a number of libraries
for handling sparse systems.  See the netlib directories:
sparse, sparse-blas, sparsepak.

[N. Sukumar]:
Recommends the TEMPLATES book ["TEMPLATES for the soln of linear systems:
building blocks for iterative methods"] that is availabe in postscript
format at netlib. Also in the same dir is code (in C and Fortran)
for algorithms discussed in the book.  "The book is awesome
(easy to read, good pointers on selection of solvers etc.),
especially for one who is not aware of how and why
sparse solvers work."
netlib, in the directory: templates

[N. Sukumar] also recommends:
The sparse package SPARSKIT which also has the solvers
built-in; there are many other feature in addition [matrix conversion/
formatting, plotting, statistics etc].
ftp://ftp.cs.umn.edu/.archive2/users/saad/SPARSKIT  U. Minnesota SPARSKIT
ftp://ftp.cs.umn.edu/.archive2/sparse/SPARSKIT2  U. Minnesota SPARSKIT
ftp://icarus.riacs.edu/pub/SPARSKIT  U. Minnesota SPARSKIT


===========================================================================

q210. Random Number Generators (RNGs)


        * q210.1, "Web Sites for Random Number Generators"
        * q210.2, "References for Random Number Generators"
        * q210.3, "Types of Random Number Generators"
        * q210.6.1, "Linear Congruential Generators (LCG)"
        * q210.6.2, "Add-with-carry and Subtract-with-borrow Generators (AWCG, SWBG)"
        * q210.6.3, "Multiply-with-carry Generators (MWCG)"
        * q210.6.4, "Inversive Conguential Generators (ICG)"
        * q210.7, "Tests for Randomness"


===================================

q210.1. Web Sites for Random Number Generators

ftp://odin.mda.uth.tmc.edu/pub/source  RANLIB

pLab is an excellent web site created by the Department
of Mathematics at the Salzburg University.  It covers
RNGs and tests for randomness, and contains publications,
software, and pointers to other resources.  Use either:
http://random.mat.sbg.ac.at/  Salzburg Dept. Mathematics
http://www.mat.sbg.ac.at/home.html  Salzburg Dept. Mathematics

Additional services may be available from pLab -- see:
http://random.mat.sbg.ac.at/team pLab Overview

Another web page with info on RNGs is Skip Carter's page at Taygeta:
http://www.taygeta.com/random.html  Skip Carter's page

See also the Diehard page, described at:
q210.7, "Tests for Randomness"

Also see Pierre L'Ecuyer's papers:
http://www.iro.umontreal.ca/people/lecuyer/papers.doc L'Ecuyer
ftp://ftp.iro.umontreal.ca/pub/simulation/lecuyer/papers L'Ecuyer ftp

Info on 1/f noise, called "flicker noise" or "pink noise", is at:
http://linkage.rockefeller.edu/wli/1fnoise   Wentian Li's site
===================================

q210.2. References for Random Number Generators

References:


V.S.Anashin. Uniformly distributed sequences over $p$-adic integers. - In:"
Number Theoretic and Algebraic Methods in Computer Science. Proc. Int'l Conf.
Moscow, June - July 1993". Alf J van der Poorten, Igor Shparlinsky and Horst G.
Zimmer - editors. Published by World Scientific, 1995.  Pp. 1 -18.

Anashin, V. S., Uniformly distributed sequences of $p$-adic integers
(Russian), Mat. Zametki 55 (1994), no. 2, 3--46, 188; MR 95f:11096 There is
an English translation of this paper made by Plenum Publ. Corp.

Anashin, V.S. Uniformly distributed sequences in computer algebra or how to
construct random number generators.  Translated from
Itogi Nauki i Tekhniki, Seria Sovremennaya Matematika i Ee
Prilozheniya. Tematicheskie Obzory, Vol.
31, Computing Mathematics and Cybernetics - 2, 1995.  1072 - 3374/96/0000 -
0001. Plenum Publisning Corp., 1996

Anashin, V. S., Solvable groups with operators and commutative rings having
transitive polynomials (Russian), Algebra i Logika 21 (1982), no. 6,
627--646; MR 85d:20028

Law, Averill M, and Kelton, W. David. 1991
   Simulation Modeling & Analysis, Second edition
   McGraw Hill, New York

Banks, Jerry.  Handbook on Simulation
   Wiley.

Bratley, P., Fox, B.L. & Schrage, L.E. 1987
   A guide to simulation, 2nd edition
   Springer

Devroye, Luc. 1986
   Non-uniform random variate generation
   Springer-Verlag, New York
[SJS] This is the most complete book I've found on generating non-uniform
random values.

L'Ecuyer, Pierre. Random numbers for simulation. Comm. ACM 33, 85-97 (1990) .

L'Ecuyer, Pierre. Uniform random number generation. 
Annals of operations research 53 (1994), 77.

Marsaglia, George. JACM 12 (1965), 83-89.

Marsaglia, George.  "Random numbers fall mainly in the planes",
Proc. Nat. Acad. Sciences USA, 61 (1968), 25-28.

Marsaglia, George.  "Remarks on choosing and implementing
random number generators",  Communications of the ACM v 36
n 7 (July 1993), p 105-107.

Marsaglia, George and Zaman, Arif.  "A new class of
random number generators".  The annals of applied
probability 1, 3, (1991), p. 462-480.

Motwani, Rajeev  and Raghavan, Prabhakar   1995
   Randomized Algorithms
   Cambridge University Press

Sullivan, Stephen.  "Another test for randomness",
Communications of the ACM 36, 7 (July 1993), p 107.

Tezuka, Hsh, L'Ecuyer, Pierre, and Couture, Raymond.
"On the lattice structure of add-with-carry and subtract-with-
borrow random number generators", ACM Trans on Modeling and
Computer Simulation 3, 4 (October 1993), p. 315-331.


Still more references, courtesy of [Ripley]:

James, F. (1990) A review of pseudorandom numbers. Comp.
Phys. Comm. 60 329--344.


Morgan, B.J.T. (1984) Elements of simulation. Chapman & Hall.

Ripley, B.D. (1983) The computer generation of random variables
- a tutorial. Int. Statist. Rev. 51 301--319.

Ripley, B.D. (1987) Stochastic Simulation. Wiley, New York

Ripley, B.D. (1990) Thoughts on pseudorandom number generators.
J. Comput. Appl. Math. 31, 153--163.
A revised version of the last is available by anonymous ftp from
ftp://markov.stats.ox.ac.uk/pub/simul/simul/prng.ps.Z  Ripley's Paper

Eichenauer-Herrmann, J. (1992) Inversive congruential pseudorandom
numbers: a tutorial. Int. Statist. Rev. 60, 167-176


===================================

q210.3. Types of Random Number Generators

Random number generators typically consist of three components:
        * The basic generator, described further below.
        * Some generators contain a shuffle box.  First described
        in Marsaglia 1965.  Also described in Knuth 1981 and Press et al 1992.
        * A transformation to the desired probability distribution.
        See Press et al 1992 or, better yet, Law 1991 or Devroye 1986.
        Thisted's text as well? ###

There are four common types of basic generators.
        * q210.6.1, "linear congruential (LCG)"
        * q210.6.2, "add-with-carry and subtract-with-borrow (AWCG, SWBG)"
        * q210.6.3, "multiply-with-carry (MWCG)"
        * q210.6.4, "inversive conguential (ICG)"

===================================

q210.6.1. Linear Congruential Generators (LCG)

Linear congruential generators are of the form
x(n) = a * x(n-1) + b  mod M
A good discussion of this type is in the text by Press et al.
These are by far the most common form in use, and have periods
in the range 10^6 to 10^9 when using 32 bit words.  Unfortunately,
they have some unpleasant properties.  When taken in pairs,
triplets, or n-tuples, the random values often fall on only
a few planes in n-space.  Using a shuffle box can
break up this uniformity.  For more information on the
problems associated with linear congruential generators,
see Marsaglia 1968, Marsaglia 1993 and Sullivan 1993.
See also Marsaglia's web site, described under
q210.7, "Tests for Randomness".


===================================

q210.6.2. Add-with-carry and Subtract-with-borrow Generators (AWCG, SWBG)

Add-with-carry generators have the form:

x(n) = x(n-s) + x(n-r) + carry  mod M

Subtract-with-borrow generators have the form:

x(n) = x(n-s) - x(n-r) - carry  mod M

See Marsaglia 1991.
These generators have much longer periods, from 10^200 to 10^500,
than LCGs, and they are almost as fast as LCGs.
Unfortunately they too have the problem of falling
mainly on the planes.  See Tezuka 1993.
Again, a shuffle box, as described in Press et al, can eliminate
this problem.
The implementation by Marsaglia and Zaman may be found at:
ftp://ftp.wustl.edu/systems/ibmpc/msdos/math/fsultra1.zip  Marsaglia


===================================

q210.6.3. Multiply-with-carry Generators (MWCG)

Multiply-with-carry generators have the form:

x(n) = a*x(n-1) + carry  mod M

[George Marsaglia]:
Here is a simple version, one so simple and good I predict
it will be the system generator for many future computers:

x(n)=a*x(n-1)+carry mod 2^32

With multiplier 'a' chosen from a large set of easily found
integers, the period is a*2^31-1, around 2^60, and
I have yet to find a test it will not pass!

[Charles Knechtel]:
George Marsaglia has some interesting new ideas for pseudorandom number 
generation using MWCG and MWCG combined with other pseudorandom number 
generators (RNGs); these new ideas are implemented as part of the Diehard 
suite of RNG tests.  The best of these seem to pass 
all the Diehard tests, even tests that many common pseudorandom number 
generators fail.
Source is at:
ftp://stat.fsu.edu/pub/diehard   Diehard
Also see:
http://stat.fsu.edu/~geo/diehard.html  Diehard documentation


===================================

q210.6.4. Inversive Conguential Generators (ICG)

Inversive congruential generators are of the form

   x(n) = a * ~(x(n-1)) + b    mod M
   where:
   M is prime
   "~y" denotes the multiplicative inverse of y in
   the field over {0, 1, ..., M-1} using arithmetic modulo M,
   and ~0 is 0.

ICGs do not have the "mainly in the planes" problem.
See the pLab, described above at
q210.1, "Web Sites for Random Number Generators",
for more info on ICGs.

[Charles Knechtel]:
Marsaglia's Diehard suite of RNG tests, at
q210.7, "Tests for Randomness"
also contains a subroutine named 
makeinvc which implements an ICG and generates a file of pseudorandom 
numbers named INVCONG.32; however, examination of the FORTRAN source code 
for makeinvc shows that a modulus M equal to 2^32 was used (see file 
makewhat.f.  Eichenauer-Herrmann (1992, p. 173, 175) notes that 
certain ICGs with power of two modulus have distributional disadvantages 
compared to the "excellent quality" of ICGs with prime modulus.  Indeed, 
the documentation for INVCONG.32 remarks that makeinvc fails to pass many 
of the Diehard tests (see the last section of file makef.txt from
the Diehard archive fortran.tar.gz.  An ICG with prime 
modulus should have better uniform properties than makeinvc, and Otmar 
Lendl's ICG implementation might be speedier than makeinvc.

===================================

q210.7. Tests for Randomness


The Diehard suite of RNG tests, by George Marsaglia, is available
with a rotating 3-D graph showing the collinearities of
tuples from:
http://stat.fsu.edu/~geo/diehard.html  Diehard overview
For snapshots of some of the graphs, see:
http://euler.bd.psu.edu/~naras/diehard/snapshots.html Diehard snapshots
For just the source or executables, use:
ftp://stat.fsu.edu/pub/diehard/  Diehard source

A GUI version of Diehard is in preparation by Dr. Balasubramanian 
Narasimhan at:
http://stat.stanford.edu/~naras/diehard/snapshots.html  Diehard GUI

Also see pLab, described above at
q210.1, "Web Sites for Random Number Generators",
for descriptions of some tests.


===========================================================================


q215. Function Evaluation

Point to some sources in netlib, statlib and elsewhere?

If you'd like to write a paragraph for the FAQ on function evaluation,
please contact me ...

===========================================================================

q220. Finding Roots

This is a standard topic in nearly all general texts on NA.

If you'd like to write a paragraph for the FAQ on finding roots,
please contact me ...

===========================================================================

q230. Curve Fitting, Data Modelling, Interpolation, Extrapolation

This vague heading covers a multitude of closely related endeavors.
There are many approaches, described in the following sections.

        * q230.1, "Interpolation"
        * q230.2, "Statistical Curve Fitting"
        * q230.4, "Time series analysis"
        * q230.6, "Splines"
        * q230.7, "Nearest Neighbor algorithms"
        * q230.8, "Fitting a circle to a set of points"

Other approaches to data modelling are:

        * q550, "Neural Networks".
        * q245, "Wavelets".


===================================

q230.1. Interpolation

For one dimensional work, see Stoer & Bulirsch 1980 or Press et al 1992.
No doubt some of the techniques described there can
be found in netlib (see q115.1, "Netlib") by using the NIST guide
(see q110.1, "Indices of NA Software").

For greater than or equal one dimensions, some references are:

Dave Watson's home page:
http://maths.uwa.edu.au/~watson/homepage.html  Dave Watson

Watson, Dave  1992
Contouring: A guide to the analysis and display of spatial data,
Pergamon Press
ISBN 0 08 040286 0
Text includes a floppy with source code in Basic (sigh).  Subject areas:
isoline maps, isochor maps, methodology, data sorting, subset selection,
local coordinates, binary local coordinates, barycentric coordinates,
rectangular local coordinates, natural neighbour coordinates,
gradient estimation, least squares gradients, least squares quadratics,
spline gradients, cross product gradients, neighbourhood-based gradients,
interpolation, inverse distance weighting, inverse distance weighted
gradients, minimum curvature splines, neighbourhood-based interpolation,
selected references to contouring literature

[Dave Watson] writes:
Linear triangle-based interpolation
is quick and dirty - probably the best compromise available if you are
in a hurry.  Natural neighbor interpolation is much slower but does
provide a result that most people consider to be closest to that which an
experienced manual draftsman would generate.
The 'kriging' method is a
variation on the splines technique - the main difference being that a
subjectively selected probabilistic function is used rather than one of
the analytically derived radial basis functions.  This class of method
generates discontinuities at points where the interpolation subset
changes, and kriging attempts to ameliorate this effect be recomputing
the coefficients for each interpolation point - this makes it very slow.

Interpolation on spheres:
See the FAQ by Dave Rusin:
http://www.math.niu.edu/~rusin/known-math/spheres/index.html  Rusin's FAQ
ftp://math.niu.edu/pub/papers/Rusin/known-math/spheres/sphere.faq  Rusin's FAQ via ftp


See also the comp.graphics.algorithms FAQ:
http://www.cis.ohio-state.edu/hypertext/faq/usenet/graphics/algorithms-faq  graphics FAQ



Software:

[Albrecht Preusser] wrote:
You could take routines from ACM Alg. 624 "Triangulation and Interpolation
of Arbitrarily Distributed Points in the Plane" by Robert J. Renka.
This Algorithm is available from netlib (see q115.1, "Netlib")
in the toms directory.
Another algorithm in FORTRAN is contained in Akima's ACM Alg. 526,
it is faster, but takes much more memory. By the way, I have developed
methods based on the Delaunay Triangulation from both algorithms for
computing nonlinear contours and nonlinear interpolation, which are
published as ACM Alg. 626 and 684.

Spatial and Geometric Analysis toolbox (SaGA) -
a MATLAB package for various aspects of spatial data
interpolation and analysis and geometric modeling.
It is available at:
http://puddle.mit.edu/~glenn/kirill/saga.html  Glenn Kirill


===================================

q230.2. Statistical Curve Fitting

See also: q505, "Probability and Statistics".


Books

Jobson, J.D.
Applied Multivariate Data Analysis, volumes 1 and 2.
Springer-Verlag, New York. 1991.

Johnson, Richard A.; Wichern, Dean W.
Applied Multivariate Statistical Analysis, Third Edition

[Ramin Samadani] writes:
I like the book by Lawson and Hanson, solving
least squares problems. I think its supposed to be back in print now or soon.
Lawson, Charles L.; Hanson, Richard J.
Prentice-Hall, Englewood Cliffs, N.J. 1974

Press et al 1991 also has a description of the field.


### Need a review of Marquardt-Levenberg algorithms.  Anybody
want to write a paragraph?



Software

ODRPACK, from netlib
[author]:
ODRPACK is a portable collection of Fortran subprograms
for fitting a model to data.  It is designed primarily for
instances when the explanatory as well as the response variables
have significant errors, implementing a highly efficient
algorithm for solving the weighted orthogonal distance regression
problem, i.e., for minimizing the sum of the squares of the weighted
orthogonal distances between each data point and the curve described
by the model equation.

===================================

q230.4. Time series analysis

Time series analysis may be used for some types of data.
See:

Brockwell, Peter J.; Davis, Richard A.  1991
Time Series: Theory and Methods, Second Edition
Springer-Verlag, New York.
ISBN 0-387-97429-6
[SJS]: Beautiful approach with emphasis on theory.
Emphasis on the linear model.

Hamilton, James D.  1994
Time Series Analysis
Princeton U. Press, Princeton, NJ
ISBN 0-691-04289-6
[SJS]: Applied approach, with heavy emphasis on applications from
economics.  Not having an economics background is a detriment in
reading this text.  Broad mix of models.

Montgomery, Douglas C. / Forecasting and time series analysis (1990)

Pankratz, Alan / Forecasting with Univariate Time Series Models: 
        Concepts and Cases / (1983) / good, clear 

Vandaele, Walter / Applied Time Series and Box-Jenkins Models (1983) / 
        / good; pedagogical and practical 


Also see q115.3, "Statlib".

Also see q505, "Probability and Statistics".

### others?

===================================

q230.6. Splines

Useful for modelling single and multiple dimensional data.

Books:

de Boor, Carl  1978
   A Practical Guide to Splines
   Springer-Verlag, New York.
   ISBN 0-540-90356-9
[Tim Strotman]: Provides an excellent blending of theory
and practical implementation.

Dierckx, Paul  1993
   Curve and surface fitting with splines
   Clarendon Press, Oxford England and New York
   ISBN 0198534418

Farin, Gerald E.  1995
   NURB curves and surfaces : from projective geometry to practical use
   Wellesley, Mass. : A.K. Peters
   ISBN 1568810385 :

Farin, Gerald E.  1993
   Curves and surfaces for computer aided geometric design : a practical
   guide, third edition.
   Boston : Academic Press

Nurnberger, Gunther  1989
   Approximation by Spline Functions
   Springer-Verlag, Berlin
   ISBN 3-540-51618-2 Berlin
   ISBN 0-387-51618-2 New York

Piegl, Les; Tiller, Wayne  1995
   The NURBS Book
   Springer-Verlag, New York.
   ISBN 0-387-55069-0
[Tim Strotman]: Provides an excellent blending of theory
and practical implementation.

Spath, Helmuth  1995
   One Dimensional Spline Interpolation Algorithms
   A.K. Peters, Wellesley, MA
   ISBN 1-56881-016-4


Software:
A search of the NIST guide (see q110.1, "Indices of NA Software")
turns up numerous references.

===================================

q230.7. Nearest Neighbor algorithms

Books:

Dasarathy, Belur V.  1991
Nearest Neighbor (NN) Norms: NN Pattern Classification Techniques
IEEE Computer Society Press, Los Alamitos, CA

[SJS]: Excellent.


Other references:

The following Technical Reports are available from the International
Computer Science Institute via anonymous FTP from
ftp.ICSI.Berkeley.EDU  Berkeley Tech Reports
   tr-89-063.ps.Z Five Balltree Construction Algorithms
   tr-90-001.ps.Z The Delaunay Triangulation and Function Learning

Teillaud, Monique
   Towards Dynamic Randomized Algorithms in Computational Geometry
   Lecture Notes in Computer Science 758
   Springer-Verlag

Mulmuley, K.; Sen, S.
   Dynamic point location in arrangements of hyperplanes
   7th ACM Symposium of Computational Geometry in North Conway 1991

M. Dickerson, R. L. Drysdale and J.-R. Sack
   Simple algorithms for enumerating interpoint distances
   and finding k nearest neighbors.
   Internat. J. Computational Geometry & Applications 2:3 (1992) 221--239.

P. B. Callahan and S. R. Kosaraju
  A decomposition of multi-dimensional point-sets with
  applications to k-nearest-neighbors and n-body potential fields.
  24th ACM Symp. Theory of Computing, 1992, 546--556.

M. T. Dickerson and D. Eppstein
   Algorithms for proximity problems in higher dimensions.
   Comp. Geom. Theory & Applications, to appear.

P. M. Vaidya
   An $O(n \log n)$ algorithm for the all-nearest-neighbors
   problem.
   Discrete and Computational Geometry 4 (1989) 101--115.


===================================

q230.8. Fitting a circle to a set of points

Problem: Given N Points: (x1,y1); (x2,y2).. (xN,yN), we want to find for
best-fit circle: (X0,Y0), R. (Note: for fitting an *ellipse*, substitute
the equation for an ellipse for the equation for a circle in the "Brute
Force Approach").


Brute Force Approach (leads to a non-linear system): [Amara Graps]


Idea: Minimize by least squares the root-mean-squared error of the radius
in the equation for a circle. In this method, one minimizes the sum of
the squares of the *length* differences, which gives you a non-linear
problem with all the associated pitfalls.

   (x-X0)^2 + (y-Y0)^2 = R^2   Equation for a circle
   R = SQRT[ (x-X0)^2 + (y-Y0)^2)  ]     Radius of the circle

where:
   (X0,Y0) = center of circle
   (x,y) = point coordinates
   R = radius

1) Get first estimate for (X0,Y0,R).

(Details: Find some points to make first estimates- either solve the
circle exactly (3 equations, 3 unknowns) to get a first estimate of the
center and radius, or just do a kind of centroid calculation on all
points- to get a rough estimate of the center and radius.)

2) Calculate r (r1, r2,.. rN) for each of your N points from the equation
for a radius of a circle.

3) Calculate the root-mean-squared error
For example, for 5 given points on the circle:

RMS error = SQRT[ [ (r1-R)^2 + (r2-R)^2 + (r3-R)^2 + (r4-R)^2
                  + (r5-R)^2] / 3 ]

(dividing by "3" because we have 3 free parameters.)

4) Change (X0,Y0,R) slightly in your minimization algorithm
to try a new (X0,Y0,R).

(Details: Because minimization algorithms can get very computationally
intensive, if one's problem is a simple one, I would look for a "canned"
minimization routine. Some commercial computer programs for plotting and
spreadsheets do this sort of thing. For example, the Excel spreadsheet
has a built-in "solver" that will perform minimzation. Other
possibilties for software: Matlab with the optimization toolbox,
MACSYMA, ODRPACK from Netlib, and the recent L-BFGS-B package
which allows you to specify bounds on the variables, from:
ftp://eecs.nwu.edu/pub/lbfgs  L-BFGS-B

5) Calculate r (r1, r2 etc.) again from new (X0,Y0,R) above.

6) Calculate RMS error again.

7) Compare current RMS error with previous RMS error. If it
doesn't vary by more some small amount, say 10^{-3} then
you're done, otherwise continue steps 4 -- 7.

Other References:
Berman & Somlo: "Efficient procedures for fitting circles..." IEEE
Instrum & Meast., IM-35, no.1, pp. 31-35, 1986. [Peter Somlo]


Other (more elegant) approaches that reduce to a linear system.

If you choose to minimize the squares of the *area* differences, you get
a linear problem, which is a much safer way. [Pawel Gora, Zdislav V.
Kovarik, Daniel Pfenniger, Condensed by Amara Graps]

1. Function to minimize is (sum of the area differences):
   Q = Sum { [ (xi - X0)^2 + (yi -Y0)^2 - R^2 ]^2 , i=1..N }

2. A necessary condition is the system of 3 equations with 3 unknowns
   X0, Y0, R. Calculate the partial derivatives of Q, with respect to
   X0, Y0, R. (all d's are partial)

   dQ / dX0 = 0
   dQ / dY0 = 0
   dQ / dR = 0

3. Developing we get the linear least-squares problem:

   | x1 y1 1 | | a |    | -x1^2-y1^2 |
   | x2 y2 1 | | b | =~ | -x2^2-y2^2 |
   | x3 y3 1 | | c |    | -x3^2-y3^2 |
   | x4 y4 1 |          | -x4^2-y4^2 |
   | x5 y5 1 |          | -x5^2-y5^2 |
     .....               .........
   (for example, for 5 points)

where  a = 2 X0; b = 2 Y0 ; c = X0^2 + Y0^2 - R^2.
Take any good least-squares algorithm to solve it, yielding a,b,c.
So the final circle solution will be given with
X0 = a/2; Y0 = b/2; R^2 = X0^2+Y0^2 - c.

By the way, with 5 points you can also find the unique quadratic form
(ellipse, hyperbola) which passes exactly through 5 points.
With more than 5 points one can do a linear least-squares as well.
The problem is then to minimize:

   | x1^2-y1^2 x1y1 x1 y1 1 | | a |    | -x1^2-y1^2 |
   | x2^2-y2^2 x2y2 x2 y2 1 | | b | =~ | -x2^2-y2^2 |
   | x3^2-y3^2 x3y3 x3 y3 1 | | c |    | -x3^2-y3^2 |
   | x4^2-y4^2 x4y4 x4 y4 1 | | e |    | -x4^2-y4^2 |
   | x5^2-y5^2 x5y5 x5 y5 1 | | f |    | -x5^2-y5^2 |
     .....                                .........

There are Fortran programs  fcircle.f,
fellipse.f and the Lawson & Hanson least-squares routines ls.f showing
how to implement these least-squares problems at:
ftp://obsftp.unige.ch/fit  Circle Programs


The robust or L1 or least-first-power approximation [Zdislav V. Kovarik].


If you try to minimize

   W(a,b,r) = SUM(j=1:N) ABS (((x_j-a)^2 + (y_j-b)^2)^(1/2) - r)

all you have to do is set up the 10 (i.e. if 5, choose 3) circles passing
through every choice of 3 of 5 points, calculate W(a,b,r) for each of
them and pick the minimizing circle. The extra feature is that this
procedure separates and discards points which are conspicuously far from
the majority trend. (Of course, it becomes increasingly time-consuming
when the number of given points increases.)

[Amara Graps] This method of determining the minimum bounding circle from
a set of _circles_ is solved, and with code available at:
http://www.intergalact.com/circles.html  Sky Coyote

===========================================================================

q240. Transforms (FFT, etc) and digital signal processing (DSP)

FFTs are a standard part of nearly every NA package.
For more info:

See the comp.dsp FAQ:
http://dsp.ee.adfa.oz.au/sigproc.html           comp.dsp FAQ
ftp://evans.ee.adfa.oz.au/pub/dsp/comp.dsp.faq  comp.dsp FAQ via ftp

Newsgroup: comp.dsp

See also Frigo and Johnson's library of FFT software:
http://theory.lcs.mit.edu/~fftw Frigo and Johnson's library
[author]:
FFTW is a C library for performing Discrete Fourier Transforms
in one or more dimensions.  We have performed extensive benchmarks
of the speed and accuracy of available FFT software on a variety of
platforms.  The results are available from the web page mentioned above,
and show that FFTW is typically superior to other public-domain
Fourier Transform codes.  It is our hope that these benchmarks will
allow users to intelligently select among the myriad existing FFT software.



See also Dan Cross' page and FFT library:
http://www.intersrv.com/~dcross/fft.html  Dan Cross' page

See also Joerg Arndt's page and his FFT library:
http://www.spektracom.de/~arndt/fxt/fxtpage.html   Joerg Arndt's page


other resources? ###

===========================================================================


q245. Wavelets

[Amara Graps] writes:
Wavelets are functions that satisfy certain mathematical requirements
and are used in representing data or other functions. They have
worked well as an alternative to fourier sine and cosine functions
in data analysis in many different scientific fields.

Some internet resources are:

Dept. of Mathematics at Salzburg University
http://www.mat.sbg.ac.at/~uhl/wav.html  Salzburg U. Mathematics Dept.

An extensive wavelet bibliography list can be found at Mathsoft:
http://www.mathsoft.com/wavelets.html  Mathsoft

A large software list, as well as a bibliography list, can be found at
Steve Baum's site at Texas A&M University:
http://www-ocean.tamu.edu/~baum/wavelets.html  Steve Baum's page

Amara Graps has a good wavelets page on the Web:
http://www.amara.com/current/wavelet.html  Amara Graps' page

Also, she has an introductory paper at:
http://www.amara.com/IEEEwave/IEEEwavelet.html          Amara Graps' paper
ftp://ftp.best.com/pub/agraps/papers/IEEEwavelet.ps.gz  Amara Graps' paper via ftp


Newsletters:
Wavelet Digest.  Subscriptions:
E-mail to wavelet@math.scarolina.edu with "subscribe" as subject.
Preprints, references, and back issues can be obtained from:
http://www.math.sc.edu/~wavelet/  Wavelet Digest
ftp://ftp.math.sc.edu/pub         Wavelet Digest via ftp
gopher://gopher.math.sc.edu       Wavelet Digest via gopher

===========================================================================

q250. Integration and Ordinary Differential Equations (ODEs)

Most of the general NA texts, such as Stoer & Bulirsch 1980, have chapters
on integration techniques.

See also:
Davis, Philip J.; Rabinowitz, Philip  1984
Methods of Numerical Integration
Academic Press, Orlando, Florida
ISBN 0122063600


ODEPACK, from netlib (see q115.1, "Netlib").
[Dave Linder]: Well known and widely used.
Allows error-based adaptive step-size control.

[author] A systematized collection of ODE solvers.  Handles stiff and
nonstiff systems, sparse systems, explicit and linearly implicit
forms.  Fortran IV, double precision.  A single precision version
may be found in sodepack, also in netlib.

RKSUITE, from netlib ode/rksuite (see q115.1, "Netlib")
[Dave Lindner]: Also good.  Allows error-based adaptive step-size control
and easy to use for explicit systems.

[author]: For initial value problem for first order ordinary
differential equations.  A suite of codes for solving IVPs
in ODEs. A choice of RK methods is available. Includes an
error assessment facility and a sophisticated stiffness checker.
Template programs and example results provided.
Supersedes RKF45, DDERKF, D02PAF.


LSODE and DVODE, from netlib (see q115.1, "Netlib"):
[Jean Claude Boettner]  The algorithm is the same but the jacobian
matrix is stored in DVODE allowing better efficiency, especially for big
systems of ODE (100-300 typically in my case). So expect a slow down (2 ?)
when using LSODE.  It might be interesting to test VODEPK (on NETLIB)
with Krylov methods.


See also many other packages in the directory ode, in netlib.


Ernst/Wanner package:
ftp://ftp.unige.ch/pub/doc/math/  Ernst/Wanner

[author]: Separate Fortran codes for stiff, nonstiff, and mechanical systems.
For the description see the book by the authors:
Hairer, Ernst; Norsett; Wanner, Gerhard (1993): Solving Ordinary
Differential Equations. Nonstiff Problems. 2nd edition.
Springer Series in Comput. Math., vol. 8.

===========================================================================

q253. Stochastic Differential Equations

[Sasha Cyganowski]:
I have a library package for Maple called "stochastic" that solves Stochastic
Differential Equations explicitly and also constructs numerical schemes for
them. People can download it from
http://www.cm.deakin.edu.au/~sash/maple.html   Stochastic DE package



===========================================================================

q255. N-Body and Particle Simulation

        * q255.1, "N-Body Simulation Web Sites"
        * q255.2, "N-Body Simulation Software"

===================================

q255.1. N-Body Simulation Web Sites

[Amara Graps] writes:
N-body problems occur in fields such as cosmology, solar system dynamics,
molecular dynamics, and plasma physics.  My summary of
N-body simulation methods contains info on the following methods:
Particle-Particle (PP), Particle-Mesh (PM),
Particle-Particle/Particle-Mesh (P3M), Nested Grid Particle-Mesh (NGPM),
Tree-Code (TC)- Top Down, Tree-Code (TC)- Bottom Up,
Fast-Multipole-Method (FMM), Tree-Code Particle-Mesh (TPM),
Self-Consistent Field (SCF), and the Symplectic Method.  I
also list Internet sites for research groups, some papers,
some code, and other NBody-related links. It is at:

http://www.amara.com/papers/nbody.html          Amara Graps' page
ftp://ftp.best.com/pub/agraps/papers/nbody.txt  Amara Graps' page via ftp

===================================

q255.2. N-Body Simulation Software

NEMO, by Peter Teuben
http://www.astro.umd.edu/nemo/  NEMO
[author] NEMO is an extendible Stellar Dynamics Toolbox. It has various
programs to create, integrate, analyze and visualize N-body and SPH
like systems. In addition there are various tools to operate on
images, tables and orbits, including FITS files to export/import
to/from other astronomical data reduction packages. We also advertise
other software packages , which work on similar problems.

===========================================================================


q260. Partial Differential Equations (PDEs) and Finite Element Modeling (FEM)


        * q260.1, "PDE and FEM Web Sites"
        * q260.2, "PDE and FEM Software on the net"
        * q260.3, "Commercial Packages for FEM"
        * q260.4, "Comparison of Meshing Software Packages"
        * q260.5, "Newsgroups for PDE and FEM"
        * q260.6, "Books and References for PDE and FEM"


===================================

q260.1. PDE and FEM Web Sites

Ian MacPhedran and Roger Young's pages on finite element resources:
http://duke.usask.ca/~macphed/finite/finite.html  FEM Resources
http://www.engr.usask.ca/%7Emacphed/finite/fe_resources/fe_resources.html  FEM Resources

The geometry center at U. of Minnesota:
http://www.geom.umn.edu  U. Minnesota Geometry Center

MGNet at Yale.  MGNet has codes, preprints, virtual proceedings,
a large bibliography, and more dealing with multigrid and/or
domain decomposition methods for solving PDE's.  There has also
been a monthly electronic newslettter for the past 6 years.
http://casper.cs.yale.edu/mgnet/www/mgnet.html    MGNet

Tomasz Plewa's CFD page:
http://www.fges.demon.co.uk/cfd/CFD_codes.html  Plewa's CFD page, U.K.
http://www.math.psu.edu/dna/CFD_codes.html  Plewa's CFD page, USA
http://icemcfd.com/cfd/CFD_codes.html  Plewa's CFD page, USA

Robert Schneiders site on mesh generation.
http://www-users.informatik.rwth-aachen.de/~roberts/meshgeneration.html  Mesh Generation
Large site with info on people, literature, software, and numerous
research efforts worldwide.


For Delaunay triangulation & Voronoi diagram and more geometry
algorithms, including interactive demos and Java source codes, see:
http://ra.cfm.ohio-state.edu/grad/zhao/algorithms/algorithms.html  Ohio State

There is a Maple package for working with PDEs, solving systems of ODEs and
making general changes of variables at:
http://lie.uwaterloo.ca/pdetools.html  U. Waterloo

===================================

q260.2. PDE and FEM Software on the net

PDE and FEM Software on the net:
(See also q270, "Computational Geometry")

        * q260.2.1, "FEMLAB"
        * q260.2.2, "Fec"
        * q260.2.3, "FElt"
        * q260.2.4, "Femlib"
        * q260.2.5, "Kaskade"
        * q260.2.6, "Tri"
        * q260.2.7, "QMG"
        * q260.2.8, "Sinda/Fluint"
        * q260.2.9, "Physica"
        * q260.2.10, "Madpack5"
        * q260.2.11, "Triangle"






===================================

q260.2.1. FEMLAB

http://www.math.chalmers.se/Research/Femlab/  FEMLAB
ftp://ftp.md.chalmers.se/pub/Femlab/          FEMLAB via ftp

[author]: From the Department of mathematics at Chalmers
University of Technology and Gvteborg university.
FEMLAB is an interactive program for the numerical solution of
ordinary and partial differential equations based on the Finite
Element Method in adaptive form with automatic error control.

Femlab is a part of an educational program based on the Leibniz vision
of integration of Calculus, Computation and Application. The
educational program is presented in the texts:
   Computational Differential Equations, Cambridge University Press ,
      to appear 1996
   Introduction to Adaptive Methods for Differential Equations, Acta
      Numerica (1995) pp. 105-158.



===================================

q260.2.2. Fec

ftp://karazm.math.uh.edu/pub/Math  Fec

A collection of finite element libraries in C++

===================================

q260.2.3. FElt

http://www-cse.ucsd.edu:80/users/atkinson/FElt/felt.html  FElt
ftp://cs.ucsd.edu/pub/felt                                FElt via ftp

[author]:
FElt is a free system for introductory level finite element analysis.  FElt
is intended largely as a teaching tool.  At this stage it should be able
to handle most static and dynamic linear analysis problems (structural
and thermal) that you'd find in a one or two term introductory class in
finite element analysis; it also has some capabilities for modal and
spectral analysis.  The FElt element library currently contains fifteen
elements ranging from a simple spring to an 8-node brick.  The main
FElt applications are all built around a single intuitive, powerful,
and easy-to-use input syntax.


===================================

q260.2.4. Femlib

ftp://usc.edu/pub/C-numanal/femlib-1.1.tar.gz  Femlib

Set of C++ classes for finite element work, garbage collection
algorithms, and sparse matrix algorithms.  A bit rough; incomplete
in some areas.

===================================

q260.2.5. Kaskade

ftp://elib.zib-berlin.de/pub/kaskade/3.x          Kaskade in Germany
ftp://elib.zib-berlin.de/pub/kaskade/Manuals/3.x  Kaskade Manuals in Germany
ftp://na.cs.yale.edu/mgnet/Codes/kaskade/3.x      Kaskade in USA

[author]:
The KASKADE 3.1 software package solves 
linear scalar elliptic and parabolic problems in 1, 2, 3 space dimensions
with adaptive finite element methods.

Furthermore, the toolbox includes extensions for handling systems of 
equations and example algorithms for nonlinear methods
used in obstacle, porous media or Stefan problems.

Core of the program is a variety og multilevel/multigrid preconditioners
for the arising linear systems.

This object-oriented code is written in C++ and can
be compiled with Gnu g++, version 2.7.2, and some other compilers.
If you want to compile with  Gnu g++, version 2.6.3, you have to change
the definition of the complex-type in the file general.h.

The program solves the same mathematical problem classes as its predecessor
KASKADE 2.x, which is written in C.

We provided a graphical user interface ZGUI to the numerical program 
based on the interface language Tcl/Tk of j. Ousterhout.

===================================

q260.2.6. Tri

ftp://ftp.cs.cornell.edu/pub/scott/tri  Tri

[author]:
Tripoint was first developed by David Eppstein to triangulate point set
input in two dimensions, following the algorithm in "Provably Good Mesh
Generation" by Bern, Eppstein, and Gilbert[1].   During the summer of 1991,
Scott Mitchell extended the program to triangulate polygonal regions with
holes, again in two dimensions.  The algorithm followed borrows ideas both
from [1] and "Quality Mesh Generation in Three Dimensions" by Mitchell
and Vavasis[2].

Tripoint takes input from text files as the polygon to triangulate.  Output
is also as text files, using the same data format.  Points are represented
by their coordinates, and edges by the indecies of their endpoints.
There is a matlab code front end, called drawmesh.m.  This allows the
graphical input of the input polygon using the mouse, and the display with
zooming of the output triangulation.  There is also matlab code called
dispmesh.m, which allows the displaying of output only.  This allows the
user freedom over how to generate the input.

The algorithm is similar to one in "Provably
Good Mesh Generation"[1].  The main differences include: Tripoint uses
connected component information while generating the quadtree, as in  [2].
Tripoint does not cut dangling acute triangles from the input as a first step
as in [1].  Ideally, as in [2], tripoint would center input verticies in
boxes, and use a very general and easy algorithm for triangulating
individual boxes.  Instead, vertices are not centered, and
the ideal algorithm is used with added special case analysis for boxes near
an input vertex.

Scott Mitchell continues to support tripoint.
We would eventually like to implement a three dimentional algorithm
following [2].


===================================

q260.2.7. QMG

http://www.cs.cornell.edu/home/vavasis/qmg-home.html  QMG

[author]: QMG is free software for fully automatic unstructured finite
element mesh generation in two and three dimensions.  It can generate meshes
for complex polyhedral domains with nonmanifold features.  It includes
geometric modeling routines for polyhedral domains, two mesh
generators and a finite element solver.  QMG is written in primarily
in C++ and is a collection of m-files and mex-files that run under
Matlab 4.2.


===================================

q260.2.8. Sinda/Fluint

http://www.webcom.com/crtech  Sinda/Fluint
ftp://ftp.csn.net/crtech      Sinda/Fluint via ftp

[author]:
SINDA/FLUINT is a comprehensive finite-difference, lumped parameter
(circuit or network analogy) tool for analyzing complex thermal/fluid
systems. It is used at over 300 sites in the aerospace, electronics,
petrochemical, and automotive industries.

===================================

q260.2.9. Physica

http://www.gre.ac.uk/research/cms/  Physica
A three dimensional unstructured mesh software
framework for the modelling of multi-physics phenomena.


===================================

q260.2.10. Madpack5
http://casper.cs.yale.edu/mgnet/www/mgnet-codes.html  Madpack at MGNet in USA
http://www.cerfacs.fr/~douglas/mgnet-codes.html  Madpack at MGNet in France

[author]: Version 5 of Craig Douglas' multigrid package. This is an
abstract solver. It is PDE, domain, and discretization independent.
It only handles linear problems, however. It is an ongoing project
with a number of contributors from around the world. Some of these
wish to remain anonymous. Serial, parallel, and semi-chaotic solvers
are or will be included during 1994. A paper describing this is in
the file mgnet/papers/Douglas/mad5.ps.  This is an object oriented code.
The user interface is written in C. Most of the solvers are
written in Fortran-77+m4. The same calling sequence is used
independent of the data's type (real and complex, single and double
precision are supported). The user interface builds all of the truly
nasty data structures needed by the code. The ownership of this
code is convoluted. 



===================================

q260.2.11. Triangle

A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator.
http://www.cs.cmu.edu/~quake/triangle.html  Mesh Generator
Triangle generates exact Delaunay triangulations, constrained Delaunay
triangulations, and quality conforming Delaunay triangulations. The
latter can be generated with no small angles, and are thus suitable
for finite element analysis.

===================================

q260.3. Commercial Packages for FEM

A large list of commercial FEM products may be found at:
http://www.cray.com/PUBLIC/APPS/DAS/DAS4.html  List of FEM Products

===================================

q260.4. Comparison of Meshing Software Packages

[Albert M. Hines, Feb 1996]:
This table reflects the best information that I can gather
to date on some of the more popular meshers.  Many others exist
and may be better or worse than those listed here. This study was
conducted by Howmet, a manufacturing corporation with no incentive
to support or reject any package over another. Portions of the
study were also funded by your generous tax donations through an
ICCA program designed to enhance the capability of US investment
casting through (among many other things) automeshing software.

The meshes were used for heat transfer and fluid flow predominantly.
A limited amount of stress analysis and electromagnetics were also
investigated.  The desired modeling analysis is a crucial factor
in determining whether a meshing package will support the
mesh quality and refinement necessary for a simulation.
(e.g. mesh quality is almost a non-issue for heat transfer,
but not for stress!)   The geometries that I have considered
are aerospace turbine engine components: complex 3-D thin walled
structures. Bulky or spindly geometries may behave differently
(e.g. engine blocks, oil rigs, etc.).

The scale used is 0 to 10. A zero means that it meets none of my
expectations. A 10 means that it meets all of my expectations.
A cumulative score should not be obtained by adding columns.
Many entries are more important than others. Weighting for
the various tasks are different for each analyst/application.
The scores are often subjective and should be considered at best
approximate. They do not necessarily reflect the opinion of Howmet
Corporation or, for that matter, of anyone other than myself.
They are, however, the result of careful and expensive investigation
into the market.

Any questions or comments should directed to me at "ahines@howmet.com".
Albert M. Hines, Howmet  Corporation, 1500 South Warner Street,
Whitehall, MI 49461, 616-894-7864.


                        SOFTWARE(5): OCTREE  PATRAN   MESHCAST  HYPERMESH   ALG
  ----------------------------------------------------------------------------
  3-D SURFACE MESH (*)
          automesh robustness (a)         9       8       7       4       3
          automesh flexibilty (b)         4       6       8       7       5
          number of elements (c)         10       6       7       6       8
          meshing speed (d)               3       1       9       5       3
          typical element quality (e)     1       8       7       4       5
          semi-auto effectiveness        N/A      7       3      10       6
          mesh editing                   N/A      8       1      10       2
  
  3-D SOLID MESH
          automesh robustness (a)         8       7 (4)   7       N/A     4
          automesh options (b)            6       7       7       N/A     6
          number of elements (c)         10       4 (4)   5       N/A     3
          meshing speed (d)               4       1       9       N/A     3
          typical element quality (e)     2       6 (4)   7       N/A     4
          semi-auto effectiveness        N/A      4      N/A      9       6
          mesh editing                   N/A      8       3      10       6
          software vendor meshing (f)     8       2       9       5       8
          auto-hex meshing               N/A     N/A     N/A     N/A      3
  
  GENERAL
          Ease of use (g)                 3       4       9       8       4
          I/O options                     4       8       7       9       7
          Error reporting                 3       4       3       3       3
          Barrier-free tech. support      8       1       10      6       3
          Competent/helpful tech. support 6       6       8       7       8
          Ease of install/maintenance     8       4       8       7       8
          "Bug-free-ness"                 6       7       3       4       4
          COST(1)                    $12,000 $6800(2) $10,000(3) $4500  $5,525




NOTES
-----
*    OCTREE surface mesh obtained by extracting faces of its solid elements.

(a)  Should mesh the first time with given parameters. This refers to
tetrahedra only.

(b)  Includes things like a finely meshed boundary with coarsely meshed
interior, ignoring features smaller than a given size, multiple element
layers through thin sections, multiple meshing algorithms, etc. Refers
to tetrahedral elements.

(c)  Being in industry, practicality is a must. Meshes > ~100,000 nodes
do not run in a reasonable amount of time in our lab.  If a
program cannot mesh a part within this limitation, I consider
it unable to mesh the part, even if it might successfully
generate the mesh. Automeshers should allow the specification
of a target number of nodes. Any mesh above this size should
send a flag to remesh, ignoring small features.

(d)  Again, from a practical point of view, there are limits beyond which I
consider the program to fail. The most glaring comparison is
between PATRAN and MeshCAST. A typical part that meshes less
than 10 minutes with MeshCAST normally takes several days to
mesh in PATRAN. It is likely that given infinite time, PATRAN
would succeed (after all, it contains the RPI finite octree
mesher as one of its algorithms!), however, I can't justify
tying a machine up for a week to find out if it will mesh (and often it
crashes at the end of the meshing cycle!).

(e)  There are many if's and's & but's here. Basically I use aspect ratio and
dihedral angle for tetrahedra, jacobian at the gauss points for hex'es,
wedge's, and quad's, and interior angle for triangles. These are the only
element types that I use.

(f)  For many problems, I could not successfully mesh the part, so I sent the
geometry to the software vendor. In other cases, I sent it specifically
to evaluate the software run under the developer's care. Score reflects
willingness, speed, size, and quality of the mesh received.

(g)  I am partial to a Mac-like interface, which I consider to be the computer
world's 'reference standard'. Program should require minimal training and
manuals. All options should be available on the menus (no hidden or
cryptic commands). This is not just personal preference, but time and
dollars in training.

(1)  Cost is annual lease, US dollars, except as noted. Platform is HP-735
network license.  Cost is what we pay, not necessarily list price.

(2)  Unigraphics common database module $3,000 extra (i.e. $9,800). Base
license includes one translator, we chose IGES.

(3)  This price includes the fluids, thermal, radiation, solver modules. I am
not sure of the price of just MeshCAST by itself.

(4)  This is very approximated assuming infinite meshing time.

(5)  Versions tested: OCTREE: March 1,1995, P3: v1.4, Meshcast: v3.0.3,
Hypermesh: v2.00b, Algor: July, 1995.


===================================

q260.5. Newsgroups for PDE and FEM

Computational Fluid Dynamics (CFD) newsgroups:
        * sci.mech.fluids
        * sci.geo.fluids
        * sci.mech.fluids
        * sci.physics.computational.fluid-dynamics
        * sci.engr.marine.hydrodynamics

Some of these groups are archived at:
http://www.Fluent.COM/cgi-bin/fetch  CFD Newsgroups Archives


===================================

q260.6. Books and References for PDE and FEM

Axelsson, O.; Barker, V.A.  1984.
   Finite Element Solution of Boundary Value Problems: Theory
   and Computation
   Orlando FL: Academic Press, Inc.

Bornemann, F.
   An Adaptive Multilevel Approach to Parabolic Equations in Two
   Space Dimensions. Dissertation, Freie Universitaet Berlin, 1991.

Bornemann, F.; Erdmann, B.; Kornhuber, R.
   Adaptive Multilevel Methods in Three Space Dimensions.
   Int. J. Numer. Meths. in Eng., 36, 1993.

Braess, Dietrich. 1992
   Finite Elemente, Springer
   (In German)

Brenner; Scott.  1994.
   The Mathematical Theory of Finite Elements
   Springer-Verlag

Celia; Grey.
   Numerical Methods for Differential Equations
[G. Scott Lett] "very good".

Ciarlet, Philippe G.  1978
   The finite element method for elliptic problems
   Amsterdam: North-Holland

Deuflhard, P.; Leinen, P.; Yserentant, H.
   Concepts of an Adaptive Hierarchical Finite Element Code.
   IMPACT, 1, 1989.

Grossmann; Roos.
   Numerik Partieller Differentialgleichungen
   Teubner.
   (In German).

Johnson, Claes.
   Numerical Solution of Partial Differential Equations by the Finite
   Element Method.
[Hans Sandholt]  I found great pleasure to read it.

Hackbusch, Wolfgang
   Elliptic Differential Equations. Theory and Numerical Treatment
   Springer Series in Computational Mathematics 18
   Springer-Verlag, Berlin Heidelberg New York. 1992. 
   ISBN 3-540-54822-X
   See:
http://www.numerik.uni-kiel.de/wh/  Hackbush's page

Hackbusch, Wolfgang
   Iterative Solution of Large Sparse Systems of Equations
   Applied Mathematical Sciences, Vol. 95.
   Springer-Verlag, New York, U.S.A., 1993.
   ISBN 3-540-94064-2 (Berlin ...)
   ISBN 0-387-94064-2 (New York ...)
   See:
http://www.numerik.uni-kiel.de/wh/  Hackbush's page

[G. Scott Lett]  A good book to start; helping to bridge the gap
between recipes and understanding.

Hughes, T.J.R.  1987.
   The Finite Element Method

Kornhuber, R.
   Monotone Multigrid Methods for Nonlinear Variational Problems.
   Habilitationsschrift, Freie Universitaet Berlin, 1995.

Oden, J.T.; Reddy, J. N.  1976.
   An introduction to the mathematical theory of finite elements
   New York: Wiley-Interscience

Schwarz, H.R. 1984.
   Methode der Finiten Elemente
   Teubner
   (In German)

Strang; Fix.  1973.
   An Analysis of the Finite Element Method
   Prentice Hall

Wait, R.; Mitchell, A.R.  1985.
   Finite Element Analysis and Applications
   John Wiley & sons.

Zienkiewicz, O.C.; Morgan, K.  1983.
   Finite Elements and Approximation
   J. Wiley & Sons


===========================================================================

q265. Operations Research: Minimization, Optimization, Etc.

        * q265.1, "Optimization, Linear and Non-Linear Programming"
        * q265.2, "Queueing Theory and Performance Analysis."


===================================

q265.1. Optimization, Linear and Non-Linear Programming

See the FAQs maintained by Robert Fourer and John Gregory:
http://www.mcs.anl.gov/home/otc/Guide/faq/   LP and NLP FAQs

See also:
Decision Tree for Optimization Software
by Hans D. Mittelmann, Dept of Mathematics, Arizona State U.,
and P. Spellucci, Dept of Mathematics, Technical U. Darmstadt.
http://plato.la.asu.edu/guide.html  Decision Tree for Optimization Software

NEOS Guide to Optimization Software
By the OTC, a joint effort of Argonne National Laboratory
and Northwestern University.
http://www.mcs.anl.gov/home/otc/Guide/SoftwareGuide/   NEOS Guide

The Optimization Technology Center at Argonne National Laboratory (ANL).
http://www.mcs.anl.gov/home/otc/  ANL Optimization Center

Xu's list of public optimization codes:
http://ucsu.colorado.edu/~xu/software.html   Xu's list

Arnold Neumaier's overview:
http://solon.cma.univie.ac.at/~neum/glopt.html  Neumaier

Simon Streltsov's pages:
http://cad.bu.edu/go/  Streltsov

Janos Pinter's pages:
http://www.tuns.ca/~pinter/gobook.html   Pinter
http://www.tuns.ca/~pinter/lgoinf.html   Pinter


===================================


q265.2. Queueing Theory and Performance Analysis.

The only thing close to a FAQ is at:
ftp://rtfm.mit.edu/pub/usenet-by-group/comp.benchmarks/  comp.benchmarks FAQ


References:

By far the most often referenced works are the classics by Kleinrock:
   Kleinrock, Leonard  1975
   Queueing Systems, Volumes 1 and 2
   John Wiley, New York
Excellent theoretical development of the field.  This is
the standard text in the area.  Kleinrock is apparently
working on an updated version of his texts, but when
they'll be published is unknown.


Other good texts are:

Allen, Arnold O.  1990
   Probability, Statistics, and Queueing Theory with Computer
   Science Applications, Second Edition
   Academic Press, Boston.
This is a common text in the field and has an applied approach.

King, Peter J.  1990.
   Computer and Communication Systems Performance Modelling
   Prentice Hall
Brief intro to prob theory,
MG1, priority queues, networks of queues, approximations.
Also chapters on numerical solutions, local area networks.

Nelson, Randolph.   1995.
   Probability, stochastic processes, and queueing theory
   Springer Verlag
Good treatment of prob, combinatorics, RVs and some distributions ...
but only uniform, binomial, exponential, poisson.  Not the normal
distribution!  Also, expectation, a big treatment of MG1, markov processes,
matrix geometric solutions, and queueing networks.

Perros, Harry G.  1995.
   Queueing Networks with Blocking.
   Oxford press
Brings together many results for different
types of blocking.  Blocking occurs when server i cannot
continue serving because the queue at server j is full.


===================================

 Queueing Theory and Performance Newsgroups

   sci.op-research
   sci.math.num-analysis

===================================

 Queueing Theory and Performance Indices

Decision Tree for Optimization Software
by Hans D. Mittelmann, Dept of Mathematics, Arizona State U.,
and P. Spellucci, Dept of Mathematics, Technical U. Darmstadt.
http://plato.la.asu.edu/guide.html  Decision Tree for Optimization Software

===========================================================================


q270. Computational Geometry


Directory of Computational Geometry Software         
http://www.geom.umn.edu/software/cglist/  Computational Geometry Directory
This page contains a list of free computational geometry programs and
packages.


See also q260, "Partial Differential Equations (PDEs) and Finite Element Modeling (FEM)".


===========================================================================


q285. Graphics and Scientific Visualization

This is a huge field.  Rather than attempt to review it,
I've simply noted a few resources.  All text is [author].

An good article on commercial math & visualization software is:
Braham, Robert.  "Math & Visualization: new tools, new frontiers",
IEEE Spectrum 32, 11 (November 1995), p. 19-36.
The article contains tables comparing large number of commercial products.
There is no mention of the many excellent free products though.

        * q285.1, "NASA Index on Scientific Visualization"
        * q285.2, "Other Web Sites on Graphics and Sci Vis"
        * q285.3, "Software for Graphics and Sci Vis"

===================================

q285.1. NASA Index on Scientific Visualization

The best resource I found is an annotated list of
scientific visualization sites, courtesy of
NASA's Numerical Aerodynamic Simulation program.
http://www.nas.nasa.gov/RNR/Visualization/annotatedURLs.html  NASA Graphics Index
or:
http://www.nas.nasa.gov/NAS/Visualization/visWeblets.html  NASA Graphics Index

Excerpting from [NASA], some of the large general purpose scientific
visualization web sites are: (Thanks NASA!)

Software Support Lab software archive at the Laboratory for
Atmospheric and Space Physics at the University of Colorado in
Boulder. This web site contains descriptions of and access to a
great deal of software, including visualization packages such as
AVS, IRIS Explorer, Vis-5D, HDF, NCSA Image, NIH Image,
Interactive NCAR Graphics, and many others. Many of the
descriptions are incomplete and still contain some automatically
generated boilerplate. Hopefully this will change soon.
http://sslab.colorado.edu:2222/software.html  U. Colorado

Graphics, Visualization, and Usability Center at Georgia Tech.
This extensive web site includes scivis work along with material
from related fields such as animation, virtual environments,
medical informatics, software visualization, user interface
software, multimedia, educational technology, human factors, and
hypertext. Plenty of content here.
http://www.cc.gatech.edu/gvu/gvutop.html  Georgia Tech

MIT Aero/Astro Scientific Visualization This web site is home to
Visual2, Visual3, and pV3. These are visualization systems for
unsteady, unstructured (and structured) CFD visualization
(mostly). Visual2 is for 2D flows, Visual3 for 3D flows, and pV3
takes data from solvers on distributed workstations on the fly.
There are papers, software, and users manuals. The author assures
me that pictures will be coming. The software is binary and
libraries only, not source code.
http://raphael.mit.edu/haimes.html  MIT

The University of Minnesota Supercomputing Institute. This
web site contains pointers to URLs of interest to the
scientific visualization community.
http://web.msi.umn.edu/WWW/SciVis/scivis.html  U. Minnesota Superconducting

The Geometry Center, University of Minnesota. This excellent
web site contains examples of, software for, and technical
and other information about some of the premier mathematical
visualizations on the planet.
http://www.geom.umn.edu/  U. Minnesota Geometry Center

A Gallery of Interactive On-Line Geometry The Geometry Center
also has an incredible page with links to their interactive,
web-based, visualizations of various mathematical objects.
Interaction is slow due to the network, but these forms-based
programs are well worth looking at.
http://www.geom.umn.edu/apps/gallery.html  U. Minnesota Geometry Center

State University of New York at Stony Brook has a very nice web
site with excellent information about their program which is
primarily centered around the VolVis software. The source and
executables are available along with many full papers in
compressed PostScript format.
http://www.cs.sunysb.edu/~volvis/  State U. of NY at Stony Brook

Stanford Computer Graphics Laboratory. Good projects, pictures,
movies, software, technical papers and descriptions of some of the
graphics work at Stanford University.
http://www-graphics.stanford.edu/  Stanford Computer Graphics Lab

CRS4: Centre for Advanced Studies Research and Development in
Sardinia (Cagliari, Italy). This extensive web site contains
pictures, movies, projects, staff, research papers, and
hypertextual MPEG info. A few papers are in Italian, but most of
the web site is in English.
http://www.crs4.it/~zip/group_homepage.html  CRS4

Lawrence Livermore National Laboratory's web site has lots of
images, papers, and some software. Lots of interesting
visualization techniques here!
http://www.llnl.gov/graphics/sciviz.html  LLNL


The National Center for Supercomputing Applications (NCSA)
NCSA Visualization and Virtual Environments page . This
extensive web site contains pictures, movies, descriptive
text, and research papers. Visualization work covers a wide
variety of application areas.
http://www.ncsa.uiuc.edu/General/ThisIsNCSA/VizVR.html  NCSA
ftp://ftp.ncsa.uiuc.edu  NCSA via ftp

NCSA Digital Information Systems Overview contains many
visualizations.
http://www.ncsa.uiuc.edu/SCMS/DigLib/text/overview.html  NCSA visualizations.
ftp://ftp.ncsa.uiuc.edu  NCSA

NCSA Virtual Reality Lab briefly describes some VR projects
including some scientific visualization. There are also some
research papers.
http://www.ncsa.uiuc.edu/Viz/VR/VRHomePage.html  NCSA VR lab
ftp://ftp.ncsa.uiuc.edu  NCSA VR lab via ftp

The Beckman Institute Visualization Facility web site
describes local visualization facilities available on campus.
There are some substantial miscroscopy facilities.
http://delphi.beckman.uiuc.edu/  Beckman

NASA's Numerical Aerodynamic Simulation Division (NAS)
http://www.nas.nasa.gov/home.html  NASA's NAS

Mathematical Visualization by David Banks This web site
contains Dr. Banks' dissertation and pointers to related
work. A number of interesting mathematical visualizations of
4-dimensional spaces can be found here.
http://www.icase.edu/~banks/math.html  David Banks

The Army High Performance Computing Research Center. This web site
contains pictures, movies, descriptions of software, projects, and
staff, but no research papers. Many of the visualizations come
with enough information to gain at least a superficial
understanding. A wide variety of application areas are
represented.
http://www.arc.umn.edu/html/ahpcrc.html  Army


Other good web sites are:

http://www-ocean.tamu.edu/~baum/ocean_graphics.html  Texas A&M U.


===================================

q285.2. Other Web Sites on Graphics and Sci Vis

For more general graphics questions, less related to
scientific visualization:

See the several FAQs relating to computer graphics:
http://www.cis.ohio-state.edu/hypertext/faq/usenet/graphics/top  Ohio State

See the comp.graphics.misc FAQ:
http://www.primenet.com/~grieggs/cg_faq.html  Grieggs
ftp://rtfm.mit.edu/pub/usenet/news.answers/graphics/faq  comp.graphics.misc FAQ

A huge general overview of computer graphics is at
LS VII, Computer Graphics, in the Department of Computer
Science at the University of Dortmund.
        * Other Overviews
        * Conferences and Workshops
        * Research related servers
        * Inquiries
        * Organizations
        * Commercial Sites
        * Software and Data
        * News
        * FAQs
http://ls7-www.informatik.uni-dortmund.de/html/englisch/servers  U. of Dortmund


For commercial software, see the following sites:
http://www.cray.com/PUBLIC/APPS/DAS/DAS8.html  Cray
http://theyellowpages.com/Comp_graphics.htm  Misc


===================================

q285.3. Software for Graphics and Sci Vis

The most common free software package is gnuplot:
ftp://prep.ai.mit.edu/pub/gnu/gnuplot  Gnu Archives

For commercial software, see q125, "Commercial Packages",
and q520, "Symbolic Algebra".

Also see:
ftp://ftp.x.org/contrib/applications/Plotmtv1.4.1.tar.Z  Plotmt for Unix

Also see:
ftp://ftp.archives.math.utk.edu   GRAPHMATH

Also see:
http://www.maths.soton.ac.uk/mrd/panda.htm Panda
[author]: Panda is an interactive graphics visualization
tool for plotting and manipulating numerical data, for Win 3.1 or Win 95.
It is primarily designed to animate time-dependent data in
one spatial dimension, such as might be obtained from the numerical solution
of partial differential equations.
Panda is a 16 bit application for Windows 3.1 or 95. It requires VBRUN300.DLL
to be installed on your system.
Panda is freeware for private, non-commercial use.


Also see q285.2, "Other Web Sites".

===========================================================================

q290. Miscellaneous NA Software

The NRAO Astronomical Image Processing System (AIPS)

National Radio Astronomy Observatory home page
http://www.nrao.edu/  NRAO
The NRAO Astronomical Image Processing System (AIPS) is a software
package for interactive (and, optionally, batch) calibration and
editing of radio interferometric data and for the calibration,
construction, display and analysis of astronomical images made from
those data using Fourier synthesis methods. Design and development of
the package began in Charlottesville, Virginia in 1978. It presently
consists of over 800,000 lines of code, 80,000 lines of on-line
documentation, and 400,000 lines of other documentation. It contains
over 300 distinct applications "tasks," representing approximately 50
person-years of effort since 1978.


AIPS ("Classic", not aips++) Home Page
http://info.cv.nrao.edu/aips/aips-home.html  AIPS



===========================================================================



q505. Probability and Statistics

Books:

There are hundreds of prob/stat texts, but I'm
interested in the marriage of statistics and computing:

Thisted, Ronald A.  1986
Elements of statistical computing: numerical computation
Chapman and Hall, New York
A good text, and inexpensive. [Allen Mcintosh]

Griffiths, Paul; Hill, Ian David, editors.  1985
Applied statistics algorithms
E. Horwood Publishing, Chichester, England
Algorithms are available on statlib.

Moshier, Stephen Lloyd Baluk.  1989
Methods and programs for mathematical functions
E. Horwood Publishing, Chichester, England
Halsted Press, New York.

Trivedi, Kishor Shridharbhai  1982
Probability and statistics with reliability, queuing, and
computer science applications
Prentice-Hall, Englewood Cliffs, NJ

Kennedy, W. J.; Gentle, J. E.  1980
Statistical Computing
Dekker, New York

others?

Newsgroup:

sci.stat.math
sci.math.stat

FAQs, if any?

Web sites:

Statistics and Statistical Graphics Resources, by York University
http://www.math.yorku.ca/SCS/StatResource.html  York U.
Contents:
General statistical resources || York stuff || Statistical      
Associations || Statistics Departments || SAS stuff || SPSS ||
LispStat || S Plus || Mathematica || Data Visualization & Statistical
Graphics || Psychology & Psychometrics || Online courses || New Online
WWW statistics || Data || New Categorical Data Analysis || New Other  
Statistical Packages || New Unix            


Statistical Services Software Sites                                   
http://www.utexas.edu/cc/stat/world/softwaresites.html   U. Texas
Pointers to various commercial and free packages.








Software:

StatLib, by the Carnegie Mellon University Statistics Department.
see q115.3, "Statlib".



University of Minnesota School of Statistics                      
http://stat.umn.edu/ARCHIVES/archives.html  U. Minnesota
Archives for Xlisp-Stat, MacAnova, R-Code.

Xlisp-Stat Resources                                                
http://www.stat.umn.edu/~rcode/xlispstat-resources.html  U. Minnesota
http://lib.stat.cmu.edu/xlispstat/  CMU XlispStat Archive (Alternate site for Xlisp-Stat)

Xlisp-Stat Information Xlisp-Stat is an object oriented environment  
for statistical computing and dynamic graphics. Written by Professor
Luke Tierney (School of Statistics, University of Minnesota),         
Xlisp-Stat was motivated by the "S" system, with the basic principal
that an extendible system is necessary for researching new
computationally based statistical methods. Xlisp-Stat provides a set
of high-level tools to develop new dynamic graphics techniques, such
as those found in the R-code.                                      

Unlike S, Xlisp-Stat is based on Lisp, a well-established, complete
and flexible programming language. Like S, Xlisp-Stat is an
interpreted language, which is much more suited towards exploration   
than a compiled language (such as C/C++ or Pascal -- these require
lengthy recompilations to fix bugs or test simple new ideas). When
greater speed is required, a byte-code compiler can be run from inside
Xlisp-Stat. This compiler can give increase the speed of execution by
an order of magnitude.                        

The defining reference book on Xlisp-Stat is Lisp-Stat by Luke        
Tierney, 1990, J. Wiley and Sons, ISBN 0-471-50916-7. Since Xlisp-Stat
is founded on Lisp, almost any book on general Lisp programming can
help you get started.                



Statistical power analysis software                                          
http://www.interchg.ubc.ca/cacb/power/  Power Analysis

This page is an attempt to provide an up-to-date list of microcomputer
software that can be used to calculate the power of statistical
hypothesis tests. It is maintained by Centre for Applied Conservation
Biology, University of British Columbia.


Ox, by Jurgen A. Doornik
http://www.nuff.ox.ac.uk/Users/Doornik/  Ox

Ox is an object oriented matrix programming language, with a C and C++
like syntax. Ox currently has versions for Windows (PC and Alpha),
MS-DOS, Linux, SunOS, Solaris and HP-UX.
Packages include: Estimation and forecasting of ARFIMA(p,d,q)
and ARMA(p,q) models; QuadPack is a Fortran library for
univariate numerical integration (`quadrature') using adaptive rules
SSFPack is a package for analysing univariate Gaussian and
non-Gaussian time series which can be placed in the state space       
form (SSF); MaxBFGS() can be used to maximize
functions of many parameters such as likelihood functions;
The PcFiml class contains code for VARs,          
cointegration, simultaneous equations estimation, (multivariate)  
diagnostic tests; the Simulation class allows for easy 
implementation of simulation experiments. Some examples are in
ox/samples/simula. 



U. Texas Dept of Biomathematics software.
This is mostly Fortran, but some is also in C.  DCDFLIB is a
good set of functions for computing cumulative distribution
function values.
http://odin.mdacc.tmc.edu/anonftp/   U. Texas Biomath via www
ftp://odin.mdacc.tmc.edu/pub/index   U. Texas Biomath via ftp


===========================================================================


q510. Chaos Theory (Nonlinear Dynamics)

        * q510.1, "FAQs for Chaos Theory"
        * q510.2, "Newsletters for Chaos Theory"
        * q510.3, "Bibliography for Chaos Theory"

q510.1. FAQs for Chaos Theory

http://amath.colorado.edu/appm/faculty/jdm/faq.html  FAQ
http://www.fen.bris.ac.uk/engmaths/research/nonlinear/faq.html  FAQ
http://amath.colorado.edu/appm/faculty/jdm/faq.html  FAQ
ftp://rtfm.mit.edu/pub/usenet/news.answers/sci/nonlinear-faq  FAQ

See also:
http://t13.lanl.gov/~nxt/sites.html  FAQ
http://cnls-www.lanl.gov/nbt/sites.html  FAQ


===================================

q510.2. Newsletters for Chaos Theory

UK Nonlinear News
The primary goal of UK Nonlinear News is to allow researchers in the
applied and theoretical sides of nonlinear mathematics to keep
abreast of the wide variety of nonlinear activities throughout the UK.
To join the mailing list, send email to  uk-nonl-subs@ucl.ac.uk
with the word SUBSCRIBE in the subject field.

Or see:
http://www.amsta.leeds.ac.uk/Applied/news.dir/index.html  Nonlinear News


===================================

q510.3. Bibliography for Chaos Theory

Peter E. Beckmann (beckmann@nemo.physik.uni-mainz.de) at the
Department of Physics, University of Mainz, Mainz, Germany has a
nonlinear papers bibliography containing thousands of entries.
http://www.uni-mainz.de/FB/Physik/Chaos/chaosbib.html  Nonlinear biblio
ftp://ftp.uni-mainz.de/pub/chaos/chaosbib  Nonlinear biblio, BibTex-style
ftp://ftp.uni-mainz.de/pub/chaos/chaosref  Nonlinear biblio, Refs-style


===========================================================================



q520. Symbolic Algebra

Since the symbolic algebra systems have been well documented
elsewhere, I simply provide pointers instead of reviewing
them here.

An good recent article on commercial math & visualization software is:
Braham, Robert.  "Math & Visualization: new tools, new frontiers",
IEEE Spectrum 32, 11 (November 1995), p. 19-36.
The article contains tables comparing large number of commercial products.
There is no mention of the many excellent free products though.

        * q520.1, "Comparative Reviews on Symbolic Algebra Packages"

Free Software for Symbolic Algebra:

        * q520.2.1, "MuPAD"
        * q520.2.2, "Jacal"
        * q520.2.3, "GAP"
        * q520.2.4, "PARI/GP"
        * q520.2.5, "Form"
        * q520.2.6, "GRTensorII"
        * q520.2.7, "SAML"

===================================

        * q520.3, "Automatic Differentiation Tools"
        * q520.4, "Web sites for Symbolic Algebra"


===================================

q520.1. Comparative Reviews on Symbolic Algebra Packages

Michael Wester maintains a web page with his detailed review
of Axiom, Derive, Macsyma, Maple, Mathematica, Mupad, and Reduce,
as well as references and links to other reviews.

Wester's review compares the packages on 131 problems, mostly
from symbolic algebra.
http://math.unm.edu/~wester/cas_review.html  Wester's www page
ftp://math.unm.edu/pub/wester/cas/Paper.ps  Wester's paper via ftp

See the articles in Computers in Physics,
Vol 6 #4 and #5 [Jul/Aug, Sep/Oct, 1992].

See the web pages at Indiana University Center for Statistical
and Mathematical Computing for a several comparisons and reviews
of symbolic math and general math/stat packages:
http://www.indiana.edu/~statmath/mathsites.html   Indiana U. math overview
http://www.indiana.edu/~statmath/math/index.html  Indiana U. symbolic math review

Several sites devoted to "Comparison of Mathematica on Various Computers"
can be reached via:
http://smc.vnet.net/mathbench.html  Christensen
or
http://fampm201.tu-graz.ac.at/karl/timings.html  Karl


There are some comparisons kept by Paulo Ney deSouza
on the Berkeley math gopher (in particular the file
Comparison, but also others):
gopher://math.berkeley.edu/11/Symbolic_Soft  Berkeley Math gopher


Macsyma also has comparisons of Macsyma's commercial product vs. others at:
http://www.macsyma.com  Macsyma


===================================


q520.2.1. MuPAD

http://math-www.uni-paderborn.de/~cube/  MuPAD
ftp://math-ftp.uni-paderborn.de:/pub/MuPAD  MuPAD via ftp

ftp mirrors:

* Deutschland
ftp://ftp.uni-paderborn.de:/pub/MuPAD  MuPAD (daily mirror)
ftp://ftp.ask.uni-karlsruhe.de:/pub/education/mathematics/MuPAD  MuPAD
ftp://ftp.germany.eu.net:/pub/comp/applications/math/mupad  MuPAD

* France
ftp://ftp.inria.fr:/lang/MuPAD  MuPAD

* Switzerland
ftp://ftp.switch.ch:/mirror/MuPAD  MuPAD

* USA
ftp://archives.math.utk.edu:/software/multi-platform/MuPAD  MuPAD
ftp://ftp.math.utah.edu:/pub/mupad  MuPAD

MuPAD has been strongly recommended by users.  From the [author]:

MuPAD is a system for symbolic and numeric computation, parallel
mathematical programming and mathematical visualization. It is
intended to be a 'general purpose' computer algebra system.

MuPAD has easy-to-use language constructs for parallel
programming. A prerelease Version for parallel programming exists
for Sequent and Sun multiprocessor machines. Programming in
MuPAD's own programming language is supported by a comfortable
source code debugger. Window-based user interfaces for MuPAD exist
for the X-Window-System and the Apple Macintosh.

MuPAD is distributed for free (for non-commercial use).
It is not in the public domain; a registration is required.

===================================

q520.2.2. Jacal

ftp://prep.ai.mit.edu/pub/gnu/jacal  Jacal

From the [author]:

JACAL is a symbolic mathematics system for the simplification and
manipulation of equations and single and multiple valued algebraic
expressions constructed of numbers, variables, radicals, and algebraic
functions, differential, and holonomic functions.  In addition,
vectors and matrices of the above objects are included.

JACAL is written in Scheme.  A version of Scheme (IEEE P1178 and R4RS
compliant) written in C is available with JACAL.  SCM runs on Amiga,
Atari-ST, MacOS, MS-DOS, OS/2, NOS/VE, Unicos, VMS, Unix and similar
systems.

JACAL source is available via FTP (detailed instructions follow) from:
ftp://altdorf.ai.mit.edu:archive/scm/jacal1a4.tar.gz  JACAL
ftp://prep.ai.mit.edu:pub/gnu/jacal/jacal1a4.tar.gz  JACAL
ftp://ftp.maths.tcd.ie:pub/bosullvn/jacal/jacal1a4.tar.gz  JACAL
ftp://ftp.cs.indiana.edu:/pub/scheme-repository/scm/jacal1a4.tar.gz  JACAL

SLIB is a portable scheme library which JACAL requires:
ftp://altdorf.ai.mit.edu:archive/scm/slib2a1.tar.gz  SLIB
ftp://prep.ai.mit.edu:pub/gnu/jacal/slib2a1.tar.gz  SLIB
ftp://ftp.maths.tcd.ie:pub/bosullvn/jacal/slib2a1.tar.gz  SLIB
ftp://ftp.cs.indiana.edu:/pub/scheme-repository/imp/slib2a1.tar.gz  SLIB

SCM is a small Scheme implementation under which JACAL will run.
ftp://altdorf.ai.mit.edu:archive/scm/scm4e1.tar.gz  SCM
ftp://prep.ai.mit.edu:pub/gnu/jacal/scm4e1.tar.gz  SCM
ftp://ftp.maths.tcd.ie:pub/bosullvn/jacal/scm4e1.tar.gz  SCM
ftp://ftp.cs.indiana.edu:/pub/scheme-repository/imp/scm4e1.tar.gz  SCM

===================================

q520.2.3. GAP

ftp sites:
ftp://ftp.math.rwth-aachen.de/pub/gap/  GAP
ftp://archives.math.utk.edu/software/multi-platform/gap/  GAP
ftp://dehn.mth.pdx.edu/pub/math/gap/  GAP
ftp://pell.anu.edu.au/pub/gap/  GAP

[author]:
GAP  is  a  system  for computational  discrete  algebra,  which we  have
developed  with  particular  emphasis on  computational group theory, but
which has already proved useful also in  other areas.  The name GAP is an
acronym for *Groups, Algorithms, and Programming*.

===================================

q520.2.4. PARI/GP

ftp://megrez.math.u-bordeaux.fr/pub/pari/  PARI/GP
Also at math.ucla.edu

[author]:
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.

===================================

q520.2.5. Form

http://rulgm4.LeidenUniv.nl/gj/form.html  Form
ftp://ftp.nikhef.nl/pub/form/  Form via ftp

[author]:
The symbolic manipulation program Form is a powerful tool to do large
algebraic calculations. It is an easy-to-learn language which is
complementary to large programs such as Maple and Mathematica in that
not much knowledge is built in, but Form provides you with the means
to grind quickly through large formulae. In this introductory course
the most-used commands are introduced and useful algorithms are
discussed. Many examples illustrate the text.


===================================

q520.2.6. GRTensorII

http://astro.queensu.ca/~grtensor  GRTensorII via www
ftp://astro.queensu.ca/pub/grtensor  GRTensorII via ftp

[author]:
GRTensorII is a computer algebra package for performing calculations
in the general area of differential geometry. Its purpose is the
calculation of tensor components on curved spacetimes specified in
terms of a metric or set of basis vectors.  It is available in both
MapleV and Mathematica versions, and is distributed free of charge

===================================

q520.2.7. SAML

ftp://topo.math.u-psud.fr:/pub/bousch/saml-960828.tgz  SAML

[author]:
You might look at SAML, the Simple Algebraic Math Library. It's free.
Keep in mind that it's a work in progress. That's for Unix only.

===================================

q520.3. Automatic Differentiation Tools

[Luiz Henrique de Figueiredo]:
A good starting point for automatic differentiation tools is:
http://www.mcs.anl.gov/autodiff  Argonne National Lab


===================================

q520.4. Web sites for Symbolic Algebra

U.C. Berkeley
gopher://math.berkeley.edu  U.C. Berkeley Math Dept. via gopher
ftp://math.berkeley.edu/pub  U.C. Berkeley Math Dept. via ftp
A large site of courses, archives, pointers to other sites.
The Symbolic_Soft directory contains info on:
ALJABR, AMP, Articles_and_Books/, Available_Systems, Axiom
Bibliography, CALC, CLA, Calculus, Cayley, CoCoA, Comparison/
DELiA, DOE-Macsyma, Derive, FLAC, Form, GANITH, GAP, GNU-calc
GRTensorII, Galois, Gmp, JACAL, KAN, KANT, LIE, LiE, MALM, MAS, MPQS
Macaulay, Macsyma, Magma/, Maple/, Mathematica/, Maxima, Mercury
Mock-Mma, NCAlgebra, Numbers, On_Going/, PARI, PFSA, Paramacs
Reduce/, Reviews/, Ricci, SENAC/, SIMATH, STENSOR, Schoonschip
Schur, SymbMath, Theorist, UBASIC, Vaxima, Weyl, XPL, cas.tex


CAIN: The Computer Algebra Information Network
http://www.can.nl/cain.html  CAIN
CAIN contains information on symbolic algebra packages,
conferences, newsletters, bibliographies and tools.
It also contains pointers to a number of related information
servers.
As of December 1995, it contains info on the following:
        * General purpose systems:
        ALJABR, AXIOM, Derive, FORM, GNU-calc, MACSYMA Descendants, Macsyma,
        Magma, Maple, Mathematica, MAXIMA, MuPAD, PARAMAX, PUNIMAX, REDUCE,
        SENAC, Theorist, VAXIMA
        * (Non)Commutative Algebra & Algebraic Geometry:
        Albert, Bergman, CALI, CASA, CoCoA, FELIX, GANITH, GB, GRB,
        GROEBNER (from RISC-Linz), GROEBNER (REDUCE package), IDEALS, KAN,
        Macaulay, MAS, NCALGEBRA, SACLIB, Singular, WU
        * Differential Equation Solvers & Tools:
        List of Symmetry Programs (PostScript, gzip-compressed), CRACK, DELiA,
        DESIR, Diffgrob2 (Manual: PostScript, gzip-formatted), DIMSYM, FIDE,
        LIE (A.K. Head, in MuMath), Lie (Baumann, in Mathematica),
        Lie-Baecklund Symmetries (Baumann, in Mathematica), liesymm, ODESOLVE,
        PDELIE, SPDE, , StandardForm, SYM_DE, SYMMGRP.MAX (Manual: PostScript,
        gzip-formatted)
        * Finite Element Analysis:
        MathFE, PDEase, SENAC/FEM (PostScipt, gzip-formatted); see also SENAC,
        * Group Theory:
        ANU Software, Cayley, CHEVIE, GAP, GRAPE, GUAVA, LiE,
        LIE (REDUCE package), Magma, MeatAxe, Schur, Sisyphos, Symmetrica,
        Weyl Groups and Hecke Algebras
        * High Energy Physics:
        FeynArts, FeynCalc, FORM, HEP, Schoonschip, Tracer
        * Number Theory:
        Galois, KANT, KASH, MALM, Numbers, PARI, SIMATH, UBASIC
        * Tensor Calculus:
        CARTAN, Classi, GRTensor, MathTensor, Redten, Ricci, SHEEP, STENSOR
        * Experimental systems: PC Shareware with Symbolic Features:
        AMP, Calculus and Differential Equations, CC4, CLA, Mathomatic,
        PFSA, SymbMath, X(PLORE),
        * Experimental Systems: Various Systems
        AUTOMATA, QUOTPIC & TESTISOM, Computer Algebra Kit, FLAC, JACAL,
        Mock-Mma, ORME, RepTiles, Asir, SimLab, Computer Tools for Analysis
        and Simulation



SymbolicNet
http://symbolicnet.mcs.kent.edu/  SymbolicNet
Like CAIN, SymbolicNet contains information on symbolic algebra packages,
conferences, newsletters, bibliographies and tools.
As of October 1995, it contains info on the following packages:
Axiom, Derive, GANITH, GRTensor, Macsyma, Magma, Maple, Mathematica
MathSoft, MathTensor, Milo, MuPAD, Pari-1.39, Reduce, Schur, SymbMath

 
Indiana U. Mathematical Computing Resources on the Internet        
http://www.indiana.edu/~statmath/mathsites.html  Indiana U.
Contains pointers to a number of reviews of mathematics packages,
and to other mathematics related sites.
Also contains a number of downloadable shareware math packages.


Number Theory Web
A large web site devoted to number theory resources.
http://www.math.uga.edu/~ntheory/  Number Theory Web

===========================================================================




q530. Cryptography (Cryptology)

See newsgroups  sci.crypt, sci.crypt.research.
There are numerous cryptography FAQs.  See:
ftp://rtfm.mit.edu/Index-byname  MIT's rtfm FAQ index



===========================================================================


q540. Fractals

Although generating fractals usually involves floating
point numbers, fractals are generally not considered part of NA.
The FAQ is at:
ftp://rtfm.mit.edu/pub/usenet-by-group/news.answers/fractal-faq  MIT's rtfm

newsgroups: sci.fractals



===========================================================================


q550. Neural Networks

Although neural nets use optimization techniques,
they are generally regarded as a separate field.
The FAQ is at:
ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/ai-faq/neural-nets  MIT's rtfm

newsgroups: comp.ai.neural-nets



===========================================================================



q560. Discrete algorithms

A good intro text for discrete algorithms is:
Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest.
   Introduction to Algorithms
   MIT Press, 1990.
   ISBN 0-262-03141-8
   Telephone: 617-253-5641,  800-356-0343
See also the newsgroup comp.theory.

See: Center for Discrete Mathematics and Theoretical Computer Science
(DIMACS) at:
http://dimacs.rutgers.edu/  DIMACS

Discrete algorithms include:
        * Sorting algorithms
        * Network traversal (traveling salesman, etc)
        * Primality testing (see the cryptography FAQs mentioned above).
        * Automata Theory
        * Many other fields



===========================================================================



q570. Constraints

newsgroup: comp.constraints

ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/constraints-faq  FAQ

University of New Hampshire Constraint Computation Center
Configuration involves selecting and arranging parts to fit
problem constraints. Configuration problems may involve design,
manufacturing, sales, installation and maintenance. The parts need not
be physical, e.g. they may be actions in plans.
http://www.cs.unh.edu/ccc/config/  U. of New Hampshire

Constraints archive, containing publications, benchmarks,
biblio, faq, ftp sites & www pages:
http://web.cs.city.ac.uk/archive/constraints/constraints.html  Constraints Archive


===========================================================================

q580. Genetic Algorithms


For a light-hearted FAQ and overview, see the
Hitch-Hiker's Guide to Evolutionary Computation          
http://research.Germany.EU.net:8080/encore/www/    Hitch-Hiker's Guide via www
ftp://ftp.Germany.EU.net/pub/research/softcomp/EC/FAQ/www/Q20_1.htm      Hitch-Hiker's Guide via ftp


PGAPack, Parallel Genetic Algorithm Library, by David Levine

[David Levine]
PGAPack is a general-purpose, data-structure-neutral, parallel genetic
algorithm library.  It is intended to provide most capabilities desired in a
genetic algorithm library, in an integrated, seamless, and portable manner.
Key features include:

* Callable from Fortran or C.
* Runs on uniprocessors, parallel computers, and workstation networks.
* Binary-, integer-, real-, and character-valued native data types.
* Full extensibility to support custom operators and new data types.
* Easy-to-use interface for novice and application users.
* Multiple levels of access for expert users.
* Parameterized population replacement.
* Multiple crossover, mutation, and selection operators
* Easy integration of hill-climbing heuristics.
* Extensive debugging facilities.
* Large set of example problems.
* Detailed users guide

PGAPack is available from:
http://www.mcs.anl.gov/pgapack.html  PGAPack
ftp://ftp.mcs.anl.gov/pub/pgapack/pgapack.tar.Z  PGAPack via ftp

David Levine can be reached at:
   levine@mcs.anl.gov
   MCS 221 C-216    Argonne National Laboratory   Argonne, Illinois 60439
   (708)-252-6735   Fax: (708)-252-5986


===========================================================================


q590. Simulated Annealing


Adaptive Simulated Annealing Package (ASA), by Lester Ingber
http://www.alumni.caltech.edu/~ingber/  ASA
ftp://ftp.alumni.caltech.edu/pub/ingber  ASA via ftp
An optimization algorithm for nonlinear and stochastic systems.


Also, Skip Carter's home page has info and software on simulated annealing,
as well as other topics: digital filters, Kalman filters, neural nets,
and C++ software.
http://taygeta.com/skips_home.html  Skip Carter's page


===========================================================================

q800. Teaching and Academic Software

        * q805, "Ted Brown's Work on Physics and Engineering"
        * q810, "Gleb Beliakov's Work on Numerical Analysis"

q805. Ted Brown's Work on Physics and Engineering

Ted Brown has written a set of tutorials on vectors,
dynamics, electricity and magnetism.  They are implemented
for the PC DOS environment, but he might be convinced
to write a more general version.

email: tbrown@tekotago.ac.nz

[Ted Brown]:
The tutorial, on VECTORS, is an interactive program suitable for
first year students, in that it presumes no previous knowledge of the
area.
The principal sections are on Addition and Difference of vectors by
graphical construction, and by components.
All the construction is done on the screen, with magnitudes and
angles being presented dynamically in a box, as the mouse is moved
about. Magnitudes and directions of resultants are read directly from
the screen.
Students are required to logon, and records are kept of who has been
using the program, for how long, and what their current score is.
This information is only available through an instructor module.
The program runs in Windows, resolution 640*480, 256 colours, on a
standalone machine, or on a network, and its size is around 5 or 6
Meg.
If anyone is interested in getting more details, I can be contacted
on "tbrown@tekotago.ac.nz"

I have, over the last few years written a number of physics
tutorials, in the general areas of dynamics, electricity and
magnetism, but they have all been written for DOS. If I thought there
was some interest, I would re-write them for Windows.
Ted.


===================================



q810. Gleb Beliakov's Work on Numerical Analysis

PNA is designed for the Maple V (release 2 or 3) environment.

"Practicum in Numerical Analysis (PNA)" is a set of laboratory tasks
designed to be a supplement to the course of numerical analysis. The
exercises illustrate the basic numerical methods, show their
advantages and limitations and help to understand the behavior of
numerical solutions. The interactive use of a computer permits one to
understand the properties of the algorithms to an extent impossible to
achieve reading textbooks. First, it is possible to present more
realistic examples of the usage of numerical methods (bigger systems
of equations, more iterations), and second, the students can freely
change given illustrations in order to try them out and to clarify the
behavior of the solutions. Finally, the discussed algorithms can be
used by the students in their further studies by either linking them
to bigger programs as a library or by copying the text into another
programming environment with slight changes in the syntax.

It should be noted that PNA is not a substitute for a textbook but a
complement to classical educational tools.

===========================================================================


--
※ 来源:.紫丁香 pclinux.hit.edu.cn.[FROM: hcms.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1,013.144毫秒