MuPAD is a
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) 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 de ...
(CAS). Originally developed by the MuPAD research group at the
University of Paderborn,
Germany
Germany, officially the Federal Republic of Germany, is a country in Central Europe. It lies between the Baltic Sea and the North Sea to the north and the Alps to the south. Its sixteen States of Germany, constituent states have a total popu ...
, development was taken over by the company SciFace Software GmbH & Co. KG in cooperation with the MuPAD research group and partners from some other universities starting in 1997. MuPAD's graphics package was particularly successful, especially considering the era when it was developed.
Until autumn 2005, the version "MuPAD Light" was offered for free for research and education, but as a result of the closure of the home institute of the MuPAD research group, only the version "MuPAD Pro" became available for purchase.
The MuPAD kernel is bundled with
Scientific Notebook and
Scientific Workplace. Former versions of ''MuPAD Pro'' were bundled with
SciLab
Scilab is a free and open-source, cross-platform numerical computational package and a high-level, numerically oriented programming language. It can be used for signal processing, statistical analysis, image enhancement, fluid dynamics simul ...
. In
MathCAD's version 14 release MuPAD was adopted as the CAS engine.
In September 2008, SciFace was purchased by
MathWorks
The MathWorks, Inc. is an American privately held corporation that specializes in mathematical computing software. Its major products include MATLAB and Simulink, which support data analysis and simulation.
History
MATLAB was created in the 1 ...
and the MuPAD code was included in the Symbolic Math Toolbox add-on for
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementat ...
. On 28 September 2008, MuPAD was withdrawn from the market as a software product in its own right. However, it is still available in the Symbolic Math Toolbox in MATLAB and can also be used as a stand-alone program by the command
mupad
entered into the MATLAB terminal.
The MuPAD notebook feature has been removed in
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementat ...
R2020a. However,
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementat ...
's Symbolic Math Toolbox still uses the MuPAD language as part of its underlying computational engine.
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementat ...
Live Editor is the recommended environment for performing, documenting, and sharing symbolic math computations.
Functionality
MuPAD offers:
* a
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) 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 de ...
to manipulate formulas symbolically;
* classic and verified
numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
in discretionary accuracy;
* program packages for
linear algebra
Linear algebra is the branch of mathematics concerning linear equations such as
:a_1x_1+\cdots +a_nx_n=b,
linear maps such as
:(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n,
and their representations in vector spaces and through matrix (mathemat ...
,
differential equations,
number theory
Number theory is a branch of pure mathematics devoted primarily to the study of the integers and arithmetic functions. Number theorists study prime numbers as well as the properties of mathematical objects constructed from integers (for example ...
,
statistics
Statistics (from German language, German: ', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a s ...
, and
functional programming
In computer science, functional programming is a programming paradigm where programs are constructed by Function application, applying and Function composition (computer science), composing Function (computer science), functions. It is a declarat ...
;
* an interactive graphic system that supports animations and transparent areas in 3D, and;
* a
programming language
A programming language is a system of notation for writing computer programs.
Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
that supports
object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impl ...
and functional programming.
Often used commands are accessible via menus. MuPAD offers a notebook concept similar to
word processing systems that allows the formulation of mathematical problems as well as graphics visualization and explanations in formatted text.
MuPad does not follow the
NIST
The National Institute of Standards and Technology (NIST) is an agency of the United States Department of Commerce whose mission is to promote American innovation and industrial competitiveness. NIST's activities are organized into physical s ...
4.37 definition for
inverse hyperbolic cosine.
It is possible to extend MuPAD with
C++ routines to accelerate calculations.
Java code can also be embedded.
MuPAD's syntax was modeled on that of the
Pascal programming language
Pascal is an imperative and procedural programming language, designed by Niklaus Wirth as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named after French ...
, and is similar to the one used in the
Maple computer algebra system. An important difference between the two is that MuPAD provides support for
object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impl ...
. This means that each object "carries with itself" the methods allowed to be used on it. For example, after defining
A := matrix( 1,2 ,4 )
all of the following are valid expressions and give the expected result:
A+A, -A, 2*A, A*A, A^-1, exp( A ), A.A, A^0, 0*A
where
A.A
is the
concatenate
In formal language theory and computer programming, string concatenation is the operation of joining character strings end-to-end. For example, the concatenation of "snow" and "ball" is "snowball". In certain formalizations of concatenati ...
d 2×4 matrix, while all others, including the last two, are again 2×2 matrices.
References
{{Authority control
2008 disestablishments
Computer algebra system software for Linux
Computer algebra systems
Discontinued software
Products introduced in 1997
Proprietary commercial software for Linux