Chinese, Simplified
SEO Title
这是一个著名的数值库列表,这些库用于软件开发中执行数值计算。它不是一个完整的列表,而是一个包含Wikipedia上文章的数字库列表,很少有例外。
典型库的选择取决于一系列不同的需求,例如:期望的特性(例如:大维线性代数、并行计算、偏微分方程)、商业/开源性质、API的可读性、可移植性或平台/编译器依赖性(例如:Linux、Windows、Visual c++、GCC)、速度性能、易用性、开发人员的持续支持、标准遵从性、针对特定应用程序场景的代码的专门优化,甚至要安装的代码库的大小。
由于我们发现很少有全面的调查可用,所以在许多可能的库中几乎总是(至少最初是)有一个艰难的选择。通常情况下,它往往是由用户根据自己的品味和舒适度来决定的,只是因为缺乏适当的信息。
Multi-language
- ALGLIB is an open source numerical analysis library which may be used from C++, C#, FreePascal, Delphi, VBA.
- ArrayFire is a high performance open source software library for parallel computing with an easy-to-use API.
- IMSL Numerical Libraries are libraries of numerical analysis functionality implemented in standard programming languages like C, Java, C# .NET, Fortran, and Python.
- The NAG Library is a collection of mathematical and statistical routines for multiple programming languages (C, C++, Fortran, Visual Basic, Java, Python and C#) and packages (MATLAB, Excel, R, LabVIEW).
- GNU Octave is an open source high level programming language and library, including a command line interface and GUI, analogous to commercial alternatives such as Maple, MATLAB, Mathematica, etc. APIs, functions and libraries can be called from many platforms, including high level engineering programs, where functions are, in many cases, seamlessly interpreted and integrated in similar fashion to MATLAB. It also can be used with batch orientation.
- librsb is an open source library for high performance sparse matrix computations providing multi-threaded primitives to build iterative solvers (implements also the Sparse BLAS standard). It can be used from C, C++, Fortran, and a dedicated GNU Octave package.
C
- BLOPEX (Block Locally Optimal Preconditioned Eigenvalue Xolvers) is an open-source library for the scalable (parallel) solution of eigenvalue problems.
- FFTW (Fastest Fourier Transform in the West) is a software library for computing Fourier and related transforms.
- GNU Scientific Library, a popular, free numerical analysis library implemented in C.
- GNU Multi-Precision Library is a library for doing arbitrary-precision arithmetic.
- hypre (High Performance Preconditioners) is an open-source library of routines for scalable (parallel) solution of linear systems and preconditioning.
- LabWindows/CVI is an ANSI C IDE that includes built-in libraries for analysis of raw measurement data, signal generation, windowing, filter functions, signal processing, linear algebra, array and complex operations, curve fitting and statistics.
- Lis is a scalable parallel library for solving systems of linear equations and eigenvalue problems using iterative methods.
- Intel MKL, Intel Math Kernel Library (in C), a library of optimized math routines for science, engineering, and financial applications, written in C/C++ and Fortran. Core math functions include BLAS, LAPACK, ScaLAPACK, sparse solvers, fast Fourier transforms, and vector math.
- OpenBLAS is an open source implementation of the BLAS API with many hand-crafted optimizations for specific processor types. It performs similar to Intel MKL on Intel processors and higher on various others.
- Portable, Extensible Toolkit for Scientific Computation (PETSc), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.
- SLEPc Scalable Library for Eigenvalue Problem Computations is a PETSc-based open-source library for the scalable (parallel) solution of eigenvalue problems.
C++
- Adept is a combined automatic differentiation and array library.
- Advanced Simulation Library is free and open source hardware accelerated multiphysics simulation software with an OpenCL-based internal computational engine.
- ALGLIB is an open source / commercial numerical analysis library with C++ version
- Armadillo 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. The syntax (API) is similar to MATLAB.
- Blaze is an open-source, high-performance C++ math library for dense and sparse arithmetic.
- Blitz++ is a high-performance vector mathematics library written in C++.
- Boost.uBLAS C++ libraries for numerical computation
- deal.II is a library supporting all the finite element solution of partial differential equations.
- Dlib is a modern C++ library with easy to use linear algebra and optimization tools which benefit from optimized BLAS and LAPACK libraries.
- Eigen is a vector mathematics library with performance comparable with Intel's Math Kernel Library
- Hermes Project: C++/Python library for rapid prototyping of space- and space-time adaptive hp-FEM solvers.
- IML++ 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++, a C++ wrapper library for LAPACK and BLAS
- Intel MKL, Intel Math Kernel Library (in C and C++), a library of optimized math routines for science, engineering, and financial applications, written in C/C++ and Fortran. Core math functions include BLAS, LAPACK, ScaLAPACK, sparse solvers, fast Fourier transforms, and vector math.
- mlpack is an open-source library for machine learning, exploiting C++ language features to provide maximum performance and flexibility while providing a simple and consistent API
- MTL4 is a generic C++ template library providing sparse and dense BLAS functionality. MTL4 establishes an intuitive interface (similar to MATLAB) and broad applicability thanks to Generic programming.
- The NAG Library has C++ API
- NTL is a C++ library for number theory.
- Trilinos is an effort to develop algorithms and enabling technologies for the solution of large-scale, complex multi-physics engineering and scientific problems. It is a collection of packages.
Delphi
- Analytics & Physics: commercial Delphi libraries for symbolic and numerical calculations (including symbolic derivatives) and working with physical values and units of measurement.
- ALGLIB - an open source numerical analysis library.
.NET Framework languages C#, F#, VB.NET and PowerShell[edit]
- Accord.NET is a collection of libraries for scientific computing, including numerical linear algebra, optimization, statistics, artificial neural networks, machine learning, signal processing and computer vision. LGPLv3, partly GPLv3.
- AForge.NET is a computer vision and artificial intelligence library. It implements a number of genetic, fuzzy logic and machine learning algorithms with several architectures of artificial neural networks with corresponding training algorithms. LGPLv3 and partly GPLv3.
- ALGLIB is an open source numerical analysis library with C# version. Dual licensed: GPLv2+, commercial license.
- ILNumerics.Net Commercial high performance, typesafe numerical array classes and functions for general math, FFT and linear algebra, aims .NET/mono, 32&64 bit, script-like syntax in C#, 2D & 3D plot controls, efficient memory management.
- IMSL Numerical Libraries have C# version (commercially licensed). IMSL .Net have announced end of life at the end of 2020.
- Math.NET Numerics aims to provide methods and algorithms for numerical computations in science, engineering and every day use. Covered topics include special functions, linear algebra, probability models, random numbers, interpolation, integral transforms and more. Free software under MIT/X11 license.
- Measurement Studio is a commercial integrated suite UI controls and class libraries for use in developing test and measurement applications. The analysis class libraries provide various digital signal processing, signal filtering, signal generation, peak detection, and other general mathematical functionality.
- ML.NET is a free software machine learning library for the C# programming language.[1][2]
- The NAG Library has C# API. Commercially licensed.
- NMath by CenterSpace Software: Commercial numerical component libraries for the .NET platform, including signal processing (FFT) classes, a linear algebra (LAPACK & BLAS) framework, and a statistics package.
- Numpy.NET offers C# language bindings for NumPy a fundamental library for scientific computing, machine learning and AI.[3] Numpy.NET is free software under MIT license.
- NumSharp is an open source N-D Tensor computation library for Data Science, Machine Learning and AI, written in pure C#.[4] NumSharp is free software licensed under the Apache 2.0 license.
Fortran
- BLAS (Basic Linear Algebra Subprograms) is a de facto application programming interface standard for publishing libraries to perform basic linear algebra operations such as vector and matrix multiplication.
- CERNLIB is a collection of FORTRAN 77 libraries and modules.
- 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, real symmetric tridiagonal, special real tridiagonal, generalized real, and generalized real symmetric matices.
- IMSL Numerical Libraries are cross-platform libraries containing a comprehensive set of mathematical and statistical functions that can be embedded in a users application.
- Harwell Subroutine Library is a collection of Fortran 77 and 95 codes that address core problems in numerical analysis.
- LAPACK, the Linear Algebra PACKage, is a software library for numerical computing originally written in FORTRAN 77 and now written in Fortran 90.
- 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 Pete Stewart, and was intended for use on supercomputers in the 1970s and early 1980s. It has been largely superseded by LAPACK, which will run more efficiently on modern architectures.
- Lis is a scalable parallel library for solving systems of linear equations and eigenvalue problems using iterative methods.
- 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.
- The NAG Fortran Library is a collection of mathematical and statistical routines for Fortran.
- NOVAS is a software library for astrometry-related numerical computations. Both Fortran and C versions are available.
- Netlib is a repository of scientific computing software which contains a large number of separate programs and libraries including BLAS, EISPACK, LAPACK and others.
- PAW is a free data analysis package developed at CERN.
- Portable, Extensible Toolkit for Scientific Computation (PETSc), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.
- QUADPACK is a FORTRAN 77 library for numerical integration of one-dimensional functions
- SLATEC is a FORTRAN 77 library of over 1400 general purpose mathematical and statistical routines.
- SOFA is a collection of subroutines that implement official IAU algorithms for astronomical computations. Both Fortran and C versions are available.
- ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.
Java
- ND4J is an open-source library that supports n-dimensional (ND) arrays, similar to NumPy. It runs on distributed GPUs or CPUs cross-platform, and leverages Spark for parallel computation. It supports the deep learning library Deeplearning4j.
- Apache Commons, is an open-source for creating reusable Java components. It has numerical packages for linear algebra and non-linear optimization.
- Colt provides a set of Open Source Libraries for High Performance Scientific and Technical Computing.
- Efficient Java Matrix Library (EJML) is an open-source linear algebra library for manipulating dense matrices.
- JAMA, a numerical linear algebra toolkit for the Java programming language. No active development has taken place since 2005, but it still one of the more popular linear algebra packages in Java.
- Jblas: Linear Algebra for Java, a linear algebra library which is an easy to use wrapper around BLAS and LAPACK.
- Parallel Colt is an open source library for scientific computing. A parallel extension of Colt.
- Matrix Toolkit Java is a linear algebra library based on BLAS and LAPACK.
- ojAlgo is an open source Java library for mathematics, linear algebra and optimisation.
- exp4j is a small Java library for evaluation of mathematical expressions.
Scala
- ND4S is a scientific computing library for Scala that includes support for n-dimensional arrays on the JVM.
Perl
- Perl Data Language gives standard Perl the ability to compactly store and speedily manipulate the large N-dimensional data arrays.
Python
- NumPy, a BSD-licensed 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. De facto standard for matrix/tensor operations in Python.
- SageMath is a large mathematical software application which integrates the work of nearly 100 free software projects and supports linear algebra, combinatorics, numerical mathematics, calculus, and more.
- SciPy, a large BSD-licensed library of scientific tools. De facto standard for scientific computations in Python.
- ScientificPython, a library with a different set of scientific tools
- SymPy , a library based on New BSD license for symbolic computation. Features of Sympy range from basic symbolic arithmetic to calculus, algebra, discrete mathematics and quantum physics.
Others
- XNUMBERS — Multi Precision Floating Point Computing and Numerical Methods for Microsoft Excel.
- INTLAB — Interval arithmetic library for MATLAB.
See also
- Comparison of computer algebra systems
- Comparison of numerical analysis software
- List of graphing software
- List of numerical analysis software
- List of optimization software
- List of statistical packages
原文:https://en.wikipedia.org/wiki/List_of_numerical_libraries
本文:https://pub.intelligentx.net/wikipedia-list-numerical-libraries
讨论:请加入知识星球或者小红圈【首席架构师圈】
发布日期
星期日, 九月 22, 2019 - 16:54
最后修改
星期四, 一月 5, 2023 - 21:55
Article
最新内容
- 3 days 18 hours ago
- 3 days 20 hours ago
- 3 days 20 hours ago
- 6 days 12 hours ago
- 6 days 20 hours ago
- 6 days 20 hours ago
- 6 days 20 hours ago
- 6 days 20 hours ago
- 1 week 4 days ago
- 1 week 4 days ago