Numerical Software Tools

NUMERICAL SOFTWARE TOOLS
AND INFORMATION SOURCES

Nick Trefethen, October 2015


You can find this page online at people.maths.ox.ac.uk/trefethen/tools.html, where every line contains live links.

Software Repositories
Netlib (www.netlib.org)
NHSE = National HPCC Software Exchange (wotug.org/parallel/nhse)
CALGO = Collected Algorithms of the ACM (calgo.acm.org/)
Fortran 90 Software Repository (www.nag.co.uk/nagware/Examples.asp)
GitHub the dominant open-source repository (https://github.com)

Information Portals
swMATH modern style search capabilities (https://zbmath.org/software)
GAMS = NIST Guide to Available Mathematical Software (gams.nist.gov)
MathSciNet (klymene.mpim-bonn.mpg.de/mathscinet)
NA Digest weekly online bulletin (www.netlib.org/na-digest-html)

Numerical Analysis Journals
(see also Oxford's e-Journals portal at solo.bodleian.ox.ac.uk)
ACM Transactions on Mathematical Software
IMA Journal of Numerical Analysis
Journal of Computational and Applied Mathematics
Journal of Computational Physics
Mathematics of Computation
Numerische Mathematik
SIAM Journal on Matrix Analysis and Applications
SIAM Journal on Numerical Analysis
SIAM Journal on Scientific Computing
SIAM Review
ETNA = Electronic Transactions on Numerical Analysis

General-Purpose Libraries
NAG (www.nag.co.uk) (F77 TOC)
IMSL (www.roguewave.com/products/imsl-numerical-libraries.aspx)
HSL Mathematical Software Library (www.hsl.rl.ac.uk/)
Numerical Recipes (www.nr.com)
GNU Scientific Library (www.gnu.org/software/gsl)

Wilkinson Software Prizes
DASSL (and DASPK) = Differential Algebraic Equation Solver (www.engineering.ucsb.edu/~cse/software.html)
ADIFOR = Automatic Differentiation of Fortran (www.mcs.anl.gov/adifor)
FFTW = Fastest Fourier Transform in the West (www.fftw.org)
Triangle = 2D mesh generator (www-2.cs.cmu.edu/~quake/triangle.html)
deal.II = finite element library (www.dealii.org)
Ipopt = Interior Point Optimizer (projects.coin-or.org/Ipopt)
dolfin-adjoint = automatic derivation of adjoint models (www.dolfin-adjoint.org)

Symbolic and Extended Precision Computation
Maple (www.maplesoft.com)
Mathematica (www.wolfram.com)
Matlab Symbolic Math Toolbox (www.mathworks.com/products/symbolic)
PARI/GP (pari.math.u-bordeaux.fr)
GMP = GNU Multiple Precision (gmplib.org/)
In Matlab: help symbolic or doc symbolic, help vpa or doc vpa

MATLAB for Gourmets
Scilab = open-source analog of Matlab (www.scilab.org)
GNU Octave = another open-source analog of Matlab (www.gnu.org/software/octave)
MATLAB Help Desk (www.mathworks.com/access/helpdesk/help/helpdesk.shtml)
MATLAB Central file exchange (www.mathworks.com/matlabcentral/fileexchange)

Linear Algebra
Freely available software (www.netlib.org/utk/people/JackDongarra/la-sw.html)
BLAS = Basic Linear Algebra Subprograms (www.netlib.org/blas)
EISPACK and LINPACK (classics, superseded by LAPACK)
LAPACK (www.netlib.org/lapack)
ScaLAPACK (www.netlib.org/scalapack)
ARPACK for large eigenvalue problems (www.caam.rice.edu/software/ARPACK)
EigTool for nonsymmetric eigenvalues and pseudospectra (https://github.com/eigtool/eigtool)
Templates for the Solution of Linear Systems (www.netlib.org/linalg/html_templates/Templates.html)
Templates for the Solution of Algebraic Eigenvalue Problems (www.cs.utk.edu/~dongarra/etemplates/)
AZTEC = A Massively Parallel Iterative Solver Library for Solving Sparse Linear Systems (www.cs.sandia.gov/CRF/aztec1.html)
Matrix Market (math.nist.gov/MatrixMarket)
In Matlab: help sparfun or doc sparfun

Ordinary Differential Equations and Dynamical Systems
ODEPACK (www.netlib.org/odepack)
PHASER (www.phaser.com)
Chebfun get started with chebgui (www.chebfun.org)
In Matlab: help funfun or doc funfun

Partial Differential Equations
CLAWPACK for conservation laws (depts.washington.edu/clawpack)
PLTMG 2D elliptic PDE package (www.scicomp.ucsd.edu/~reb/software.html)
M-files for spectral methods (people.maths.ox.ac.uk/trefethen/spectral.html)
Comsol Multiphysics (= FEMLAB) (www.comsol.com)
Matlab PDE Toolbox (www.mathworks.com/products/pde)
DIFFPAK (www.diffpack.com)
In Matlab: help pde or doc pde

Optimization
NEOS (www.neos-server.org.neos)
Decision Tree for Optimization Software (plato.la.asu.edu/guide.html)
Matlab Optimization Toolbox (www.mathworks.com/products/optimization)
In Matlab: help optim or doc optim

Other Numerical Topics
Top 500 Supercomputer Sites (www.top500.org)
MGNET = Multigrid/multilevel/multiscale... Network (www.mgnet.org)
Spline bibliography (www.cs.wisc.edu/~deboor/bib/bib.html)
Digital Library of Mathematical Functions (dlmf.nist.gov)
wavelet.org (www.wavelet.org)

Computational Fluid Dynamics
CFD Online (www.cfd-online.com)
FLUENT (www.ansys.com/Products)
FEniCS (fenicsproject.org)
OpenFOAM (www.openfoam.com)

Statistics
Statlib (lib.stat.cmu.edu)
SPSS (www.spss.com)
R (www.r-project.org)
SAS (www.sas.com)
In Matlab: help stats or doc stats

Computation on the Web
NEOS Server for Optimization (neos.mcs.anl.gov/)
NetSolve/GridSolve (www.cs.utk.edu/netsolve)
On-line Encylopedia of Integer Sequences (oeis.org)
Inverse Symbolic Calculator (https://isc.carma.newcastle.edu.au)
WolframAlpha (www.wolframalpha.com)

Chef's Choice
Schwarz-Christoffel toolbox for MATLAB (www.math.udel.edu/~driscoll/SC)
Chebfun numerical computing with functions (www.chebfun.org)

High-Performance Computing
PETSc = Portable, Extensible Toolkit for Scientific Computation (www.mcs.anl.gov/petsc)
hpc netlib = High-Performance Netlib (wotug.org/parallel/nhse/hpc-netlib)
MPI = Message-Passing Interface (for distributed memory computers) (www.mcs.anl.gov/mpi)
OpenMP (for shared memory computers) (www.openmp.org)
ATLAS = Automatically Tuned Linear Algebra Software (math-atlas.sourceforge.net)
ARC = Oxford Advanced Research Computing (www.arc.ox.ac.uk)

Graphics and Visualization
IRIS Explorer (www.nag.com/welcome_iec.asp)
AVS = Advanced Visual Systems (www.avs.com)
Fieldview (www.ilight.com) (this and next two especially good for CFD)
In Matlab: help graphics or doc graphics

Return to Trefethen homepage