In this article
General features

Extensive Mathematics Capabilities

Architecture

MuPAD Pro 3 Is Different

Other information
System Requirements

Other programs of Scientific Publishing

How to Order

MuPAD Pro 3
The Open Computer Algebra System

MuPAD Pro 3 is a full-fledged computer algebra system with a rich set of features including extensive mathematics capabilities for symbolic and numeric computation and a Virtual Camera (VCam) toolkit for visualization, animation, and interactive manipulation of 2D and 3D plots and other mathematical objects.

Developed at the University of Paderborn in Germany, MuPAD Pro is intended for an extremely broad range of users. Its domains and categories are similar to object-oriented classes that allow overriding and overloading methods and operators, inheritance, and generic algorithms. The MuPAD language has a Pascal-like syntax and allows imperative, functional, and object-oriented programming. A comfortable notebook interface includes an integrated source-level debugger, a profiler, and hypertext help, along with the graphics visualization toolkit.

Version 3 adds to the capabilities of earlier versions of MuPAD Pro with newly implemented renderers for 2D and 3D plots, object animation, and improved interactive manipulation of graphics; enhanced computational capability; fast numerical computations with Scilab, now included at no additional charge; and export capability to MathML.

MuPAD worksheets provide examples on how MuPAD Pro can be used in teaching and training students. They are available as HTML files and as Notebooks, .mnb files that can be used interactively with MuPAD Pro for Windows.

Use MuPAD Pro 3 to develop real-world solutions and applications.
Use convenient keyboard and mouse commands to solve numeric and symbolic equations.
Understand implicit assumptions often made by other computer algebra systems.
Visually depict complicated functions in two and three dimensions.
Write programs to solve complex problems using a familiar, high-level language.
Debug your programs at the source code level, for speed and convenience.
Save time by incorporating MuPAD programs written elsewhere.

top

General features

New features
Newly implemented renderers for 2D and 3D plots offer animations, lighting, improved interactive manipulation, and more
Uses OpenGL® to produce stunning 3D plots
New plot attributes allow interactive fine-tuning of graphics
Animations can be saved as AVI files
Contains Scilab for fast numerical computations
Transparency in 3D plots


General
Notebook interface for interactive calculations
Symbolic computation and expression manipulation
Multiprecision arithmetic
Export to HTML, RTF, plain text, and MS Word
Completely redesigned interactive 2D and 3D graphics tool
Extensive online hypertext documentation with fast search functions
Procedural, object-oriented, and functional programming
User-definable data structures
Integrated source-level debugger
Dynamic linking of external binary code


Notebook Interface for Interactive Calculations
New, more powerful Simplify command allows fine-tuning
Improved ODE capability
New Graph library for graph theory
New special functions
Expanded linear algebra library
Expanded number theory capability
Extensive library of statistics functions
Extensive numeric library
Library for combinatorics
Combines text, calculations, and graphics in a single document
Open multiple notebooks at the same time
2D graphical output of mathematical formulae
Built-in rich text editor for writing notebooks
Built-in text editor with syntax coloring and bookmark management for writing user-defined procedures
Support for OLE 2 embedding
Support for drag and drop
User-definable command menu


Interactive Graphics Tool
New Virtual Camera (VCam) user interface
Completely redesigned VCam toolkit for visualization of 2D and 3D plots
New, advanced algorithms for plotting functions, implicit functions, curves, and surfaces
Transparency in 3D plots
Extensive new plot library of object types
Interactive manipulation of hundreds of plot properties
Creation of animations of 2D and 3D graphics
Produce 3D plots with OpenGL®
3D Viewer features shading, zooming, clipping planes, rotating, point requests, perspective control of scenes, and animations
New graphics command toolbar
User-definable color functions
New graphics tutorial
Export to many formats including popular raster formats, AVI, EPS, WMF, and SVG


Integrated Source-level Debugger
Mouse-driven interface
Conditional breakpoints
Step-by-step execution
Display of call stack
Evaluation of arbitrary expressions during execution

top

Extensive Mathematics Capabilities

Library source included
New, more powerful Simplify tool allows fine-tuning. Specify time, designate a rule-base, obtain lists of rules applied and intermediate expressions computed
Solve: Equations and systems of equations; inequalities; ordinary and partial differential equations; linear recurrence relations; linear congruences; polynomial diophantine equations; equations over standard domains (integer; real; complex); equations over abstract algebraic structures
Calculus: Limits; integration; differentiation; series expansions; integral transforms; differential operators; orthogonal polynomials; piecewise defined functions
Linear Algebra: Extended linear algebra library includes Pascal and Vandermonde matrices and their inverses, Toepliz matrices, and linear Toepliz and Vandermonde system solutions, in addition to matrices over arbitrary coefficient rings; determinants; eigenvalues; eigenvectors; canonical forms; divergence; gradient; curl
Numerics: Solve equations and systems of equations; polynomial roots; integration; ODEs; functional calculus for matrices; eigenvalues; eigenvectors; singular value decomposition; FFT; polynomial interpolation; splines; optimization problems. Extended library when the Scilab numerical system is connected to MuPAD Pro 3
Special Functions: New special functions include Airy and Whittaker functions, the KummerU confluent hypergeometric function, and the surd function
Assumptions and Properties: Attach properties to identifiers (properties are integers; reals; intervals; residue classes; relations); check mathematical properties of identifiers
Set Theory: Union; Intersection; Cartesian product; power set
Polynomials: Over arbitrary rings; sparse representation; gcd; factorization; Groebner bases
Linear Optimization: Solve; minimize; maximize; plot linear and mixed-integer programs
Number Theory: Now includes Cornacchia's algorithm along with continued fractions; factorization using elliptic curves; Jacobi and Legendre symbol; Euler phi; Euler totient; Mangoldt's; Moebius and Carmichael functions; modular and primitive roots
Combinatorics: Bell, Catalan, and Stirling numbers; compositions; partitions of numbers; powerset; permutations of lists; subsets; generators
Statistics: Bravais-Pearson and Fechner correlation; continuous and discrete distributions; chi square, normal, and T distribution; arithmetic; geometric; harmonic and quadratic mean; linear and non-linear regression; standard and mean deviation; variance, covariance, kurtosis, and k-th moment; random number generators; quartiles; cumulative and probability densities for 16 types of parametrized distributions; goodness-of-fit tests; box plot representations of statistical samples
Networks and Graphs: A new, more general Graph library replaces the Version 2.5 Network library and contains over 60 functions for creating, modifying, and visualizing graphs; computing the maximal flow, minimal cost flow, shortest path, and more
Lindenmayer Systems: Define and draw fractals by means of context-free grammars
Algebraic Structures: Symmetric groups; polynomial rings; matrix rings and groups; product rings; algebraic field extensions; finite fields; and quotient fields. User-created domains extend these structures

top

Architecture of MuPAD Pro 3

MuPAD Pro 3 is a general-purpose computer algebra system for symbolic and numeric computation. It was designed as a tool for handling gigabytes of data efficiently.

MuPAD is structured around a kernel implemented in C and C++. The kernel consists of five elements:
• The arithmetic, which handles numbers of arbitrary lengths.
• The parser, which reads and checks the user's input.
• The evaluator, which evaluates and simplifies input data.
• The memory allocation management unit, or MAMMUT, which handles all system data and provides the interface between the kernel and the hardware. The MAMMUT is platform-dependent.
• The built-in functions, which are frequently-used functions for manipulating arithmetical expressions or polynomials. These user-accessible functions are implemented in the kernel for speed and efficiency.

The kernel's libraries contain the mathematical expertise of the MuPAD kernel. The libraries are written in a high-level MuPAD programming language and are platform-independent. Dynamic modules are similar to library packages. The modules are compiled machine code functions written in C/C++, the just like the built-in functions of the kernel.

The system also offers data types (graphical primitives such as points and polygons) and 2D and 3D plotting functions that work with the VCam graphics tool. With VCam, the perspective, scale, axes, colors, and other elements of plots can be defined. Plots can be manipulated interactively and translated into MuPAD input.

Like the MAMMUT, the graphical user interface is platform-dependent. The help tool for the system is organized as a hypertext system and comprises complete system documentation, including information about the MuPAD language and libraries.

top

MuPAD Pro 3 Is Different

MuPAD differs in three important ways from other computer algebra systems.


MuPAD Uses Object-Oriented Programming and User-Definable Data Types

In addition to working with basic data types, such as numbers, polynomials, strings, and sets, MuPAD users can use both predefined and user-defined "domains" for computation of series and matrices, solving of ordinary differential equations, development of special applications, and more. With domains, users can define their own data types, overload MuPAD functions and operators for new data types; control input and output of objects; hide or redefine internal evaluation and simplification rules; and use polymorphic algorithms. Predefined domains are provided by a MuPAD library and include Matrix, SquareMatrix, GaloisField, AlgebraicExtension, and others.


MuPAD Extends the Kernel with Dynamic Modules

Dynamic modules are similar to library packages, but are not written in the MuPAD programming language. Instead, they are compiled machine code functions written in C/C++, as are the built-in functions in the kernel. Dynamic modules can be unloaded (or removed from main memory) at any time and reloaded on demand. This means that MuPAD is a modular system that acts as a universal shell. Users can integrate various specialized software packages with the system to solve many kinds of mathematical problems.


MuPAD Has a Source Code Debugger

MuPAD is the only computer algebra system that has a source code debugger for use with user-defined procedures and domains written in the MuPAD language. Debuggers are common to modern programming language compilers. The debugger is Windows-based, mouse-driven, and interactive.

top

System Requirements

• Microsoft Windows® 95, 98, Me, or Windows NT 4.0, 2000, XP
• 64 MB of RAM (256 - 800 MB recommended)
• 70–150 MB hard disk space
• CD-ROM drive