Mathematica
Ein Softwarepaket für Symbolische Algebra, Graphik und Numerik

von Peter Marksteiner (Ausgabe 94/3, Dezember 1994)

 

Der komplette Artikel steht nur im PDF-Format zur Vefügung (siehe rechte Spalte).

 

Der Untertitel des Mathematica-Handbuchs lautet: A System for Doing Mathematics by Computer. In diesem Artikel soll kurz erläutert werden, was sich hinter dieser etwas vagen Beschreibung verbirgt: Ein umfangreiches Softwarepaket, das zugleich eine mathematische Bibliothek, eine Sammlung von numerischen Algorithmen, eine Programmiersprache und eine Graphikbibliothek ist.

Symbolische Algebra

Nachdem in den 60er Jahren die theoretischen Grundlagen geschaffen worden waren, wurden in den letzten Jahrzehnten etliche Programmpakete für Symbolische Algebra entwickelt. Vorher beschränkten sich Computer- Anwendungen in der Mathematik im wesentlichen auf numerische Mathematik: Die Lösung eines Problems wird immer in Form von Zahlenwerten - zumeist Näherungswerten - geliefert.

In der Mathematik ist man jedoch an Zahlenwerten oft gar nicht interessiert. Bei Manipulationen von mathematischen Ausdrücken, Herleitungen von Formeln usw. helfen numerische Resultate wenig: Wer beispielsweise den Term (x +y)4 ausmultiplizieren will, fängt wenig mit einem Programm an, das für jeden Wert von x und y den richtigen Zahlenwert liefert. Nun lassen sich die Regeln, nach denen man mathematische Ausdrücke manipuliert, so formulieren, daß sie automatisch - also vom Computer - angewendet werden können. Jener Zweig der Mathematik und Informatik, der sich mit der Automatisierung mathematischer Operationen und Formelmanipulationen beschäftigt, wird Symbolische Algebra genannt. Symbolische Algebra war in den letzten Jahrzehnten - und ist es noch heute - Gegenstand intensiver Forschung.

Als Früchte dieser Forschungstätigkeit stehen heute etliche Softwarepakete zur Symbolischen Algebra zur Verfügung. Nach bescheidenen Anfängen vor etwa zwanzig Jahren sind Programme dieser Art heute erstaunlich vielseitig und leistungsfähig und können auch sehr komplexe mathematische Probleme lösen. Zu diesen Paketen zählen Reduce, Maple, MATLAB, Macsyma, Derive, Axiom, MathCad und schließlich auch Mathematica, wohl das populärste und kommerziell erfolgreichste dieser Pakete. Jedes der Pakete hat seine eigenen Stärken und Schwächen - MATLAB beispielsweise ist bei Matrixoperationen führend, hat aber weniger Möglichkeiten im Bereich der symbolischen Mathematik, während Mathematica ein sehr umfangreiches "Allround-Paket" ist.

Mathematica - ein Überblick

Dieses Kapitel können Sie im PDF nachlesen.

Versionen von Mathematica

Mathematica-Versionen für PC (MS-DOS, MS-Windows und NEXTSTEP), Apple-Macintosh, VAX/VMS sowie für verschiedene Unix-Workstations - DEC RISC, DEC Alpha AXP, HP 9000/700, IBM RS/6000, Silicon Graphics, Sun SPARC (SunOS und Solaris) - können als Standardsoftware über das EDV-Zentrum bezogen werden.

Der Hauptunterschied zwischen der DOS- und der Windows-Version ist die Benutzeroberfläche. Anstelle des Befehls-Interface, wie es im vorigen Kapitel beschrieben wurde, verfügt die Windows-Version über ein sogenanntes Notebook-Interface: Alle Befehle und deren Ergebnisse - ob Text oder Graphik - werden in einem "Notebook" abgespeichert, welches auf vielfältige Weise editiert werden kann. Beispielsweise kann man an einer Eingabezeile Parameter ändern und den Befehl erneut ausführen; man kann Teile des Notebooks zu einem "Kapitel" zusammenfassen und ein hierarchisch organisiertes Dokument erstellen, das man durch Anklicken mit der Maus an einer bestimmten "Seite" aufschlagen kann, und vieles andere mehr.

Trotz dieser Vorzüge des Notebook-Interface empfiehlt es sich unter Umständen, die DOS-Version zu verwenden: Die Windows-Version erfordert einen gut ausgebauten PC mit ausreichend Hauptspeicher.

Das Notebook-Interface ist integraler Bestandteil der Macintosh- und NEXTSTEP-Version. Auch für die Unix- Versionen gibt es eine Variante des Notebook-Interface, die auf X-Windows beruht. Diese kann nur mit einer OSF/Motif-Oberfläche verwendet werden.

Die Grenzen von Mathematica

Obwohl Mathematica ein sehr umfangreiches Paket mit außerordentlich vielfältigen Möglichkeiten ist - selbst wer sich lange damit beschäftigt, wird wohl kaum alle davon ausschöpfen -, so gibt es dennoch Grenzen, und es kommt öfters vor, daß man an diese Grenzen stößt.

Zunächst ist die Aussage, daß z.B. Zahlen "beliebig" groß sein können, nicht ganz wörtlich zu nehmen: Es leuchtet ein, daß die Speicherkapazität des Rechners eine obere Schranke für die Größe einer Zahl darstellt. Während man so große Zahlen in der Praxis wohl kaum braucht, kann es dennoch oft vorkommen, daß der Speicher knapp wird - auch bei gut ausgebauten Rechnern und bei Aufgabenstellungen, die auf den ersten Blick recht einfach erscheinen. Generell ist der Ressourcenbedarf (CPU-Zeit, Hauptspeicher) schwer abzuschätzen. Es kann vorkommen, daß Mathematica ein bestimmtes Problem in wenigen Sekunden löst, während es bei einem anderen, das sich vielleicht nur durch ein Vorzeichen davon unterscheidet, nach etlichen Stunden oder Tagen Rechenzeit wegen Mangels an Speicher "abstürzt". Das liegt in der Natur der Symbolischen Algebra begründet; man kann das grundsätzlich nicht immer vermeiden. Schließlich stellt sich noch die Frage: Wie weit kann man Mathematica trauen? Kann man sich darauf verlassen, daß mit Mathematica erzielte Ergebnisse stimmen? Wie jedes komplexe Softwareprodukt ist Mathematica natürlich nicht fehlerfrei. Frühe Versionen waren in mancher Beziehung recht mangelhaft, die meisten Fehler wurden aber nach und nach ausgemerzt, sodaß die aktuelle Version 2.2 bemerkenswert stabil und verläßlich ist. Fehler finden sich am ehesten in den mitgelieferten "Standard Mathematica Packages", aber auch diese Fehler bewirken in den seltensten Fällen mathematisch falsche Ergebnisse, sondern beispielsweise, daß die Beschriftung einer Graphik nicht dort steht, wo sie laut Dokumentation sein sollte.

Ein anderes Problem ist die Interpretation der Ergebnisse. Mathematica transformiert Ausdrücke nach wohldefinierten Regeln. Man kann sich praktisch immer auf die formale Richtigkeit dieser Transformationen verlassen. Daraus folgt aber noch nicht, daß die Ergebnisse auch inhaltlich sinnvoll sind.

Ein Beispiel hierfür finden Sie im PDF auf Seite 19.

Zusammenfassend sei bemerkt: Mathematica kann eine enorme Hilfe bei mathematischen Problemen sein, besonders bei Problemen formaler Natur, kann aber nicht das Denken ersetzen.

Materialien zu Mathematica

Neben der Software selbst, die nach Erwerb einer Sublizenz auf die übliche Weise vom SWD-Server abgeholt werden kann, gibt es zahlreiche Bücher, Publikationen, Programmpakete und sonstige Materialien zu Mathematica.

Literatur

An erster Stelle sei das vom Schöpfer von Mathematica verfaßte Handbuch genannt:

Wolfram, Stephen: Mathematica: A System for Doing Mathematics by Computer, 2. ed., Reading, Mass., Addison- Wesley, 1992, ISBN 0-201-51502-4.

Es gibt davon auch eine deutsche Version (Mathematica: Ein System für Mathematik auf dem Computer, Bonn 1994, ISBN 3-89319-371-5).

Mehrere Exemplare des (englischen) Handbuches können am EDV-Zentrum entlehnt werden (bei Peter Wienerroither, Tel.: 4065822-440). Von Addison-Wesley wurden noch etliche andere Bücher zum Thema Mathematica publiziert; das Angebot reicht von "Partial Differential Equations with Mathematica" bis zu "The Joy of Mathematica". Eine populärwissenschaftliche Zeitschrift, "The Mathematica Journal", erscheint vierteljährlich, ebenfalls bei Addison-Wesley.

mathsource

Von Wolfram Research wird ein Informations-Server betrieben, dessen Internet-Adresse MATHSOURCE.WRI.COM lautet. Man kann ihn über Anonymous FTP und Gopher erreichen. Im Verzeichnis Publications sind dort Veröffentlichungen zum Thema Mathematica abgelegt; das Verzeichnis Enhancements enthält Erweiterungen zur Standardversion von Mathematica, und im Verzeichnis Applications findet man in Mathematica geschriebene Anwenderprogramme zu diversen Fachgebieten wie Astronomie, Chemie, Wirtschaftswissenschaften usw. Ein WWWServer (URL: www.wri.com/) mit Informationen zu Mathematica steht ebenfalls zur Verfügung.

Vertrieb in Österreich

In Österreich wird Mathematica von Uni Software Plus, A-4232 Hagenberg, vertrieben. Uni Software Plus bietet eine Studentenversion von Mathematica um öS 2.150,- an. (Im Rahmen der Standardsoftware darf Mathematica nur auf universitätseigenen Rechnern und nicht auf privaten PCs von Studenten eingesetzt werden.) Es werden auch andere Softwareprodukte zu Mathematica angeboten, z.B. Excel MathLink um öS 984,-. Uni Software Plus kann man unter der eMail-Adresse USP@UNISOFT.CO.AT oder telefonisch unter der Nummer 07236/3330 erreichen.

Ansprechpartner

Bei Fragen zu Mathematica wenden Sie sich bitte an Peter Marksteiner (Tel.: 4065822-255, eMail: MARKSTEINER@ CC.UNIVIE.AC.AT) oder an die Mitarbeiter der Rechenanlage Physik. Auch an die eMail-Adresse SUPPORT-EURO@WRI.COM können Anfragen gerichtet werden. In der Newsgruppe sci.math.symbolic werden Probleme der Symbolischen Algebra diskutiert; ein großer Teil der Diskussionen ist Mathematica gewidmet.

***

Wer kann nun durch die Verwendung von Mathematica profitieren?

Wer klassische Programmiersprachen dazu verwendet, um mathematische Probleme zu lösen - und in weiterem Sinne sind sehr viele Probleme "mathematisch" -, kann sich wahrscheinlich durch Mathematica das Leben leichter machen. Solange die Aufgabenstellungen nicht allzu numerisch intensiv sind (also wenn die Arbeitszeit der kritische Faktor ist und nicht die Rechenzeit) kann man in vielen Fällen mit Mathematica wesentlich effizienter arbeiten als mit Fortran, Pascal, Basic oder C.

Aber auch für Anwender ohne Programmierkenntnisse kann Mathematica von Nutzen sein, beispielsweise für Anwender von Spreadsheets: Wer mathematische oder graphische Funktionen braucht, die über die Möglichkeiten von Spreadsheets hinausgehen, sollte die Verwendung von Mathematica in Erwägung ziehen.