Mathematical software

Last updated

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

Software non-tangible executable component of a computer

Computer software, or simply software, is a collection of data or computer instructions that tell the computer how to work. This is in contrast to physical hardware, from which the system is built and actually performs the work. In computer science and software engineering, computer software is all information processed by computer systems, programs and data. Computer software includes computer programs, libraries and related non-executable data, such as online documentation or digital media. Computer hardware and software require each other and neither can be realistically used on its own.

A mathematical model is a description of a system using mathematical concepts and language. The process of developing a mathematical model is termed mathematical modeling. Mathematical models are used in the natural sciences and engineering disciplines, as well as in the social sciences.

Contents

It is a type of application software which is used for solving mathematical problems or mathematical study. There are various views to what is the mathematics, so there is various views of the category of mathematical software which used for them, over from narrow to wide sense.

Application software computer software designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user

Application software is computer software designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user. Examples of an application include a word processor, a spreadsheet, an accounting application, a web browser, a media player, an aeronautical flight simulator, a console game or a photo editor. The collective noun application software refers to all applications collectively. This contrasts with system software, which is mainly involved with running the computer.

Mathematical problem problem that is amenable to being represented, analyzed, and possibly solved, with the methods of mathematics

A mathematical problem is a problem that is amenable to being represented, analyzed, and possibly solved, with the methods of mathematics. This can be a real-world problem, such as computing the orbits of the planets in the solar system, or a problem of a more abstract nature, such as Hilbert's problems.

Mathematics field of study

Mathematics includes the study of such topics as quantity, structure, space, and change.

A type of mathematical software (math library) also used by built in the part of another scientific software. A most primary them (for example, to calculate elementary function by floating point arithmetic) may be in the category of mathematical software. They are often usually built in the general purpose systems as middleware. So to speak, mathematical software is not only an application software but also basis of another scientific software. And that is its one of the characteristic of mathematical software as that mean.
Several mathematical software often have good user interface for educational purpose (see educational math software). But the core parts of solver of them direct dependent to the algorism by the mathematical knowledge. So it may be common sense that it does not process if it not well solved on mathematical construction at least. (There is physical limitation of hardware.) That is typical difference of mathematical software for another application software.

In computer science, a math library is a component of a programming language's standard library containing functions for the most common mathematical functions, for example trigonometry and exponentiation, etc.

In mathematics, an elementary function is a function of one variable which is the composition of a finite number of arithmetic operations (+ – × ÷), exponentials, logarithms, constants, and solutions of algebraic equations.

Middleware computer software that provides services to software applications

Middleware is computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue".

Specially, it may be sure common sense that to the attention that there is a such as next case in mathematical software using:

  1. That is not always solvable.
  2. That may be solved theoretically, but most hard to solve actually or physically by computer caused by not in the polynomial time. Encryption software apply the second case.

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 [2] 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 [3] 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.

Numerical analysis study of algorithms that use numerical approximation for the problems of mathematical analysis

Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis. Numerical analysis naturally finds application in all fields of engineering and the physical sciences, but in the 21st century also the life sciences, social sciences, medicine, business and even the arts have adopted elements of scientific computations. As an aspect of mathematics and computer science that generates, analyzes, and implements algorithms, the growth in power and the revolution in computing has raised the use of realistic mathematical models in science and engineering, and complex numerical analysis is required to provide solutions to these more involved models of the world. Ordinary differential equations appear in celestial mechanics ; numerical linear algebra is important for data analysis; stochastic differential equations and Markov chains are essential in simulating living cells for medicine and biology.

Algorism

Algorism is the technique of performing basic arithmetic by writing numbers in place value form and applying a set of memorized rules and facts to the digits. One who practices algorism is known as an algorist. This positional notation system largely superseded earlier calculation systems that used a different set of symbols for each numerical magnitude, such as Roman numerals, and in some cases required a device such as an abacus.

Invention the act of inventing something

An invention is a unique or novel device, method, composition or process. The invention process is a process within an overall engineering and product development process. It may be an improvement upon a machine or product or a new process for creating an object or a result. An invention that achieves a completely unique function or result may be a radical breakthrough. Such works are novel and not obvious to others skilled in the same field. An inventor may be taking a big step in success or failure.

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.

A computer algebra system (CAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The development of the computer algebra systems in the second half of the 20th century is part of the discipline of "computer algebra" or "symbolic computation", which has spurred work in algorithms over mathematical objects such as polynomials.

Statistics

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

The following tables compare general and technical information for a number of statistical analysis packages.

Theorem provers and proof assistants

Optimization software

Geometry

Numerical analysis

TK Solver is a mathematical modeling and problem solving software system based on a declarative, rule-based language, commercialized by Universal Technical Systems, Inc..

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.

See also Comparison of numerical analysis software.

Music mathematics software

Music mathematics software utilizes mathematics to analyze or synthesize musical symbols and patterns.

Websites

Growing number of mathematical software is available in the web browser, without the need to download or install any code. [5] [6]

Programming libraries

Low-level mathematical libraries intended for use within other programming languages:

Related Research Articles

GNU Octave numerical computation software

GNU Octave is software featuring a high-level programming language, primarily intended for numerical computations. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with MATLAB. It may also be used as a batch-oriented language. Since it is part of the GNU Project, it is free software under the terms of the GNU General Public License.

Wolfram Mathematica computational software program

Wolfram Mathematica is a modern technical computing system spanning most areas of technical computing — including neural networks, machine learning, image processing, geometry, data science, visualizations, and others. The system is used in many technical, scientific, engineering, mathematical, and computing fields. It was conceived by Stephen Wolfram and is developed by Wolfram Research of Champaign, Illinois. The Wolfram Language is the programming language used in Mathematica.

Maple (software) computer algebra system

Maple is a symbolic and numeric computing environment, and is also a multi-paradigm programming language.

Yacas computer algebra system

Yacas is a general-purpose computer algebra system. The name is an acronym for Yet Another Computer Algebra System.

GiNaC is a free computer algebra system released under the GNU General Public License. The name is a recursive acronym for "GiNaC is Not a CAS". This is similar to the GNU acronym "GNU is not Unix".

LAPACK

LAPACK is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares, eigenvalue problems, and singular value decomposition. It also includes routines to implement the associated matrix factorizations such as LU, QR, Cholesky and Schur decomposition. LAPACK was originally written in FORTRAN 77, but moved to Fortran 90 in version 3.2 (2008). The routines handle both real and complex matrices in both single and double precision.

Basic Linear Algebra Subprograms (BLAS) is a specification that prescribes a set of low-level routines for performing common linear algebra operations such as vector addition, scalar multiplication, dot products, linear combinations, and matrix multiplication. They are the de facto standard low-level routines for linear algebra libraries; the routines have bindings for both C and Fortran. Although the BLAS specification is general, BLAS implementations are often optimized for speed on a particular machine, so using them can bring substantial performance benefits. BLAS implementations will take advantage of special floating point hardware such as vector registers or SIMD instructions.

Mathematics encompasses a growing variety and depth of subjects over history, and comprehension requires a system to categorize and organize the many subjects into more general areas of mathematics. A number of different classification schemes have arisen, and though they share some similarities, there are differences due in part to the different purposes they serve. In addition, as mathematics continues to be developed, these classification schemes must change as well to account for newly created areas or newly discovered links between different areas. Classification is made more difficult by some subjects, often the most active, which straddle the boundary between different areas.

Mathomatic

Mathomatic is a free, portable, general-purpose computer algebra system (CAS) that can symbolically solve, simplify, combine, and compare algebraic equations, and can perform complex number, modular, and polynomial arithmetic, along with standard arithmetic. It does some symbolic calculus, numerical integration, and handles all elementary algebra except logarithms. Trigonometric functions can be entered and manipulated using complex exponentials, with the GNU m4 preprocessor. Not currently implemented are general functions like f(x), arbitrary-precision and interval arithmetic, and matrices.

SageMath mathematical software application

SageMath is a computer algebra system with features covering many aspects of mathematics, including algebra, combinatorics, graph theory, numerical analysis, number theory, calculus and statistics.

Euler (software) program for quickly and interactively computing with real and complex numbers and matrices, or intervals

Euler is a free and open-source numerical software package. It contains a matrix language, a graphical notebook style interface, and a plot window. Euler is designed for higher level math such as calculus, optimization, and statistics.

Numerical linear algebra is the study of how matrix operations can be used to create computer algorithms which efficiently and accurately provide approximate answers to mathematical questions. It is a subfield of numerical analysis, and a type of linear algebra. Because computers use floating-point arithmetic, they cannot exactly represent irrational data, and many algorithms increase that imprecision when implemented by a computer. Numerical linear algebra uses properties of vectors and matrices to develop computer algorithms that minimize computer error while retaining efficiency and precision.

PARI/GP computer algebra system

PARI/GP is a computer algebra system with the main aim of facilitating number theory computations. Versions 2.1.0 and higher are distributed under the GNU General Public License. It runs on most common operating systems.

References

  1. See, e.g., the editorial charter Archived 2015-03-12 at the Wayback Machine of the ACM Transactions on Mathematical Software or the problem taxonomy of the National Institute of Standards and Technology Guide to Available Mathematical Software (both retrieved 2015-02-15).
  2. Both MathML and TeX may be only simple a kind of computer language which enable also to present the mathematical formula. However they also may be the mathematical software if the term of software interpreted as whole technology on how to use computer, at most wide sense.
  3. Included your written script code on the general purpose mathematical software.
  4. Musimathics website, freeware download
  5. Internet Accessible Mathematical Computation, Institute for Computational Mathematics, Kent State University, retrieved 2015-02-15.
  6. "Wolfram|Alpha Examples: Mathematics". www.wolframalpha.com. Retrieved 2016-07-19.