[ < ] [ globale Übersicht ] [ Kapitelübersicht ] [ Stichwortsuche ] [ > ]


MuPadLogo

  • Hersteller:
  • Plattformen:
  • MuPAD is available for several hardware platforms and operating systems. By now (or in a few months) you can get binaries for the systems listed below. Click on a system entry to get the corresponding technical information page:

    Plattform:

    Version:

    Zusatz:

    Amiga AmigaOS 2.0.4 or later Alpha release, read the README!
    Amiga NetBSD
    DEC/alpha OSF Terminal version
    DEC/station Ultrix 4.2 or later
       
    HP HP-UX 9.0 or later
       
    IBM/rs6000 AIX 4.1 Terminal version
    Mac/m68k System 7.x
       
    Mac/PowerPC System 7.x
       
    PC/AT FreeBSD 2.2 terminal version
    PC/AT Linux 1.2.1 or later
       
    PC/AT NetBSD Not available, we need a new account
    PC/AT Solaris-x86 2.4 or later
    PC/AT Windows 95/NT-4.0 Beta-Release (von einem 14jährigen Mathematik-Studenten
    aus der Ukraine innerhalb von nur drei Monaten entwickelt.)
    SGI/Indy Irix 5.1.1 or later
       
    Sun/SPARC Solaris 2.3 or later
       
    Sun/SPARC SunOS 4.1.x or later
       

    Note: There will be no OS/2 Version of MuPAD before end of 1997.

    We are also working on parallel versions on Sun-Sparc and Sequence-Symmetry multi-processor systems (alpha-versions are running). Parallel versions in a heterogenious network of workstations is planned for the future.


  • Beschreibung:
  • MuPAD steht für Multi Processing Algebra Datatool. Wie der Name besagt, handelt es sich um ein System, das für parallele Rechnerarchitekturen konzipiert wurde. MuPAD ist ein sehr junges Computeralgebra-System, das aber ständig weiterentwickelt wird.

    Wie seine teuren Artgenossen, zum Beispiel Mathematica beherrscht MacMuPAD sowohl Algebra als auch Numerik. Zur Algebra zählt, daß die Eingabe sin(PI/4) zur Ausgabe 21/2/2 führt. Dieses Ergebnis wandelt die Befehlsfolge DIGITS:=100; float(%) in die 100 Ziffern lange Zahl 0,7071... um - was die Fähigkeiten in der Numerik zeigt.

    MacMuPAD beherrscht die üblichen Datentypen von ganzen bis komplexen Zahlen, Strings, Listen, Matrizen und Mengen. Daneben gibt es als Besonderheit benutzerdefinierte Objekte. Ganz im Sinne des objektorientierten Programmierens können für solche Objekte Operatoren überladen werden - das gilt sogar für die Addition. Die Ausstattung mit Operatoren und Funktionen deckt die wichtigsten Bereiche ab; weder den Sinus hyperbolicus noch die Funktion zur Berechnung des kleinsten gemeinsamen Vielfachen muß man vermissen. Mit den Funktionsbibliotheken der kommerziellen Systeme kann MacMuPAD derzeit aber keinesfalls mithalten - die Formelsammlung darf man also noch nicht zum Altpapier geben.

    ScreenshotReibungslos klappt das Zusammenfassen algebraischer Ausdrücke wie etwa x + x zu 2x, das Expandieren von Potenzen (z.B. (a + b)2 zu a2 + 2ab + b2) und das Differenzieren - D(sin) ergibt cos. Das Auswerten von Integralen, egal ob numerisch oder algebraisch, ist derzeit ebensowenig vorgesehen wie das Lösen von Differential- oder nichtlinearen Gleichungen. All dies ließe sich aber über entsprechende Bibliotheken nachrüsten: die dazu nötigen Datenmanipulationen kann man unmittelbar in der Sprache des Systems formulieren, denn neben den algebraischen Konstruktionen sind auch Verzweigungs- und Schleifenbefehle möglich. Sogar ein interaktiver Debugger ist vorhanden.

    Die grafische Oberfläche und insbesondere die Darstellung von 3D-Oberflächenplots suchen ihresgleichen in der PublicDomain-Welt. Und das ausführliche Hilfesystem mit Hypertext-Querverweisen stünde auch manchem kommerziellen Programm gut zu Gesicht.

    MacMuPAD gibt es kompiliert je für Macs mit und ohne FPU. Die empfohlene Speicherzuteilung beträgt 5 MByte. Das von der Mathpad-Gruppe an der Universität-Gesamthochschule Paderborn entwickelte Algebra-System stammt eigentlich von Unix-, genauer gesagt von Parallelrechnern ab. Neben der Komplettversion für den Macintosh gibt es für das X-Window-System eine grafische Shell XMuPAD zum MuPAD-Kern - interessant für Linux-Benutzer. Die Version 1.22 beherrscht auch Integration. Im Verlag Birkhäuser, Basel, sind ein deutsches Benutzerhandbuch und ein englisches Lehrbuch erschienen.


  • Weitere Informationen des Hersteller / der Distributoren:
  • Because of the attention MuPAD has received on the net, here are some basic facts about it:

  • MuPAD is a system for symbolic and numeric computation, parallel mathematical programming and mathematical visualization. It is intended to be a 'general purpose' computer algebra system.
  • MuPAD has easy-to-use language constructs for parallel programming. A prerelease Version for parallel programming exists for Sequent and Sun multiprocessor machines. Programming in MuPAD's own programming language is supported by a comfortable source code debugger. Window-based user interfaces for MuPAD exist for the X-Window-System and the Apple Macintosh.
  • The 400+ page user manual (in German) and the 200 page tutorial (in English) for MuPAD are published by Birkhaeuser, Basel. On-line Hypertext versions of the manual/tutorial and a demo are distributed with the system. The English reference manual will follow in winter 95/96. There also is sufficient on-line documentation, both in English. (Reference manual and helppages; tutorial, sample session and a demo)
  • MuPAD is distributed for free, but not in the public domain; a registration is required. MuPAD is available via anonymous ftp for several systems: Sun, Silicon Graphics, HP, DEC, PC with Linux or FreeBSD or Solaris, IBM workstations, Apple Macintosh. Prereleased versions exist for Sequent.
  • For the development of libraries MuPAD counts on its user community. Anyone who wants to make contributions to the libraries is invited to contact the MuPAD group. We will be eager to support you and to solve any problems you might have with the system.
  • FACT SHEET
  • MuPAD is a system for symbolic and numeric computation, parallel mathematical programming and mathematical visualization.

    OVERVIEW

    The program consists of a small kernel written in C and Libraries written in the MuPAD programming language. All features described may be used interactively or via the programming language. Control structures for programming are also available at the interactive level. Kernel and library are machine independant. In addition to the terminal-based user interface window-based interfaces exist for the X-Window-System and the Apple Macintosh.

    The MuPAD programming language has various built-in constructs for parallel programming, accessible at any level of programming experience. First parallel implementations exist. MuPAD is devoted to the scientific community and freely distributed for non-commercial use.

  • SYMBOLIC AND NUMERIC COMPUTATION
  • Data Types

    Integers and rational numbers of any length, floating point and complex numbers of arbitray precision, multivariate sparse polynomials, strings, Booleans, variable identifiers, dynamic lists, sets and tables, arrays of any dimension, user defined types (domains) and objects, a rich set of expressions, procedures and statements, which are first class data objects.

    Constants

    E, PI, I, FALSE, TRUE, various system constants.

    Data Manipulation

    Operand extraction, counting and substitution, object type testing, indeterminate extraction, concatenation of strings and lists, set manipulation, extraction, sorting and substitution of list, set, table and array elements, mapping operands to functions, string searching, pattern matching, parsing, conversion of strings and polynomials to expressions and vice versa, run-time generation and manipulation of procedures.

    Operators

    Arithmetic (+, -, *, /, ^, mod, div), relational (<, >, <=, >=, =, <>), Boolean (and, or, not), set operations (union, intersect, minus), concatenation (.,#), range (..), sequencing (, and $), domain attribute access (::), assignment (:=), last output (%), user defined operators. System functions and operators may be overloaded by user defined types.

    Arithmetic

    Absolute value, exponential, logarithm, square root, sign, trigonometric and hyperbolic functions and inverses, rounding, ceil and floor, truncation, modular computation, factorial, maximum and minimum, numeric evaluation, extraction of numerator and denumerator, fractional part, real and imaginary part, set union, intersection and difference, set membership, differentiation and expansion of expressions, taylor series and order terms, differential operator.

    Polynomials

    Coefficient mapping and extraction, degree, leading coefficient, term and monomial (lexical and degree order), trailing coefficient, number of terms, nth coefficient, division and pseudo-division, evaluation, integer content, norm, factorisation.

    Domains

    User defined types and data structures, operator overloading, object oriented programming, generic algorithms. As experimental library: parametric domains, domain constructors, categories, category constructors, axiomes.

    Number Theory (standard)

    Integer factorisation, integer GCD and LCM, extended Euclidean algorithm, prime number test, prime number generation, Eulers phi function, random number generation.

    Library packages

  • Linear Algebra
  • About 40 functions. A short selection of functions provided by linalg: gaussian elimination, Gauss-Jordan elimination, solving systems of linear equations, inverting matrices, computing the norm, the rank and the determinant of a matrix, computing the Sylvester matrix, computing a basis for a vector space, QR factorization of regular matrices and many operations on matrices.

  • Polynomial Factorisation
  • Factorization of a multivariate polynomial with integer or rational coefficients and factorization of a univariate polynomial over a finite field.

  • Integration
  • Number Theory
  • About 30 functions. A short selection of functions provided by this package: chinese remainder; hensel lifting; computing the Carmichael and Fibonacci numbers, the Jacobi and Legendre symbol; solving linear congruences; computing roots.

  • Typechecking
  • Very comfortable possibility to check the type of an expression.

  • Share
  • USER INTERFACES
  • General

    Selection of printing and error level, line width, formatted or non-formatted output, verbose printing during procedure execution, recalling of earlier results. Line editor for raw terminal interface.

    X-Windows Version

    Look and feel of OpenLook, editing and recall of input and output, scroll back, two and also three dimensional plotting with mouse-controlled interface , on-line manual and tutorial with hypertext functionality, pasting of examples from these documents into the input window, mouse controlled interface for source code debugger.

    Macintosh Version

    Mac-like interface with notebook functionality, structured session documents, editing of text documents, graphics, debugger and hypertext system as in the X-Windows version.

    GRAPHICS

    General

    Any property of a plot may be set interactively in VCam or defined in a plot-command. VCam Graphics front-end for 2- and 3-dimensional plotting, running under X-Windows and MacOS; thightly coupled with the MuPAD kernel. Defining functions may be entered and manipulated directly in VCam, objects can be added or deleted by mouse-click.

    2D-Plotting Facilities

    Two-dimensional scenes, graphs, curves, list of points/lines/polygons; multiple objects per scene; object style may be points, lines or impulses; options for titling, labeling, colour selection, smooth colouring by height, colouring by user defined functions, axes scaling and style, automatic viewing box, grid and smoothness.

    3D-Plotting Facilities

    Three-dimensional scenes, graphs, surfaces, space curves, list of points/ lines/polygons; multiple objects per scene; object style may be points, lines, impulses, wire frame, mesh, x-line, y-line, hidden line, colour patches, transparent; options for titling, labeling, colour selection, smooth colouring by height, colouring by user defined functions, axes scaling and style, automatic viewing box, camera point and focal point, grid and smoothness.

    Plots can be directly saved in different formats: ASCII, Binary, Raster-, Gif- and Postscript-Files.

  • PROGRAMMING FACILITIES
  • General

    Functional programming language with procedural extensions and Pascal-like syntax. Procedures and statements are ordinary data objects and may be manipulated at run-time. Any language construct is available as system function. Any system function may be overwritten by user-defined procedures. Unnamed functions. Formatted output of procedures.

    Language Constructs

    Assignment, expression, statement sequence, if then elif else end_if, for from to step do end_for, while do end_while, repeat until end_repeat, case of do otherwise end_case, proc() begin end_proc, break, next, error, return, parameter lists of varying length.

    Evaluation

    The programmer can control any aspect of expression evaluation and variable substitution: holding evaluation, evaluation in an outer context, defining substitution level, additional evaluation, retrieving values directly. Procedures may remember calculations to speed up execution. Results are stored in a history table which may be accessed by procedures.

    Input and Output

    Reading and writing of text and binary (M-Code) files, opening and closing of files, reading and writing of MuPAD data and raw text, printing output to file, writing a session protocol to file. Entering expressions or text interactively.

    Debugging

    Execution tracing, verbose procedure execution, different printing and error levels, error trapping. A source code debugger allows to step through procedures, print and observe values of variables, alter values of variables, execute instructions, display the procedure stack. The debugger is integrated into the kernel and may be used via command language or a comfortable window-based user interface (available under the X-Window-System).

  • PARALLEL PROGRAMMING
  • General

    There are two levels of parallelism in MuPAD : micro-parallelism on a processor cluster with high speed communication facilities (a multi-processor machine for example) and macro-parallel ism on a network of clusters with medium- to low-speed communication.

    Micro-Parallelism

    Automatic task creation and distribution by the system. Easy-to-use language constructs: parallel for-loop, parallel and sequential blocks, private and global variables, task abortion.

    Macro-Parallelism

    Blocking and non-blocking message queues and pipes, global network-wide variables, topology informations.

  • DYNAMIC MODULES
  • Beside the conventional concept of libraries written in the language of the CA system, MuPAD offers another library concept, called dynamic modules. Users can implement algorithms in the C programming language (in the near future moreover in C++) to extend the MuPAD system by new functions. The advantages are:

  • Spead. Functions written in the MuPAD programming language are executed by MuPAD's interpreter, whereas moduls are compiled into machine code.
  • Users can use the flexibily of C (C++) and have access to all internal functions and data structures of the MuPAD kernel.
  • Dynamic modules forces no interprocess communication, they are directly linked to the MuPAD kernel on demand at run time. It is also possible to unload modules at run time. This is why we speak of dynamic modules. The method used is called dynamic linking. Because the operating system must support dynamic linking, modules are available only for the following platforms:

  • Sun SPARC - SunOS 4.1.1 or later, SunOS 5.x (Solaris)
  • Silicon Graphics - Irix 5.1 or later
  • IBM RS/6000 - AIX 3.1 or later
  • PC/AT - FreeBSD 1.1.5.1 or later

  • Who uses MuPAD

  • Countries
  • German universities
  • Well known research centers
  • Schools
  • And what it is used for?

  • Weitere Links:

  • [ < ] [ globale Übersicht ] [ Kapitelübersicht ] [ Stichwortsuche ] [ > ]