Langbahn Team – Weltmeisterschaft

ALGLIB

ALGLIB
Original author(s)Bochkanov Sergey Anatolyevich
Developer(s)ALGLIB LTD (UK)
Stable release
4.03 / 26 September 2024; 3 months ago (2024-09-26)
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, QCQP, SOCP (and other conic problem types) 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

  1. ^ "Math.NET Numerics". Numerics.mathdotnet.com. Retrieved 2010-07-10.
  2. ^ "Math.NET Numerics Contributors". GitHub.com. Retrieved 2013-05-07.
  3. ^ "End User License". .spaceclaim.com. Retrieved 2010-07-10.