Disclaimer:
By selecting these links, you will be leaving NIST web space. We have
provided these links to other web sites because they may have information
that might be of interest to you. No inferences should be drawn on
account of other sites being referenced, or not, from this page. There
may be other web sites that are more appropriate for your purpose. NIST
does not necessarily endorse the views expressed, or concur with the
facts presented on these sites. Further, NIST does not endorse any
commercial products that may be mentioned on these sites.
We welcome suggestions of additional WWW links appropriate to this page.
Please address comments about this page to
.
Information on global optimization (and some additional information on local
optimization) collected by Arnold Neumaier of the Computational Mathematics
group at the University of Vienna.
A directory of software and other materials useful in the teaching of mathematics
at the college level maintained by the Mathematics Department at the University
of Tennessee at Knoxville.
A listing of optimization software packages maintained by the Optimization
Technology Center of Argonne National Laboratory and Northwestern University.
An extensive survey of the literature and available software
for the evaluation of the higher transcendental functions. Includes more than
600 references organized by topic.
A searchable directory of links to software and other information related to the solution of partial
differential equations. Maintained by Numerical Objects, AS.
An interdisciplinary journal for the computational
physics and physical chemistry communities. Publishes software in the CPC
International Program Library.
Software developed by the Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB).
Includes the Reduce Network Library, CodeLib, and mathematical programming software.
Note:By "freely available" we mean that this software may be downloaded
at no cost for non-commercial use. We do not include trial versions of commercial
software in this list.
Software for ordering sparse matrices prior to Cholesky factorization (or LU
factorization with diagonal pivoting). It has versions in both C and Fortran,
with a MATLAB interface. Developed by Patrick Amestoy, Tim Davis, and
Iain Duff.
A collection of specially tuned Basic Linear Algebra Subroutines (BLAS) for
the Intel Pentium III and 4 architectures. All BLAS levels (1-3) are supported
in both single and dual threaded modes.
(Control of Accuracy and Debugging for Numerical Applications) is a library of tools for estimating the
round-off error propagation of scientific codes written in Fortran or C.
This "conservation laws package" includes Fortran routines to
solve hyperbolic systems of partial differential equations (not just
conservation laws) in 1, 2, and 3 space dimensions.
Includes MPI versions, Matlab routines for graphics and
visualization, and a number of sample application directories
An interactive environment for general numerical computation with scalars, matrices,
complex values and graphics. More than 300 built-in functions for use in Calculator
mode as well as in programming mode with a C-like programming language.
Matlab software for computing a few extreme eigenvalues of the large matrix
eigenvalue problems: A x = lambda x or A x = lambda B x,
where A, B are symmetric and B is greater than 0. The program uses incomplete
factorizations to precondition an eigenvalue problem for a Krylov
subspace method and is particularly suitable for problems where
factorization of B (i.e., inverting B) or factorization of a shifted
matrix (i.e. shift-and-invert) is difficult.
Developed by Qiang Ye of the University of Kentucky.
A GUI (Graphical User Interface) that integrates MATLAB's eigs routine (ARPACK) for finding a
few eigenvalues of a large sparse matrix with the (now obsolete) Pseudospectra GUI for computing
pseudospectra of matrices.
Fortran subroutine library of Fast Fourier Transforms
developed at the National Center for Atmospheric Research.
This release includes single and multiple instance
complex-to-complex and real-to-real transforms, two-dimensional
complex-to-complex and real-to-complex transforms, and a collection of
sine and cosine transforms.
A library of thread-safe Fortran 90 packages for large-scale nonlinear
optimization. Includes two packages for nonconvex quadratic
programming (one being interior-point based, the other is of the
active/working set variety), a quadratic programming preprocessing
package, an updated version of LANCELOT, and a number of other
subsidiary optimization-related tools.
Parallel finite element codes for linear/nonlinear solid
mechanics and thermal fluid simulations, parallel iterative linear solver
library, partitioning subsystem, parallel visualization subsystem and
utilities for parallel I/O and coupling of multiple codes. GeoFEM is
originally developed for solid earth simulation but applicable for various
types of engineering and science applications. Written in Fortran 90 and MPI.
Plot utilities for generating 2D vector graphics.
Includes libplot, a C-callable or C++-callable library for generating Postscript and many
other vector graphics formats.
a collection of routines for numerical computing. The routines are written from scratch by the GSL
team in ANSI C, and are meant to present a modern Applications Programming Interface (API) for C programmers,
while allowing wrappers to be written for very high level languages.
A generic library for grid data structures and algorithms operating on them,
inspired by the success of the C++ Standard Template Library.
GrAL was developed with applications for numerical PDE (partial differential equations) solution in mind, but
the software is useful for computational geometry, geometric modeling, graphics, and geographic information
systems.
Software with error bounds for computing the generalized Schur decomposition of
an arbitrary pencil A-zB (regular or singular). The decomposition (GUPTRI -
Generalized Upper TRIangular form) is a generalization of the Schur canonical
form of A - zI to matrix pencils and reveals the Kronecker structure of a
singular pencil.
A collection of C++ classes representing basic mathematical objects such as vectors,
linear and nonlinear operators, and functions. HCL also provides algorithms for optimization and
linear algebra implemented in terms of these basic classes.
A math library for .NET, developed at Technische Universitat Berlin. It turns C# into a 1st class mathematical language
including a high-level syntax (similar to Matlab), high performance, wide platform support
and 2D and 3D visualization features. It's also possible to use ILNumerics in a web browser.
The Community Edition of ILNumerics is free (GPL).
A linear algebra library for Java, providing user-level classes for
constructing and manipulating real, dense matrices. Includes basic
matrix factorizations and facilities to solve linear systems and
eigenvalue problems.
A sparse matrix library for Java. Supports several sparse formats (dynamic and
static), thread-safe matrix assembly, and multi-threaded matrix/vector
operations. Includes a suite of Krylov methods and preconditioners (from the
Templates book), dense matrix decompositions such as LU, QR, SVD (from the
Jama project), and some simple eigenvalue/eigenvector solvers.
A user-friendly package for LMI optimization. (LMI problems have matrix variables
subject to equality and positive-definiteness constraints and the objective
function is linear in these variables.
A Fortran 95 wrapper implementing matrix operations and
decompositions using Lapack and the Blas. Provides
the flavor and convenience of coding in matrix oriented systems like
Matlab, Octave, etc.
A collection of MATLAB M-files containing functions for
constructing test matrices, computing matrix factorizations, visualizing
matrices, and carrying out direct search optimization.
An abstract (pure virtual) base C++ class which defines the interface between a
generic (single-commodity) (linear) Min Cost Flow (MCF) problem solver and application programs.
MultiLOCal Particle Swarm Optimization Algorithm) solver for AMPL.
Devoted to bound constrained optimization based on the particle swarm paradigm.
Attempts to find all the global and local optima.
Uses first derivatives of the objective function.
Perform model reduction for finite element models developed in ANSYS.
For thermal and structural mechanics problems, the transient and
harmonic response of the FE models up to a dimension of 300 000 can often be
well approximated by a reduced model of a dimension of less than 30.
Double-double precision, quad-double precision and arbitrary precision (multiprecision) software written by
David H. Bailey (LBNL), Yozo Hida (U.C. Berkeley), and Sherry Li (LBNL).
The MUltifrontal Massively Parallel Solver is a Fortran 90 package for
solving linear systems of equations of the form A x = b, where the
matrix A is sparse and can be either unsymmetric, symmetric positive
definite, or general symmetric. Available in various arithmetics (real or
complex, single or double), and with or without MPI.
A Unix command-line ordinary differential equation solver. An interface to Hairer's dop853 code which avoids
any C programming, so that, e.g., one may type at the shell prompt:
ode.py x.=3*y-3*x y.=-x*z+26*x-y z.=x*y-z x=0 y=1 z=10
An object-oriented package for nonlinear optimization. Includes support
for general linear and nonlinear constraints, parallel optimization,
nonlinear interior point, direct search, nonlinear
conjugate gradient, quasi-Newton and full Newton methods.
The Optimized Sparse Kernel Interface (OSKI) Library is a collection of
low-level C primitives that provide automatically tuned computational kernels
on sparse matrices, for use in solver libraries and applications.
A thread-safe, memory efficient software for solving large sparse symmetric and
unsymmetric linear systems of equations on shared memory multiprocessors.
An MPI-based parallel library that implements a variety of algorithms for partitioning
unstructured graphs, meshes, and for computing fill-reducing orderings for sparse matrices.
Software in ANSI C for obtaining a sequence of successive coarse grids that are well-suited for geometric
multigrid methods. Both sequential and parallel (MPI-based) versions are included.
A parallel dense linear algebra package. Includes FLAME, the Formal Linear Algebra Methods Environment,
and ITXGEMM, high performance matrix multiplication for the PIII.
A high-level system with Matlab-like syntax for system control and signal
processing applications. Available for Unix systems as well as for Windows 95
and the Macintosh.
Tools for building problem-solving environments (PSEs) on Irix and Linux
from the Scientific Computing and Imaging Institute of the University of Utah.
A computer algebra system for polynomial computations with special emphasis on the needs of commutative
algebra, algebraic geometry, and singularity theory.
A software library for the solution of large sparse eigenvalue problems on
parallel computers. Applicable to problems formulated in either standard or
generalized form, both Hermitian and non-Hermitian, with either real or complex
arithmetic. Built on the PETSc package.
A free MATLAB toolbox for formulating and solving sum of squares (SOS) optimization
programs. SOSTOOLS provides a high-level user interface to specify the sum of squares
programs. The problems are solved using SeDuMi, a well-known semidefinite programming
solver.
An ODE solver generator, Taylor reads a system of ODEs and outputs an ANSI C routine
that performs a single step of the numerical integration of these ODEs by means of the Taylor method.
The stepsize and the order is selected adaptively to keep the local error below a given threshold,
and to minimize the global computational effort.
Taylor also includes support for several extended precision arithmetics.
It was written by Maorong Zou and Àngel Jorba.
A MATLAB toolbox of level set methods, a class of numerical algorithms for
simulating dynamic implicit surfaces and approximating of solutions to the
Hamilton-Jacobi partial differential equation.
An effort to develop parallel solver algorithms and libraries within an
object-oriented software framework for the solution of large-scale, complex
multi-physics engineering and scientific applications.
Includes solvers for linear systems, eigenvalue problems, nonlinear systems.
A C library of functions that implements two-stage scattered data fitting
methods based on local approximation with polynomials and radial basis
functions in the first stage and bivariate spline quasi-interpolation by
extension in the second stage.
A C++ implementation of lazy exact real arithmetic, an alternative to multiple-precision floating-point.
With XR no precision level is set in advance, and no computation takes place until a final
request takes place for output.
Makers of SysQuake, an interactive system for the design and simulation of dynamical systems
for Windows and Macs, and LyME, a scientific application for Palm with a Matlab-compatible language.
Makers of NMath, mathematical and statistical software components for the .NET environment
(callable from any .NET language, such as C# and VisualBasic.NET).
Makers of graphics and statistics software for scientists and engineers, including
CoPlot, a program for creating publication-quality scientific graphs, maps, and technical
drawings, and CoStat, a program for data manipulation and statistics.
Makers of DADiSP, a multipurpose graphical spreadsheet package for analyzing
and displaying data. Includes more than 500 functions, as well as a complete
programming language.
A mathematical graphing tool, for students, scientists and engineers.
Includes nonlinear curve fitting and
integration of coupled ordinary differential equations.
Makers of HiQ, an interactive mathematical problem-solving environment
for Macintosh and Power Machintosh computers, and LabView, a system
for measurement analysis, signal processing, and mathematics.
Developers of the IMSL Fortran and C Numerical and graphical libraries,
PV-WAVE data analysis products, and the Stanford Graphics
presentation graphics system.
Makers of Mathematica, a software system for numeric, symbolic, and graphical computations, and
CalculationCenter, a mathematical problem-solving environment with a simplified user interface.
Makers of software for calculus students and educators, such as 3D Surface Viewer for Windows and
a series of mathematical utilities for the TI-83 calculator.
A mathematical assistant for secondary level or high school students and
teachers. Includes algebra, geometry, analysis, stochastics and linear algebra. (Shareware)
Developers of LiveMath Maker, a computer-algebra system, which through the use of a
free plug-in, allows interactivity of LiveMath notebooks embedded in Web pages, and
the MathEQ Equation Editor for mathematical expression typesetting.