Comparison of numerical analysis software

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

The following tables provide a comparison of numerical analysis software.

Applications

General

Creator Development started First public release Latest stable version Cost (USD) License Notes
ADMB D. Fournier, ADMB Project 11 / 2012 Free BSD 3-clause (aka new) License Automatic differentiation makes it well suited to complex minimization problems
Analytica Lumina Decision Systems 1982 (Demos) 1994 7/2015 Free (Analytica Free 101), $995 (Professional), $2795 (Enterprise) Proprietary A numerical modeling environment with a declarative and visual programming language based on influence diagrams.
Ch SoftIntegration 2001 7.0 / 2012 $399 (commercial) / $199 (academic) / Free (student) Proprietary C/C++ based numerical computing and graphical plotting[1]
DADiSP DSP Development 1984 1986 6.7 / 2015 $1995 (commercial) / $129 (academic) / Free (student) Proprietary Numeric computations for science and engineering featuring a spreadsheet like interface.
Dyalog APL Dyalog Ltd. 1981 1983 13.2 / January 2013 £850/year or 2% royalty (non-commercial £50, edu / unreg Free) Proprietary A modern dialect of APL, enhanced with features for functional and object-oriented programming.
Euler Math Toolbox René Grothmann 1987 1988 2015-12-10 / 10 December 2015 Free GPL Also a computer algebra system through interface with Maxima
Fityk M. Wojdyr 2002 1.0.1 / 2011 $115 (1.x binaries) / Free (source code and 0.x binaries) GPL interactive graphics, scriptable, specialized in curve fitting and peak fitting, 2D only
FreeMat Samit Basu 4.1 / November 28, 2011 Free GPL Codeless interface to external C, C++, and Fortran code. Mostly compatible with MATLAB.
GAUSS Aptech Systems 1984 15.1 / March 2015 Not free Proprietary
IGOR Pro WaveMetrics 1986 1988 6.36 (6.3.6.4) / 2014 $595 (commercial) / $435 (academic) / $85 (student) Proprietary interactive graphics, programmable, 2D/3D, used for science and engineering, large data sets.
J Jsoftware 1989 1990 J802 / July 9, 2014 Free GPL online access to: J Application Library (JAL)
Julia Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other[2] contributors 2009 2012 0.3.1 / 2014 Free MIT License Open source language and environment for scientific computing. Direct calls of C functions from code (no wrappers or special APIs needed). Designed for cloud parallel computing in mind with LLVM JIT as a backend. Lightweight "green" threading (coroutines). Efficient support for Unicode. Powerful shell-like capabilities for managing other processes. Lisp-like macros and other metaprogramming facilities.
LabVIEW National Instruments 1985 2010 / August 2010 $1249 (commercial) / $79.95 (student) Proprietary Graphical and textual (.m file script) programming approaches
Maple Maplesoft 1980 1982 2015 / March 4, 2015 $2275 (commercial) / $99 (student) Proprietary Mainly a computer algebra system
Mathcad Parametric Technology Corporation 1985 1986 15.0; Prime 3.0 / October 1, 2013 $1195 (commercial) / $99 (student) Proprietary Mainly a computer algebra system
Mathematica Wolfram Research 1986 1988 10.3.1 (December 2015 (2015-12)) [±] Free (Raspberry Pi[3]), $2495 (commercial) / $145 (student) / $295 (personal)[4] Proprietary also computer algebra system
MATLAB MathWorks the late 1970s 2015a $2650 (standard) / $625 (education) Proprietary Numerical computation and simulation with extended 2D/3D visualization.
Maxima MIT Project MAC and Bill Schelter et al. 1967 1982 5.28.0 / August 27, 2012 Free GPL Mainly a computer algebra system
MLAB Civilized Software, Inc. 1970 (in SAIL), 1985 (in C) 1972 (on DEC-10), 1988 (on PCs), 1993 (on MACs) 2015 $2250 (standard) / $50 (student) Proprietary Numerical and Statistical computation for Scientific Applications, e.g. Chemical Kinetics. ODE Solving and Curve-Fitting. Symbolic Differentiation, Survival Analysis, Cluster Analysis, 2D/3D Graphics.
GNU Data Language Marc Schellens 2004 0.9.1 / 2011 Free GPL Aimed as a drop-in replacement for IDL/PV-WAVE
GNU Octave John W. Eaton 1988 1993 4.0.0 (May 29, 2015; 9 years ago (2015-05-29)) [±] Free GPL General numerical computing package with lots of extension modules. Syntax mostly compatible with MATLAB
Origin OriginLab 1991 9.1 SR0 / Oct. 2013 $1095 (std.)/$1800 (Pro)
$550 (std., academic)
$850 (Pro, academic)
$69/yr. (Pro, student)
Proprietary Integrated data analysis graphing software for science and engineering. Flexible multi-layer graphing framework. 2D, 3D and statistical graph types. Built-in digitizing tool. Analysis with auto recalculation and report generation. Built-in scripting and programming languages.
Perl Data Language Karl Glazebrook late 1990s c. 1997 2.012 / 14 June 2015; 41 days ago Free Artistic License Used for astrophysics, solar physics, oceanography, biophysics, and simulation. 2D plotting via PGPLOT, PLPlot bindings; 3D via GL.
PSPP Ben Pfaff 1990s 1990s 0.8.4 / September 27, 2014 Free GPL v.3 or later FOSS alternative to IBM SPSS. Analysis of sampled data, frequencies, cross-tabs comparison of means (t-tests and one-way ANOVA); linear regression, logistic regression, reliability (Cronbach's Alpha, not failure or Weibull), and re-ordering data, non-parametric tests, factor analysis, cluster analysis, principal components analysis, chi-square analysis and more
R R Foundation 1997 1997 3.2.1 / June 18, 2015 Free GPL Primarily for statistics, but there are many interfaces to open-source numerical software
SageMath William Stein 2005 7.1 (20 March 2016; 8 years ago (2016-03-20)) [±][5] Free GPL Programmable, includes computer algebra, 2D+3D plotting. Interfaces to many open-source and proprietary software. Web based interface HTTP or HTTPS
SAS Anthony Barr and James Goodnight 1966 1972 9.4 / July 10, 2014 Not free Proprietary
DataMelt S.Chekanov (jwork.org) 2005 2005 1.0 / 2013 Free Free for non-commercial use mathematics, symbolic calculations, algebra, data analysis, data mining, interactive 2D/3D graphics, Java scriptable, used for science and engineering, Cross-platform (written in Java)
S-Lang John E. Davis 1992 2.2.0 / 2009 Free GPL, Artistic License (1.x only) Available as a standalone (slsh) and embedded interpreter (jed, slrn, ...)
Scilab Scilab Enterprises Was:Inria 1990 1994 5.5.2 / April 1, 2015 Free CeCILL license Open source, community supported. Programmable, direct support of 2D+3D plotting. Interfaces to many other software packages. Interfacing to external modules written in C, Java, Python or other languages. Language syntax similar to MATLAB. Used for numerical computing in engineering and physics.
SPSS Normal H. Nie, Dale H. Bent, and C. Hadlai Hull 1968 22.0 / August 13, 2013 Not free Proprietary
Sysquake Calerga 1998 5.0 / 2013 free / $2500 (Pro, commercial) / $1000 (Pro, academic) Proprietary interactive graphics
TK Solver Universal Technical Systems, Inc. late 1970s 1982 5.0.141 / 2011 $399 commercial / $49 (student) Proprietary Numerical computation and rule-based application development
VisSim Visual Solutions 1989 7.0a / 2008 $495-$2800 (commercial)
free view only version
$50-$250/free v3.0 (academic)
Proprietary Visual Language for simulation and Model Based Design. Used in business, science and engineering. Performs complex scalar or matrix based ODE solving with parametric optimization. Has 2D and 3D plotting, 3D animation, and state transition built in.
Yorick n/a n/a n/a 2.1.06 / April 17, 2010 Free GPL Open source. Programmable, callable 2D+3D plotting. Language syntax similar to C. Interfacing to other software packages via C calls.

Operating system support

The operating systems the software can run on natively (without emulation).

Windows OS X Linux BSD Unix DOS Android
ADMB Yes Yes Yes No No No No
Analytica Yes No No No No No No
Ch Yes Yes Yes Yes Yes No No
Dyalog APL Yes No Yes No Yes No No
DADiSP Yes No No No Yes No No
Euler Math Toolbox Yes No Yes No No No No
FreeMat Yes Yes Yes Yes Yes No No
GAUSS Yes Yes Yes No Yes No No
IGOR Pro Yes Yes No No No No No
Julia Yes Yes Yes Yes No No No
LabVIEW Yes Yes Yes No Yes No No
Maple Yes Yes Yes No Yes No No
Mathematica Yes Yes Yes Yes Yes No No
MATLAB Yes Yes Yes Yes Yes No Yes
MLAB Yes Yes Yes No No Yes No
GNU Data Language No Yes Yes Yes Yes No No
GNU Octave Yes Yes Yes Yes Yes Yes Yes
Origin Yes No No No No No No
Perl Data Language Yes Yes Yes Yes Yes Yes No
R Yes Yes Yes Yes Yes No No
Sage No[6] Yes Yes No Yes No No
SAS Yes No Yes No Yes No No
DataMelt Yes Yes Yes Yes Yes No Yes
S-Lang Yes Yes Yes Yes Yes Yes No
Scilab Yes Yes Yes Yes Yes Yes No
Sysquake Yes Yes Yes No No No No
TK Solver Yes No No No No No No
The Unscrambler Yes No No No No No No
VisSim Yes Yes Yes No Yes No No

Language features

Colors indicate features available as

basic system capabilities
official or officially supported extensions and libraries
third-party software components or not supported
Standalone executables creation support Symbolic computation support OOP support GUI creation support Multi-dimensional arrays as primitive data type Centralized extension library website Can call code in other languages Can be called from other languages
Analytica No No Yes Yes Yes Yes COM, Excel Excel, COM, .NET
Dyalog APL Yes[7] Yes Yes[8] Win32, .NET, WPF, HTML/JS Yes Yes COM, .NET, WebServices, Shared Libraries, DLLs, NAG, R, JavaScript[9] COM, .NET, WebServices[9]
J No Yes Yes Yes Yes Yes Javascript Javascript
Julia No No Yes Yes Yes Yes
C, Fortran
Python, C++, Java, MATLAB
C/C++
Maple No Yes Yes[10] Yes Yes Yes[11] C, C#, Fortran MATLAB,[12] Excel,[13] VisualBasic, Java, and C[14]
Mathematica Yes[15] Yes Yes Yes Yes Yes[16] Java, .NET, C++, Fortran, CUDA, OpenCL, R
Java, .NET, C++
Excel,[17] LabVIEW[18]
Haskell,[19] AppleScript,[20] Racket,[21] Visual Basic,[22] Python[23][24]Clojure[25] MATLAB[26]
MATLAB with extension[27] with extension library[28] Yes[29] Yes Yes Yes[30]
Through MEX[31] files: C, C++, Fortran. Also compiled Java and ActiveX components.
Mathematica[26]
.NET,[32] Java,[33] Excel[34]
MLAB No Yes No Yes Yes No No No
GNU Data Language No No Yes GUI Widgets since v.0.9 but still incomplete Yes No C, Python Python
GNU Octave Yes with mkoctfile only with GiNaC extension Yes[35] GUI Octave code can be used[36] Yes Yes[37] C++, Fortran,[38] Perl,[39] Tcl[40] Java,[41] Perl,[39] C++[42]
PDL Yes[43] No Yes[44] Yes[45] Yes Yes[46] C via perlXS; C, Python, F77, etc. via Inline Perl, C[47]
R No Yes and extended via Ryacas package Yes[48] Via the tcltk library Yes Yes[49]
C, C++, Fortran[50]
MATLAB[51]
Python[52]
Excel[53]
Python[54]
Sage No Yes Yes No Yes Yes[55] Many languages[56][57][58] Yes (any language that can call Python)
SAS No No DS2 and SCL Yes No No
C, Java
R (requires IML)
No
DataMelt Yes Yes Yes Yes Yes Yes Java Yes (any language that can call Java)
TK Solver with extension No Yes with extension Yes Yes .NET Excel

Libraries

General

Creator Language First public release Latest stable version Cost (USD) License Notes
ALGLIB Sergey Bochkanov C++, C#, FreePascal, VBA 2006 2.6.0 / 06.2010 Free GPL General purpose numerical analysis library. Uses automatic code generation to support several programming languages.
GNU Scientific Library GNU Project C 1996 1.14 / 03.2010 Free GPL General purpose numerical analysis library. Targets GNU/Linux, can be built on almost any *nix OS with Ansi C compiler.
ILNumerics.Net H. Kutschbach C#, PowerShell 2007 1.3.14 / 08.2008 Free LGPL aims .Net/mono, 2D/3D plottings (beta)
IMSL Numerical Libraries Rogue Wave Software C, Java, C#, Fortran, Python 1970 many components Not free Proprietary General purpose numerical analysis library.
Math.NET Numerics C. Rüegg, M. Cuda, et al. C#, F#, C, PowerShell 2009 3.0 / 06.2014 Free MIT/X11 General purpose numerical analysis and statistics library for the .NET Framework and Mono, with optional support for native providers.
NAG Numerical Library The Numerical Algorithms Group C, Fortran 1971 many components Not free Proprietary General purpose numerical analysis library.
NMath CenterSpace Software C# 2003 5.0 / February 2011 $995 Proprietary Math and statistical libraries for the .NET Framework
DataMelt jwork.org (S.Chekanov) Java, Android 2005 2011 Free Free for non-commercial use General numerical calculations, statistics and interactive 2D/3D graphics for data and function presentation
SciPy scipy.org community Python 2001 0.15.0 / January 11, 2015 Free BSD Adds numerical programming capabilities to the Python programming language. Related to Numpy, and therefore connected to the previous Numeric and Numarray packages for Python
Armadillo NICTA C++ 2009 3.900 / 2013 Free MPL C++ template library for linear algebra; includes various decompositions and factorisations; syntax (API) is similar to MATLAB.

Operating system support

The operating systems the software can run on natively (without emulation).

Windows OS X Linux BSD Unix DOS Android
ALGLIB Yes No Yes No No No No
GNU Scientific Library Yes Yes Yes Yes Yes No No
ILNumerics.Net Yes Yes Yes Yes Yes No No
IMSL Numerical Libraries Yes Yes Yes No Yes No No
Math.NET Numerics Yes Yes Yes Yes Yes No No
NAG Numerical Library Yes Yes Yes No Yes Yes No
NMath Yes No No No No No No
DataMelt Yes Yes Yes Yes Yes No Yes
SciPy (Python packages) Yes Yes Yes Yes Yes Yes No

See also

References

  1. Ch Scientific Numerical Computing
  2. https://github.com/JuliaLang/julia/contributors
  3. [1]
  4. Mathematica Home Edition Released Macworld, Feb 2009
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Once was supported
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. 9.0 9.1 Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. library.wolfram.com
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Haskell packages
  20. Unisoftware plus
  21. MrMathematica website
  22. Mathematica for ActivX
  23. Pythonika MathLink module for Python
  24. PYML (Python Mathematica interface)
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. 26.0 26.1 Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.
  28. Lua error in package.lua at line 80: module 'strict' not found.
  29. Lua error in package.lua at line 80: module 'strict' not found.
  30. Lua error in package.lua at line 80: module 'strict' not found.
  31. Lua error in package.lua at line 80: module 'strict' not found.
  32. Lua error in package.lua at line 80: module 'strict' not found.
  33. Lua error in package.lua at line 80: module 'strict' not found.
  34. Lua error in package.lua at line 80: module 'strict' not found.
  35. Lua error in package.lua at line 80: module 'strict' not found.
  36. Lua error in package.lua at line 80: module 'strict' not found.
  37. Lua error in package.lua at line 80: module 'strict' not found.
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. 39.0 39.1 Lua error in package.lua at line 80: module 'strict' not found.
  40. Lua error in package.lua at line 80: module 'strict' not found.
  41. Lua error in package.lua at line 80: module 'strict' not found.
  42. Lua error in package.lua at line 80: module 'strict' not found.
  43. Lua error in package.lua at line 80: module 'strict' not found.
  44. Lua error in package.lua at line 80: module 'strict' not found.
  45. Lua error in package.lua at line 80: module 'strict' not found.
  46. Lua error in package.lua at line 80: module 'strict' not found.
  47. Lua error in package.lua at line 80: module 'strict' not found.
  48. Lua error in package.lua at line 80: module 'strict' not found.
  49. Lua error in package.lua at line 80: module 'strict' not found.
  50. Lua error in package.lua at line 80: module 'strict' not found.
  51. Lua error in package.lua at line 80: module 'strict' not found.
  52. Lua error in package.lua at line 80: module 'strict' not found.
  53. Lua error in package.lua at line 80: module 'strict' not found.
  54. Lua error in package.lua at line 80: module 'strict' not found.
  55. Lua error in package.lua at line 80: module 'strict' not found.
  56. Lua error in package.lua at line 80: module 'strict' not found.
  57. Lua error in package.lua at line 80: module 'strict' not found.
  58. Lua error in package.lua at line 80: module 'strict' not found.

External links