About Extreme Optimization Numerical Libraries for .NET

Build financial, engineering and scientific applications.

Extreme Optimization Numerical Libraries for .NET is a collection of general-purpose mathematical and statistical classes. It provides a complete platform for technical and statistical computing built on and for the Microsoft .NET platform. It combines a math library, a vector and matrix library and a statistics library in one convenient package.

Mathematics

  • Parallelism - Seamless parallelism using .NET Task Parallel Library.
  • Basic Math - Complex numbers, decimal math, special functions like Gamma and Bessel functions, numerical differentiation.
  • Automatic Differentiation - Eliminate tedious and error-prone manual derivative calculations.
  • Solving Equations - Solve equations in one variable or solve systems of linear or nonlinear equations.
  • Curve Fitting - Linear and nonlinear curve fitting, cubic splines, polynomials, orthogonal polynomials.
  • Optimization - State of the art algorithms for finding the minimum or maximum of a function in one or more variables, linear programming (LP), mixed integer programming (MIP), quadratic programming (QP) and nonlinear programming (NLP).
  • Numerical Integration - Compute integrals over finite or infinite intervals. Integrate over 2D and higher dimensional regions. Integrate systems of ordinary differential equations (ODE's).
  • Fast Fourier Transforms - 1D and 2D FFT's using 100% managed or fast native code (32 and 64 bit)
  • BigInteger, BigRational and BigFloat - Perform operations with arbitrary precision.
  • Generic Arithmetic Framework - Write the code once and use it with any numerical type.

Vector and Matrix Library

  • Real and complex vectors and matrices.
  • Single and double precision for elements.
  • Structured matrix types including triangular, symmetrical and band matrices.
  • Sparse matrices.
  • Iterative sparse solvers and preconditioners.
  • Matrix factorizations including LU decomposition, QR decomposition, singular value decomposition, Cholesky decomposition and eigenvalue decomposition.
  • Calculations can be done in 100% managed code, or in hand-optimized processor-specific native code (32 and 64 bit).
  • Use built-in .NET types or any of the new arbitrary precision types to do matrix calculations.

Statistics

  • Data Manipulation - Sort and filter data, process missing values, remove outliers, etc. Supports .NET data binding.
  • Statistical Models - Simple, multiple, nonlinear, logistic and Poisson regression. Generalized Linear Models. One and two-way ANOVA.
  • Time Series Models - ARIMA and GARCH.
  • Multivariate Statistics - K-means cluster analysis, hierarchical cluster analysis, principal component analysis (PCA), factor analysis.
  • Statistical Distributions - 37 continuous and discrete statistical distributions, including uniform, Poisson, normal, lognormal, Weibull and Gumbel (extreme value) distributions and various multivariate distributions.
  • Hypothesis Tests - 12 14 hypothesis tests, including the z-test, t-test, F-test, runs test, and more advanced tests, such as the Anderson-Darling test for normality, one and two-sample Kolmogorov-Smirnov test, and Levene's test for homogeneity of variances, Ljung-Box test for auto-correlation, Kruskal-Wallis test.
  • Random Numbers - Random variates from any distribution, 4 high-quality random number generators, low discrepancy sequences, shufflers.

General Features

  • Multi-core Ready - Take advantage of all the CPU power in your machine. Full support for Task Parallel Library features including cancellation.
  •  Great Performance - Algorithms provide you with a robust, fast toolset.
  • Intuitive Object Model - The classes in the Extreme Optimization Numerical Libraries for .NET and the relationships between them match our every-day concepts.
  • Ground-breaking Usability - Broad base of algorithms covering a wide range of numerical techniques, including: linear algebra (BLAS and LAPACK routines), numerical integration and differentiation, solving equations and complex numbers.