HOME

TheInfoList



OR:

ALGLIB is a
cross-platform Within computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several Computing platform, computing platforms. Some ...
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
numerical analysis Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
and
data processing Data processing is the collection and manipulation of digital data to produce meaningful information. Data processing is a form of ''information processing'', which is the modification (processing) of information in any manner detectable by an o ...
library A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
. It can be used from several programming languages ( C++, C#, VB.NET, Python,
Delphi Delphi (; ), in legend previously called Pytho (Πυθώ), was an ancient sacred precinct and the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient Classical antiquity, classical world. The A ...
,
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
). ALGLIB started in 1999 and has a long history of steady development with roughly 1-3 releases per year. It is used by several open-source projects, commercial libraries, and applications (e.g. TOL project, Math.NET Numerics, SpaceClaim).


Features

Distinctive features of the library are: * Support for several programming languages with identical APIs (as of 2023, it supports C++, C#, FreePascal/Delphi, VB.NET, Python, and Java) * Self-contained code with no mandatory external dependencies and easy installation * Portability (it was tested under x86/x86-64/ARM,
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
and
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
) * Two independent backends (pure C# implementation, native C implementation) with automatically generated APIs (C++, C#, ...) * Same functionality of commercial and GPL versions, with enhancements for speed and parallelism provided in the commercial version The most actively developed parts of ALGLIB are: * Linear algebra, offering a comprehensive set of both dense and sparse linear solvers and factorizations * Interpolation, featuring standard algorithms like polynomials and 1D/2D splines, as well as several unique large-scale interpolation/fitting algorithms. These include penalized 1D/2D splines, fast thin plate splines and fast polyharmonic splines, all scalable to hundreds of thousands of points. * Least squares solvers, including linear/nonlinear unconstrained and constrained least squares and curve fitting solvers * Optimization, with LP, QP, QCQP, SOCP (and other conic problem types) and NLP solvers, derivative-free global solvers and multiobjective optimization algorithms. *
Data analysis Data analysis is the process of inspecting, Data cleansing, cleansing, Data transformation, transforming, and Data modeling, modeling data with the goal of discovering useful information, informing conclusions, and supporting decision-making. Da ...
, with various algorithms being implemented The other functions in the library include: *
Fast Fourier transform A fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). A Fourier transform converts a signal from its original domain (often time or space) to a representation in ...
s *
Numerical integration In analysis, numerical integration comprises a broad family of algorithms for calculating the numerical value of a definite integral. The term numerical quadrature (often abbreviated to quadrature) is more or less a synonym for "numerical integr ...
*
Ordinary differential equation In mathematics, an ordinary differential equation (ODE) is a differential equation (DE) dependent on only a single independent variable (mathematics), variable. As with any other DE, its unknown(s) consists of one (or more) Function (mathematic ...
s *
Special functions Special functions are particular mathematical functions that have more or less established names and notations due to their importance in mathematical analysis, functional analysis, geometry, physics, or other applications. The term is defined by ...
*
Statistics Statistics (from German language, German: ', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a s ...
(
descriptive statistics A descriptive statistic (in the count noun sense) is a summary statistic that quantitatively describes or summarizes features from a collection of information, while descriptive statistics (in the mass noun sense) is the process of using and an ...
,
hypothesis testing A statistical hypothesis test is a method of statistical inference used to decide whether the data provide sufficient evidence to reject a particular hypothesis. A statistical hypothesis test typically involves a calculation of a test statistic. T ...
) * Multiple precision versions of
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as :a_1x_1+\cdots +a_nx_n=b, linear maps such as :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrix (mathemat ...
,
interpolation In the mathematics, mathematical field of numerical analysis, interpolation is a type of estimation, a method of constructing (finding) new data points based on the range of a discrete set of known data points. In engineering and science, one ...
and optimization algorithms (using
MPFR The GNU Multiple Precision Floating-Point Reliable Library (GNU MPFR) is a GNU portable C (programming language), C Library (computing), library for Arbitrary-precision arithmetic, arbitrary-precision binary Floating-point arithmetic, floating-po ...
for floating point computations)


See also

* List of numerical analysis software * List of numerical libraries


References

{{Reflist


External links


Official ALGLIB website
Numerical libraries Software using the GNU General Public License