List of numerical libraries
Encyclopedia
List of numerical libraries used for performing numerical
Numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis ....

 calculations:

Multi-language

  • NAG Libraries mathematical and statistical routines for multiple programming languages (C, C++, Fortran, Java, Python, .NET), packages (MATLAB, Maple, Excel) and GPUs, multicore, manycore
  • ALGLIB
    ALGLIB
    ALGLIB is a cross-platform open source numerical analysis and data processing library. It is written in specially designed pseudocode which is automatically translated into several target programming languages . ALGLIB is relatively young project - active development started only in 2008, while...

     is an open source numerical analysis library which may be used from C++, C#, FreePascal, Delphi, VBA.
  • IMSL Numerical Libraries
    IMSL Numerical Libraries
    IMSL is a commercial collection of software libraries of numerical analysis functionality that are implemented in the computer programming languages of C, Java, C#.NET, and Fortran...

     are libraries of numerical analysis functionality implemented in standard programming languages like C, Java, C# .NET, and Fortran.
  • JACKET is a runtime platform for C, C++ and matlab that uses GPUs for acceleration.

C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 and C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

  • Apophenia is a C library, based on the GSL (below), that provides functions and structures on the level of data sets and statistical models.
  • Armadillo
    Armadillo (C++ library)
    The Armadillo C++ Library aims to provide an efficient and streamlined base for linear algebra operations , while at the same time having a straightforward and easy to use interface...

     is a C++ linear algebra library (matrix and vector maths), aiming towards a good balance between speed and ease of use. It employs template classes, and has optional links to BLAS and LAPACK.
  • BLOPEX
    BLOPEX
    The Block Locally Optimal Preconditioned Eigenvalue Xolvers is a suite of routines for the scalable solution of eigenvalue problems. Its object-oriented design allows easy portability. Currently available built-in interfaces are Hypre, PETSc, MATLAB, GNU Octave, and a serial stand-alone version...

     Block Locally Optimal Preconditioned Eigenvalue Xolvers is an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     library for the scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solution of eigenvalue problems. Its object-oriented design allows easy portability.
  • deal.II is an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     library for the computational solution of PDE problems using adaptive
    Adaptive mesh refinement
    In numerical analysis, adaptive mesh refinement is a method of adaptive meshing. Central to any Eulerian method is the manner in which it discretizes the continuous domain of interest into a grid of many individual elements...

     continuous
    Finite element method
    The finite element method is a numerical technique for finding approximate solutions of partial differential equations as well as integral equations...

     or discontinuous finite elements
    Discontinuous Galerkin method
    Discontinuous Galerkin methods in mathematics form a class of numerical methods for solving partial differential equations. They combine features of the finite element and the finite volume framework and have been successfully applied to hyperbolic, elliptic and parabolic problems arising from a...

    .
  • dlib is an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     library which includes a linear algebra component capable of using BLAS and LAPACK along with various non-linear optimization algorithms and machine learning tools.
  • Eigen, an efficient open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     C++ template
    Template (programming)
    Templates are a feature of the C++ programming language that allow functions and classes to operate with generic types. This allows a function or class to work on many different data types without being rewritten for each one....

     library for linear algebra and numerical analysis supporting small, large, dense and sparse
    Sparse matrix
    In the subfield of numerical analysis, a sparse matrix is a matrix populated primarily with zeros . The term itself was coined by Harry M. Markowitz....

     matrices.
  • GNU Scientific Library
    GNU Scientific Library
    In computing, the GNU Scientific Library is a software library written in the C programming language for numerical calculations in applied mathematics and science...

    , a popular, free numerical analysis library for C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

     and C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

    .
  • GNU Multi-Precision Library
    GNU Multi-Precision Library
    The GNU Multiple Precision Arithmetic Library, also known as GMP, is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and floating point numbers...

     is a library for doing arbitrary precision arithmetic.
  • Hermes Project
    Hermes Project
    Hermes is a C++/Python libraryof algorithms for rapid development of adaptive hp-FEM solvers...

    : C/C++/Python library for rapid prototyping of space- and space-time adaptive hp-FEM solvers.
  • hypre
    Hypre
    The Parallel High Performance Preconditioners is a library of routines for scalable solution of linear systems. The built-in BLOPEX package in addition allows solving eigenvalue problems. The main strength of Hypre is availability of high performance parallel multigrid preconditioners for both...

     High Performance Preconditioners is an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     library of routines for scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solution of linear systems and preconditioning.
  • IML (numerical library) is a C library for linear algebra on integers.
  • IML++
    IML++
    IML++, or the Iterative Methods Library, is a C++ library for solving linear systems of equations. It is said to be "templated" in the sense that the same source code works for dense, sparse, and distributed matrices....

     is a C++ library for solving linear systems of equations, capable of dealing with dense, sparse, and distributed matrices.
  • IT++ is a C++ library for linear algebra (matrices and vectors), signal processing and communications. Functionality similar to MATLAB and Octave.
  • LAPACK++
    LAPACK++
    LAPACK++, the Linear Algebra PACKage in C++, is a computer software library of algorithms for numerical linear algebra that solves systems of linear equations and eigenvalue problems....

    , a C++ wrapper library for LAPACK
    LAPACK
    -External links:* : a modern replacement for PLAPACK and ScaLAPACK* on Netlib.org* * * : a modern replacement for LAPACK that is MultiGPU ready* on Sourceforge.net* * optimized LAPACK for Solaris OS on SPARC/x86/x64 and Linux* * *...

     and BLAS
    Blas
    Blas is mainly a Spanish given name and surname, related to Blaise. It may refer to-Places:*Piz Blas, mountain in Switzerland*San Blas , many places - see separate article, also**Cape San Blas Light, lighthouse...

  • LinBox
    LinBox
    LinBox is a C++ template library for doing exact computational linear algebra. LinBox is free software released under the GNU Lesser General Public License....

     is a C++ template library for doing exact computational linear algebra.
  • Lis
    Lis (linear algebra library)
    Lis is a scalable parallel library for solving systems of linear equations and standard eigenvalue problems with real sparse matrices using iterative solvers.- Features :...

     is a scalable parallel library for solving systems of linear equations and standard eigenvalue problems with real sparse matrices using iterative methods.
  • MTL4
    Matrix Template Library
    The Matrix Template Library is a linear algebra library for C++ programs.The MTL uses template programming, which considerably reduces the code length. All matrices and vectors are available in all classical numerical formats: float, double, complex or complex.Furthermore, generic programming...

     is a generic C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

     template library providing sparse and dense BLAS functionality. MTL4 establishes an intuitive interface (similar to MATLAB
    MATLAB
    MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

    ) and broad applicability thanks to Generic programming
    Generic programming
    In a broad definition, generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters...

    .
  • NAG Numerical Libraries
    NAG Numerical Libraries
    NAG Numerical Libraries is a software product sold by The Numerical Algorithms Group Ltd . The product is a software library of numerical analysis routines. It comprises a collection of 1500 mathematical and statistical algorithms. Areas covered include linear algebra, optimization, quadrature,...

     are implementations (for a wide variety of platforms) of a software library of numerical analysis routines, which can be called from user applications.
  • NTL
    Number Theory Library
    NTL is a C++ library for doing number theory. NTL supports arbitrary length integer and arbitrary precision floating point arithmetic, finite fields, vectors, matrices, polynomials, lattice basis reduction and basic linear algebra. NTL is free software released under the GNU General Public License....

     is a C++ library for number theory.
  • Symmetrica is a C library for representation theory
    Representation theory
    Representation theory is a branch of mathematics that studies abstract algebraic structures by representing their elements as linear transformations of vector spaces, and studiesmodules over these abstract algebraic structures...

    .
  • Portable, Extensible Toolkit for Scientific Computation
    Portable, Extensible Toolkit for Scientific Computation
    The Portable, Extensible Toolkit for Scientific Computation , is a suite of data structures and routines for the scalable solution of scientific applications modeled by partial differential equations. It employs the Message Passing Interface standard for all message-passing communication...

     (PETSc), is a suite of data structures and routines for the scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solution of scientific applications modeled by partial differential equations.
  • SLEPc
    SLEPc
    SLEPc is a software library for the parallel computation of eigenvalues and eigenvectors of large, sparse matrices. It can be seen as a module of PETSc that provides solvers for different types of eigenproblems, including linear and quadratic, as well as the SVD. It uses the MPI standard for...

     Scalable Library for Eigenvalue Problem Computations is a PETSc-based open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     library for the scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solution of eigenvalue problems.
  • Trilinos
    Trilinos
    Trilinos is a collection of open source software libraries, called packages, intended to be used as building blocks for the development of scientific applications...

    , an effort to develop scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solver algorithms and libraries within an object-oriented software framework for the solution of large-scale, complex multi-physics engineering and scientific applications. A unique design feature of Trilinos is its focus on packages.
  • VNL, part of the VXL vision libraries.

.NET Framework Languages C#, F# and VB.NET
Visual Basic .NET
Visual Basic .NET , is an object-oriented computer programming language that can be viewed as an evolution of the classic Visual Basic , which is implemented on the .NET Framework...

  • Dambach Linear Algebra Framework is a new general purpose linear algebra framework to enable the elegant expression and solution of linear algebra problems and models.
  • DotNumerics is a Numerical Library for .NET written in C#. It provides routines for: Linear Algebra (CSLapack, CSBlas, CSEispack), Differential Equations and Optimization.
  • ILNumerics.Net
    ILNumerics.Net
    ILNumerics is an mathematical class library for .NET software developers. It simplifies the implementation of all kinds of numerical algorithms. ILNumerics was designed for helping developers to create distribution-ready applications. Interfaces of existing algebra systems were often found to be...

     typesafe numerical array classes and functions for general math and linear algebra, aims .NET/mono, script-like syntax in C#, 2D & 3D plot controls
  • Math.NET is a mathematical open source (MIT/X11, LGPL & GPL) library written in C#/F#, aiming to provide a self Math.Net Numerics is the numerical component which was built by merging the Math.Net Iridium library and dnAnalytics
    DnAnalytics
    dnAnalytics is an open-source numerical library for .NET written in C# and F#. It features functionality similar to BLAS and LAPACK.- Features :The software library provides facilities for:...

    .
  • Meta.Numerics is a library for scientific and technical computation on the .NET Framework
    .NET Framework
    The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...

    . Its functionality includes matrix algebra, statistics and data analysis, advanced functions, and signal processing. The Meta.Numerics library is object-oriented, performance-optimized, documented, and compatible with both Mono
    Mono (software)
    Mono, pronounced , is a free and open source project led by Xamarin to create an Ecma standard compliant .NET-compatible set of tools including, among others, a C# compiler and a Common Language Runtime....

     and Silverlight.
  • NAG Library for .NET is a set of numerical routines optimized for use in the .NET environment
  • NLinear is a generic
    Generic programming
    In a broad definition, generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters...

     linear algebra toolkit in C# compatible with Silverlight.
  • NMath
    NMath
    NMath is a numerical package for the Microsoft .NET Framework. It is developed by CenterSpace Software. Version 1.0 was released in March, 2003 as NMath Core...

     by CenterSpace Software
    CenterSpace Software
    CenterSpace Software, LLC. is a commercial software development company with headquarters in Corvallis, Oregon, USA, that produces numerical and statistical class libraries for the .NET Framework...

     are numerical component libraries for the .NET platform. The libraries include high performance signal processing (FFT) classes, an extensive linear algebra (LAPACK & BLAS) framework, and a statistics package including descriptive statistics, distributions, ANOVA, and multivariate analysis (NMF, k-means, PCA). Most classes scale with the number of processor cores.
  • SCINET is an object-based high performance Scientific Software Framework for the Microsoft .NET platform. It is purely written in C# programming language and fully compliant with the Microsoft's CLI specification.
  • Sho is a library and interactive environment from Microsoft Research for data analysis and scientific computing, that includes powerful and efficient libraries for linear algebra as well as data visualization.
  • Machine Learning for .NET is a library designed to assist in the use of common Machine Learning Algorithms in conjunction with the .NET platform. It is designed to include the most popular supervised and unsupervised learning algorithms while minimizing the friction involved with creating the predictive models.
  • FinMath is a library for scientific and financial computation on the .NET Framework
    .NET Framework
    The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...

    . Its functionality includes vector and matrix algebra, statistics, data analysis, advanced functions, signal processing, numerical optimization and many more. It uses Intel Math Kernel Library and Intel Integrated Performance Primitives to do most of the low-level computations while providing simple and object oriented interface.

Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

  • Alan Miller's Fortran Software
  • BLAS
    Blas
    Blas is mainly a Spanish given name and surname, related to Blaise. It may refer to-Places:*Piz Blas, mountain in Switzerland*San Blas , many places - see separate article, also**Cape San Blas Light, lighthouse...

     (Basic Linear Algebra Subprograms) is a de facto application programming interface
    Application programming interface
    An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

     standard for publishing libraries to perform basic linear algebra
    Linear algebra
    Linear algebra is a branch of mathematics that studies vector spaces, also called linear spaces, along with linear functions that input one vector and output another. Such functions are called linear maps and can be represented by matrices if a basis is given. Thus matrix theory is often...

     operations such as vector
    Vector space
    A vector space is a mathematical structure formed by a collection of vectors: objects that may be added together and multiplied by numbers, called scalars in this context. Scalars are often taken to be real numbers, but one may also consider vector spaces with scalar multiplication by complex...

     and matrix multiplication
    Matrix multiplication
    In mathematics, matrix multiplication is a binary operation that takes a pair of matrices, and produces another matrix. If A is an n-by-m matrix and B is an m-by-p matrix, the result AB of their multiplication is an n-by-p matrix defined only if the number of columns m of the left matrix A is the...

    .
  • CERNLIB
    CERN Program Library
    The CERN Program Library or CERNLIB is a collection of FORTRAN77 libraries and modules, maintained "as is" by CERN. Its content ranges from more specialized data analysis of high energy physics to general purpose numerical analysis...

     is a collection of FORTRAN 77 libraries and modules.
  • CMLIB (NIST Core Math Library) is a library of Fortran
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     routines compiled by the National Institute of Standards and Technology
    National Institute of Standards and Technology
    The National Institute of Standards and Technology , known between 1901 and 1988 as the National Bureau of Standards , is a measurement standards laboratory, otherwise known as a National Metrological Institute , which is a non-regulatory agency of the United States Department of Commerce...

    .
  • EISPACK
    EISPACK
    EISPACK is a software library for numerical computation of eigenvalues and eigenvectors of matrices, written in FORTRAN. It contains subroutines for calculating the eigenvalues of nine classes of matrices: complex general, complex Hermitian, real general, real symmetric, real symmetric banded,...

     is a software library for numerical computation of eigenvalues and eigenvectors of matrices, written in FORTRAN
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

    . It contains subroutines for calculating the eigenvalues of nine classes of matrices
    Matrix (mathematics)
    In mathematics, a matrix is a rectangular array of numbers, symbols, or expressions. The individual items in a matrix are called its elements or entries. An example of a matrix with six elements isMatrices of the same size can be added or subtracted element by element...

    : complex general, complex Hermitian
    Hermitian
    A number of mathematical entities are named Hermitian, after the mathematician Charles Hermite:*Hermitian adjoint*Hermitian connection, the unique connection on a Hermitian manifold that satisfies specific conditions...

    , real general, real symmetric, real symmetric banded
    Band matrix
    In mathematics, particularly matrix theory, a band matrix is a sparse matrix whose non-zero entries are confined to a diagonal band, comprising the main diagonal and zero or more diagonals on either side.-Matrix bandwidth:...

    , real symmetric tridiagonal, special real tridiagonal, generalized real, and generalized real symmetric matices.
  • Harwell Subroutine Library
    Harwell Subroutine Library
    HSL, originally the Harwell Subroutine Library, is a collection of Fortran 77 and 95 codes that address core problems in numerical analysis...

     is a collection of Fortran 77 and 95 codes that address core problems in numerical analysis.
  • John Burkardt's FORTRAN 77 and Fortran 90 source codes.
  • LAPACK
    LAPACK
    -External links:* : a modern replacement for PLAPACK and ScaLAPACK* on Netlib.org* * * : a modern replacement for LAPACK that is MultiGPU ready* on Sourceforge.net* * optimized LAPACK for Solaris OS on SPARC/x86/x64 and Linux* * *...

    , the Linear Algebra PACKage, is a software library for numerical computing originally written in FORTRAN 77
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     and now written in Fortran 90
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

    .
  • LINPACK
    LINPACK
    LINPACK is a software library for performing numerical linear algebra on digital computers. It was written in Fortran by Jack Dongarra, Jim Bunch, Cleve Moler, and Gilbert Stewart, and was intended for use on supercomputers in the 1970s and early 1980s...

     is a software library
    Library (computer science)
    In computer science, a library is a collection of resources used to develop software. These may include pre-written code and subroutines, classes, values or type specifications....

     for performing numerical linear algebra
    Linear algebra
    Linear algebra is a branch of mathematics that studies vector spaces, also called linear spaces, along with linear functions that input one vector and output another. Such functions are called linear maps and can be represented by matrices if a basis is given. Thus matrix theory is often...

     on digital computers. It was written in Fortran
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     by Jack Dongarra
    Jack Dongarra
    Jack J. Dongarra is a University Distinguished Professor of Computer Sciencein the Electrical Engineering and Computer Science Department at the University of Tennessee...

    , Jim Bunch, Cleve Moler
    Cleve Moler
    Cleve Barry Moler is a mathematician and computer programmer specializing in numerical analysis. In the mid to late 1970s, he was one of the authors of LINPACK and EISPACK, Fortran libraries for numerical computing. He invented MATLAB, a numerical computing package, to give his students at the...

    , and Pete Stewart, and was intended for use on supercomputer
    Supercomputer
    A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...

    s in the 1970s and early 1980s. It has been largely superseded by LAPACK
    LAPACK
    -External links:* : a modern replacement for PLAPACK and ScaLAPACK* on Netlib.org* * * : a modern replacement for LAPACK that is MultiGPU ready* on Sourceforge.net* * optimized LAPACK for Solaris OS on SPARC/x86/x64 and Linux* * *...

    , which will run more efficiently on modern architectures.
  • Lis
    Lis (linear algebra library)
    Lis is a scalable parallel library for solving systems of linear equations and standard eigenvalue problems with real sparse matrices using iterative solvers.- Features :...

     is a scalable parallel library for solving systems of linear equations and standard eigenvalue problems with real sparse matrices using iterative methods.
  • MINPACK
    MINPACK
    MINPACK is a library of FORTRAN subroutines for the solving of systems of nonlinear equations, or the least squares minimization of the residual of a set of linear or nonlinear equations....

      is a library of FORTRAN
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     subroutines for the solving of systems of nonlinear equations, or the least squares
    Least squares
    The method of least squares is a standard approach to the approximate solution of overdetermined systems, i.e., sets of equations in which there are more equations than unknowns. "Least squares" means that the overall solution minimizes the sum of the squares of the errors made in solving every...

     minimization of the residual of a set of linear or nonlinear equations.
  • NAG Numerical Libraries
    NAG Numerical Libraries
    NAG Numerical Libraries is a software product sold by The Numerical Algorithms Group Ltd . The product is a software library of numerical analysis routines. It comprises a collection of 1500 mathematical and statistical algorithms. Areas covered include linear algebra, optimization, quadrature,...

     are implementations (for a wide variety of platforms) of a software library of numerical analysis routines, which can be called from user applications.
  • NOVAS
    Naval Observatory Vector Astrometry Subroutines
    The Naval Observatory Vector Astrometry Software is a software library for astrometry-related numerical computations. It is developed by the Astronomical Applications Department, United States Naval Observatory...

     is a software library for astrometry-related numerical computations. Both Fortran
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     and C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

     versions are available.
  • ODEPACK is a systemized package of routines for solving systems of initial value, ordinary differential equations, for stiff and non-stiff problems.
  • ORDERPACK Fortran 90 library for unconditional, unique, and partial ranking, sorting, and permutation.
  • Portable, Extensible Toolkit for Scientific Computation
    Portable, Extensible Toolkit for Scientific Computation
    The Portable, Extensible Toolkit for Scientific Computation , is a suite of data structures and routines for the scalable solution of scientific applications modeled by partial differential equations. It employs the Message Passing Interface standard for all message-passing communication...

     (PETSc), is a suite of data structures and routines for the scalable
    Scalability
    In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

     (parallel
    Parallel computing
    Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

    ) solution of scientific applications modeled by partial differential equations.
  • QUADPACK
    QUADPACK
    QUADPACK is a FORTRAN 77 library for numerical integration of one-dimensional functions. It was included in the SLATEC Common Mathematical Library and is therefore in the public domain. The individual subprograms are also available on netlib....

     is a FORTRAN 77 library for numerical integration
    Numerical integration
    In numerical analysis, numerical integration constitutes a broad family of algorithms for calculating the numerical value of a definite integral, and by extension, the term is also sometimes used to describe the numerical solution of differential equations. This article focuses on calculation of...

     of one-dimensional functions
  • SLATEC
    SLATEC
    SLATEC Common Mathematical Library is a FORTRAN 77 library of over 1400 general purpose mathematical and statistical routines. The code was developed at US Government research laboratories, and is in the public domain....

     is a FORTRAN 77 library of over 1400 general purpose mathematical and statistical routines.
  • SOFA
    SOFA (Astronomy)
    The SOFA software libraries are a collection of subroutines that implement official IAU algorithms for astronomical computations.As of February 2009 they are available in both Fortran and C source code format....

     is a collection of subroutines that implement official IAU
    International Astronomical Union
    The International Astronomical Union IAU is a collection of professional astronomers, at the Ph.D. level and beyond, active in professional research and education in astronomy...

     algorithms for astronomical
    Astronomy
    Astronomy is a natural science that deals with the study of celestial objects and phenomena that originate outside the atmosphere of Earth...

     computations. Both Fortran
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     and C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

     versions are available.
  • SPARSKIT
    SPARSKIT
    SPARSKIT is a tool package for working with sparse matrices. Its main objectives is to convert between different storage schemes in order to simplify exchange of data between researchers, and to do basic linear algebra and matrix manipulation. SPARSKIT is written by Yousef Saad, currently an I.T...

     is a tool package for working with sparse matrices
    Sparse matrix
    In the subfield of numerical analysis, a sparse matrix is a matrix populated primarily with zeros . The term itself was coined by Harry M. Markowitz....

    .
  • SPICELIB from JPL.
  • [ftp://ftp.ucar.edu/starpac/ STARPAC] is a library of Fortran
    Fortran
    Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

     routines for statistical data analysis from the National Institute for Standards and Technology.

Java

  • Colt provides a set of Open Source Libraries for High Performance Scientific and Technical Computing in Java.
  • Parallel Colt is a multithreaded version of Colt.
  • JAMA
    JAMA (numerical linear algebra library)
    JAMA is a software library for performing numerical linear algebra tasks created at NIST similar in functionality to LAPACK. Versions exist for both C++ and the Java programming language. The C++ version uses the Template Numerical Toolkit for lower-level operations. The Java version provides...

    , a numerical linear algebra
    Linear algebra
    Linear algebra is a branch of mathematics that studies vector spaces, also called linear spaces, along with linear functions that input one vector and output another. Such functions are called linear maps and can be represented by matrices if a basis is given. Thus matrix theory is often...

     toolkit for the Java programming language. No active development since 2005, but still one of the more popular linear algebra packages in Java.
  • JScience, an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     (multiple licenses) Java API for performing numerical calculations and data storage among other things.
  • JHepWork
    JHepWork
    jHepWork is an interactive framework for scientific computation, data analysis and data visualization designed for scientists, engineers and students...

    , an open-source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     Java libraries for numerical calculations, data I/O and visualisation of scientific results. Used together with Jython
    Jython
    Jython, successor of JPython, is an implementation of the Python programming language written in Java.-Overview:Jython programs can seamlessly import and use any Java class. Except for some standard modules, Jython programs use Java classes instead of Python modules...

    .
  • NA WorkSheet is a collective aggregation of algorithms coded in Java that implements various Numerical Analysis solutions/techniques in one easy to use opensource tool.
  • Apache Commons-Math Math library provided by Apache.org, including linear algebra, regression, and much more.
  • Apache Lucene-Mahout Machine learn library provided by Apache.org.
  • JSC (Java Statistics Classes) JSC is a project to extend the Java programming language and Java APIs (Application Programming Interfaces) to support educational and enterprise development of statistical software in Java.
  • Java-ML Machine Learning library
  • SuanShu is a pure Java numerical library provided by Numerical Method Inc. It is designed to be objected-oriented around mathematical "concepts" rather than procedures. The goal is that users can easily and quickly create complex mathematical algorithms and numerical applications by putting together the concept classes in similar way to Lego. The library covers linear algebra, analysis, Calculus and statistics.
  • Universal Java Matrix Package (UJMP) is an open source Java library that provides sparse and dense matrix classes, as well as a large number of calculations for linear algebra like matrix multiplication or matrix inverse.
  • oj! Algorithms - ojAlgo is Open Source Java code that has to do with mathematics, linear algebra and optimisation; particularly (but certainly not exclusively) suitable for the financial domain.
  • Efficient Java Matrix Library (EJML) is a linear algebra library for manipulating dense matrices. Its design goals are; 1) to be as computationally efficient as possible for both small and large matrices, and 2) to be accessible to both novices and experts.
  • Linear Algebra for Java (la4j) is elegant and pure Java implementation of linear algebra library. Its designed as full object-oriented framework based on design patterns.
  • exp4j this math expression evaluator is an implementation of Dijkstra's Shunting Yard algorithm in Java.

Python

  • JHepWork
    JHepWork
    jHepWork is an interactive framework for scientific computation, data analysis and data visualization designed for scientists, engineers and students...

     scientific libraries based on Jython
    Jython
    Jython, successor of JPython, is an implementation of the Python programming language written in Java.-Overview:Jython programs can seamlessly import and use any Java class. Except for some standard modules, Jython programs use Java classes instead of Python modules...

    , Java implementation of the Python language.
  • matplotlib
    Matplotlib
    matplotlib is a plotting library for the Python programming language and its NumPy numerical mathematics extension. It provides an object-oriented API which allows plots to be embedded into applications using generic GUI toolkits, like wxPython, Qt, or GTK...

    , a MATLAB-like plotting library.
  • NumPy, a library that adds support for the manipulation of large, multi-dimensional arrays and matrices; it also includes a large collection of high-level mathematical functions. NumPy serves as the backbone for a number of other numerical libraries, notably SciPy
    SciPy
    SciPy is an open source library of algorithms and mathematical tools for the Python programming language.SciPy contains modules for optimization, linear algebra, integration, interpolation, special functions, FFT, signal and image processing, ODE solvers and other tasks common in science and...

    .
  • PAW
    Physics Analysis Workstation
    The Physics Analysis Workstation is an interactive, scriptable computer software tool for data analysis and graphical presentation in high energy physics. Developed at CERN since 1986, it is optimized for processing very large amounts of data...

     is a free data analysis
    Data analysis
    Analysis of data is a process of inspecting, cleaning, transforming, and modeling data with the goal of highlighting useful information, suggesting conclusions, and supporting decision making...

     package developed at CERN
    CERN
    The European Organization for Nuclear Research , known as CERN , is an international organization whose purpose is to operate the world's largest particle physics laboratory, which is situated in the northwest suburbs of Geneva on the Franco–Swiss border...

    .
  • Sage Math is a large mathematical software application which integrates the work of nearly 100 free software
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

     projects and supports linear algebra, combinatorics, numerical mathematics, calculus, and more.
  • SciPy
    SciPy
    SciPy is an open source library of algorithms and mathematical tools for the Python programming language.SciPy contains modules for optimization, linear algebra, integration, interpolation, special functions, FFT, signal and image processing, ODE solvers and other tasks common in science and...

    , a large library of scientific tools. Includes NumPy
  • ScientificPython, a library with a different set of scientific tools

Others

  • XNUMBERS
    XNUMBERS
    XNUMBERS is a multi-precision floating point computing and numerical methods library for Microsoft Excel. Xnumbers is an open source Excel addin that performs multi-precision floating point arithmetic from 15 up to 200 significant digits...

     — Multi Precision Floating Point Computing and Numerical Methods for EXCEL.
  • TotallySQL.com provide a range of numerical and other libraries for scientific, engineering, mathematical and financial analysis use within SQL Server. The libraries provide new functions, aggregates, types and stored procedures that can be used directly within Transact-SQL scripts and stored procedures.

See also


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK