Mathematical software

Mathematical software is software used to model, analyze or calculate numeric, symbolic or geometric data.

Evolution of mathematical software
Numerical analysis and symbolic computation had been in most important place of the subject, but other kind of them is also growing now. A useful mathematical knowledge of such as algorism which exist before the invention of electronic computer, helped to mathematical software developing. On the other hand, by the growth of computing power (such as seeing on Moore's law), the new treatment (for example, a new kind of technique such as data assimilation which combined numerical analysis and statistics) needing conversely the progress of the mathematical science or applied mathematics.

The progress of mathematical information presentation such as TeX or MathML will demand to evolution form formula manipulation language to true mathematics manipulation language (notwithstanding the problem that whether mathematical theory is inconsistent or not). And popularization of general purpose mathematical software, special purpose mathematical software so called one purpose software which used special subject will alive with adapting for environment progress at normalization of platform. So the diversity of mathematical software will be kept.

Software calculator
A software calculator allows the user to perform simple mathematical operations, like addition, multiplication, exponentiation and trigonometry. Data input is typically manual, and the output is a text label.

Computer algebra systems
Many mathematical suites are computer algebra systems that use symbolic mathematics. They are designed to solve classical algebra equations and problems in human readable notation.

Statistics
Many tools are available for statistical analysis of data. See also Comparison of statistical packages.

Numerical analysis
The Netlib repository contains various collections of software routines for numerical problems, mostly in Fortran and C. Commercial products implementing many different numerical algorithms include the IMSL, NMath and NAG libraries; a free alternative is the GNU Scientific Library. A different approach is taken by the Numerical Recipes library, where emphasis is placed on clear understanding of algorithms.

Many computer algebra systems (listed above) can also be used for numerical computations.

Music mathematics software
Music mathematics software utilizes mathematics to analyze or synthesize musical symbols and patterns.
 * Musimat (by Gareth Loy)

Websites
A growing number of mathematical software is available in web browsers, without the need to download or install any code.

Programming libraries
Low-level mathematical libraries intended for use within other programming languages:
 * GMP, the GNU Multi-Precision Library for high-performant arbitrary precision arithmetic.
 * Class Library for Numbers, a high-level C++ library for arbitrary precision arithmetic.
 * AMD Core Math Library, a software development library released by AMD
 * Boost.Math