NUMERICAL SOFTWARE TOOLS
AND INFORMATION SOURCES
Nick Trefethen, October 2019.
See people.maths.ox.ac.uk/trefethen/tools.html.
Software Repositories
Netlib (www.netlib.org)
NHSE = National HPCC
Software Exchange (wotug.org/parallel/nhse)
CALGO = Collected Algorithms
of the ACM (calgo.acm.org)
GitHub the dominant open-source
repository (https://github.com)
Information Portals
swMATH modern style search
capabilities
(https://swmath.org)
GAMS = NIST Guide to Available Mathematical Software
(gams.nist.gov)
MathSciNet
(mathscinet.ams.org)
NA Digest weekly
online bulletin (www.netlib.org/na-digest-html)
Numerical Analysis Journals
ACM Transactions on Mathematical Software
Acta Numerica
Foundations of Computational Mathematics
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
General-Purpose Libraries
NAG (www.nag.co.uk)
IMSL
(www.roguewave.com/products-services/imsl-numerical-libraries)
HSL Mathematical
Software Library (www.hsl.rl.ac.uk)
Numerical Recipes (http://numerical.recipes/)
GNU Scientific Library (www.gnu.org/software/gsl)
Wilkinson Software Prizes
DASSL
(and DASPK) = Differential Algebraic Equation Solver
(https://cse.cs.ucsb.edu/software)
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 (https://github.com/coin-or/Ipopt)
dolfin-adjoint = automatic
derivation of adjoint models (www.dolfin-adjoint.org)
Julia = programming
language (https://julialang.org)
Symbolic and Extended Precision Computation
Maple (www.maplesoft.com)
Mathematica (www.wolfram.com)
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 Central
(www.mathworks.com/matlabcentral/)
...and of course there are also other languages including
Julia and
Python/SciPy
Linear Algebra
SuiteSparse
(http://faculty.cse.tamu.edu/davis/suitesparse.html)
Freely available software
(www.netlib.org/utk/people/JackDongarra/la-sw.html)
BLAS = Basic Linear Algebra Subprograms (www.netlib.org/blas)
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)
Eigen (eigen.tuxfamily.org/index.php?title=Main_Page)
Matrix Market
(math.nist.gov/MatrixMarket)
In Matlab:
help sparfun or doc sparfun
Ordinary Differential Equations and Dynamical Systems
ODEPACK
(www.netlib.org/odepack)
Exploring ODEs
(freely available at people.maths.ox.ac.uk/trefethen/ExplODE, solves IVPs and BVPs in
Chebfun)
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)
FEniCS (fenicsproject.org)
Firedrake (www.firedrakeproject.org)
FreeFEM (freefem.org)
Comsol Multiphysics (= FEMLAB) (www.comsol.com)
NEKTAR++ (www.nektar.info)
Optimization
NEOS
(www.neos-server.org.neos)
Decision Tree for Optimization
Software (plato.la.asu.edu/guide.html)
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)
Digital Library of Mathematical Functions
(dlmf.nist.gov)
The Mathematical Functions Grimoire
(http://fungrim.org/)
Computational Fluid Dynamics
CFD Online
(www.cfd-online.com)
FLUENT (www.ansys.com/Products)
OpenFOAM (www.openfoam.com)
Statistics
R (www.r-project.org)
SAS (www.sas.com)
In Matlab:
help stats or doc stats
Computation on the Web
NEOS Server for Optimization
(www.neos-server.org/neos)
NetSolve/GridSolve
(www.cs.utk.edu/netsolve)
On-line Encylopedia of
Integer Sequences (oeis.org)
WolframAlpha
(www.wolframalpha.com)
Chef's Choice
Schwarz-Christoffel
Toolbox for MATLAB (www.math.udel.edu/~driscoll/SC)
Chebfun
numerical computing with functions in 1D/2D/3D
(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.open-mpi.org)
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)
ParaView (www.paraview.org)