What's New

Below is a non-exhaustive list of the major features that were added in recent upgrades. Smaller improvements and additions are not in this list.

New in version 4.2 (December, 2011)

  • Automatic differentiation
  • Supply functions and constraints as lambda expressions and have gradients computed automatically.
  • Backward differentiation with common sub-expression elimination for optimal performance.
  • Extensible with built-in support for methods of System.Math and most elementary and special functions in the library.

  • Orthogonal polynomials Chebyshev, Gegenbauer, Hermite, Laguerre, Legendre polynomials and sequences.
  • Stepwise regression Automatic variable selection for linear regression.
  • Contingency tables Both 2x2 and RxC tables are supported.
  • Improved SQL Server support Easier deployment.


New in version 4.1 (July, 2011)

  • Optimization framework. Provides a generic model for defining and solving optimization problems.
  • Quadratic Programming. Solve quadratic optimization models with linear constraints.
  • Nonlinear Programming. Optimize nonlinear functions with linear or nonlinear constraints.
  • New Decimal functions extend all the functions in System.Math to the decimal type, including sin, cos, exp.
  • Improved elementary functions. Evaluate sine, cosine and tangent accurately for huge arguments.
  • Iterative sparse solvers Efficiently solve systems with many thousands of variables, optionally using preconditioners.
  • New probability distributions LogSeries and Maxwell.


New in version 4.0 (November, 2010)

  • Full .NET 4.0 Support. Including samples and projects for Visual Studio 2010.
  • Full F# 2.0 Support. Including more than 50 new samples.
  • Multi-core Ready. Many algorithms have been parallelized using the .NET Task Parallel Library.
  • Improved sparse solvers using fill-reducing column orderings.
  • New Sparse Linear Program Solver can solve problems with more than 1 million variables.
  • Mixed integer programming.
  • New Special functions. Hypergeometric, elliptic integrals, Fresnel, Riemann zeta.
  • FFT Window Functions.


New in version 3.6 (February, 2010)

  • Single-preicision vector and matrix library
  • Non-negative Matrix Factorization (NMF)
  • Non-negative Least Squares (NNLS)
  • Numerical integration in 3 or more dimensions

New in version 3.5 (October 2009)

  • Full .NET 3.5 Support. Including samples and projects for Visual Studio 2008.
  • Ordinary Differential Equations. Integrate stiff and non-stiff systems of Ordinary Differential Equations (ODE's) using our state-of-the art algorithms.
  • Improved Curve Fitting. We made our algorithms more robust, and added new features, including confidence and prediction bounds.
  • Time Series Models. Exponential smoothing and ARIMA (Auto-Regressive Integrated Moving Average) models.

New in version 3.1:

  • Arbitrary precision numbers. BigInteger, BigRational, BigFloat.
  • Generic Arithmetic Framework. Write algorithms that can use any numeric type.
  • Generic Linear Algebra. A complete generic vector and matrix library.
  • 2D Numerical Integration.
  • Generalized Linear Models. Poisson regression, probit regression and other variants.

New in version 3.0:

  • **2D Fast Fourier Transforms. **Compute 2-dimensional FFT’s using managed or native code.
  • Multivariate Statistical Analysis. Principal Component Analysis (PCA), K-means Clustering, Hierarchical Clustering.
  • Multivariate Probability Distributions. Multivariate normal and Dirichlet distributions.

New in version 2.1:

  • Sparse Matrix Library. Efficiently calculate with huge, sparse matrices.
  • Linear Programming. Our dense LP solver is second to none.
  • Fast Fourier Transforms. Compute 1-dimensional FFT’s using managed or native code.

New in version 2.0:

  • Matrix Debugger Visualizer. Inspect the elements of a matrix at debug time in table form. (screen shot)
  • Generic interfaces. For example, all collection classes support the appropriate IList<T> interface.
  • New structured matrix types. Perform calculations on band matrices and diagonal matrices more efficiently.
  • Sort and filter data. New methods give you complete control of which observations are included in your statistical calculations.
  • Logistic Regression. Predict binary outcomes in terms of one or more variables.
  • Nonlinear Regression. An extension of our nonlinear curve fitting classes that gives you full access to the statistical properties of your model.