Software:ALGLIB

From HandWiki
Short description: Open source numerical analysis library
ALGLIB
ALGLIB logo.png
Original author(s)Bochkanov Sergey Anatolyevich
Developer(s)ALGLIB LTD (UK)
Stable release
4.00.0 / 22 May 2023; 13 months ago (2023-05-22)
Operating systemCross-platform
TypeNumerical library
LicenseDual (commercial, GPL)
Websitewww.alglib.net

ALGLIB is a cross-platform open source numerical analysis and data processing library. It can be used from several programming languages (C++, C#, VB.NET, Python, Delphi, Java).

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,[1][2] SpaceClaim[3]).

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 and Linux)
  • 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 and NLP solvers, derivative-free global solvers and multiobjective optimization algorithms.
  • Data analysis, with various algorithms being implemented

The other functions in the library include:

See also

References

External links