Zur neuen Version von Mathematica


Es gibt ein Sprichwort, welches heisst: "Was lange waehrt, wird gut." An dieses muessen sich die Entwickler um Stephen Wolfram im Laufe der letzten Jahre oft erinnert haben. Ihre neue Version von Mathematica wurde in Teilen schon vor 3 Jahren vom Chef persoenlich vorgestellt, immer verbunden mit dem Versprechen, dass sie in absehbarer Zeit auf den Markt kommt. Der interessierte Nutzer wartete aber vergeblich darauf - bis sie nun endlich im Oktober dieses Jahres in den Verkauf kam. Nun allerdings mit grossem PR Aufwand, der auch mobile Demostudios einschliesst, die durch die USA und Europa fahren. Was gibt es also Neues in Mathematica?
Was das Frontend, also die Benutzeroberflaeche, anbetrifft, so wartet Mathematica 3.0 mit teilweise revolutionaeren Neuerungen auf. Hier steckte Wolfram Research den groessten Teil der Arbeit hinein. Man kann mit Mathematica 3.0 nun hochwertige und strukturell programmierbare Dokumentationen erstellen, die es in ihrer Qualitaet teilweise mit TeX aufnehmen koennen. Dazu wurden extra eigene Fonts (lateinisch, griechisch, gothisch,...) entwickelt. Die Eingabe(!) der mathematischen Kommandos kann jetzt sogar zweidimensional erfolgen, also mit den aus der Mathematik gewohnten Zeichen - im Prinzip versteht Mathematica fast jedes gaengige Symbol, einschliesslich Matrizen in ihrer ueblichen Form. Hierfuer stehen Macros zur Verfuegung, die jeder TeX- oder HTML-Anwender auf Anhieb versteht. Alternativ kann man vorgefertigte Paletten verwenden, die durch Anklicken mit der Maus die jeweiligen Symbole in das Notebook holen. Neben der neuen, ebenfalls zweidimensionalen Standardausgabe, kann man auch eine traditionelle Ausgabe waehlen, welche die Symbole in ihrer Form denen der Lehrbuecher im wesentlichen angleicht. Mit der neuen Version ist es moeglich, Eingaben partiell auszuwerten, in dem man den gewuenschten Teil mit der Maus markiert und durch eine Tastenkombination in den Kernel zur Verarbeitung schickt. Die Ausgabe ist ohne Einschraenkung manipulierbar und gegebenenfalls sofort wieder als Eingabe verwendbar, was manchmal sehr viel Zeitersparnis bringen kann. Eine weitere interessante Neuerung ist die Moeglichkeit, eigene Paletten zu definieren. Das sind symbolische Buttons, die bei Anklicken vom Nutzer selbst unterlegte Programme ausfuehren koennen. Das Notebook ist nun auch ein Mathematica-Ausdruck und damit programmierbar. D.h. man kann Notebooks durch Mathematica 3.0 schreiben lassen, man kann Notebooks durch ein Programm oeffnen und es z.B. veraendern, usw.. Der Optioneninspektor hat eine kaum noch ueberschaubare Vielfalt der Manipulationsmoeglichkeiten, man kann im Prinzip jedes Element des Notebooks individuell gestalten.
Nach diesen - nicht vollstaendigen - Bemerkungen zur neuen Benutzeroberflaeche wird sich der Physiker sicher fragen, was denn der Kernel so alles neu oder besser kann. Hier hat Wolfram Research an einigen Stellen wesentlich zugelegt. Meiner Meinung nach ist der Integrator dabei das Glanzstueck. Er duerfte im Moment das Beste sein, was auf dem Markt ist. Nach Aussagen der Entwickler kann der Gradshteyn/Ryshik reproduziert werden (wobei einige Fehler im Buch gefunden wurden). Fuer mich ist beeindruckend, dass vor allem auch Integrale ueber Spezielle Funktionen in nennenswerter Zahl geloest werden koennen. Wenn man weiss, dass Oleg Marichev dabei federfuehrend taetig gewesen ist, wundert das einen dann allerdings nicht mehr so sehr. Mathematica 3.0 erlaubt jetzt die Angabe von Annahmen ueber Parameter in Integralen, was die Glaubwuerdigkeit der Loesungen stark befoerdert. Natuerlich gibt es einige fehlerhafte Resultate, jedoch im wesentlichen dann fuer bestimmte Integrale (die auch von Parametern abhaengen koennen). Unbestimmte Integrale sollten, sofern ueberhaupt eine Loesung angegeben wird, mit grosser Sicherheit richtig sein. Sie werden mit einer erweiterten Version des Risch Algorithmus berechnet. Ermoeglicht wurde dies u.a. durch die Erweiterung der implementierten Speziellen Funktionen. So kann man jetzt auf verallgemeinerte hypergeometrische Fuktionen, MeijerG-Funktionen, Fresnelsche Funktionen, Weierstrass-Funktionen usw. zurueckgreifen. Entscheidend verbessert wurde auch die Vereinfachung symbolischer Ausdruecke. Neben der normalen Simplify-Routine gibt es nun ein FullSimplify, das zwar zeitintensiver ist, andererseits aber ein Vielzahl von Beziehungen vor allem Spezieller Funktionen ausnutzt. Erweitert wurden auch die Moeglichkeiten zum Loesen von Differentialgleichungen. Als Methoden werden hier z.B. Matrix Exponentierung, Kovacs Algorithmus oder auch Symmetrie-Reduktionstechniken genannt. Prototypen wie Abelsche, Riccatische oder Emden-Fowler DGl bereiten keine Schwierigkeiten. Sowohl Randwert- als auch Anfangswertprobleme sind behandelbar. Es waere allerdings wuenschenswert, wenn demnaechst auch Annahmen ueber den Wertebereich moeglicher Parameter in die Loesung mit einfliessen koennten. Die erzeugenden Differentialgleichungen fuer die bekanntesten Speziellen Funktionen oder orthogonalen Polynome sind fuer Mathematica 3.0 nun kein Problem mehr. Auch einige partielle Differentialgleichungen sind in Form allgemeiner Funktionen loesbar.
Die Arbeit mit numerischen Ausdruecken wurde stark erweitert. Numerische Rechnungen werden nun so durchgefuehrt, dass das Resultat tatsaechlich die geforderte Genauigkeit besitzt. Eine ganze Reihe neuer Numerik-Funktionen wurde implementiert, so zur Intervallarithmetik oder auch zur Interpolation. Die Routine Compile fuehrt (im Durchschnitt) im Vergleich zur aelteren Version auf eine drei- bis vierfach erhoehte Rechengeschwindigkeit und ist dazu auf eine groessere Klasse von Routinen anwendbar. Eine Konkurrenz zu Compilersprachen stellt Mathematica 3.0 - was anspruchsvolle Aufgaben anlangt - sicher nicht dar, hat aber teilweise recht effektive Algorithmen implementiert. So werden die Eigenwerte einer symmetrischen 400x400 Matrix durch Mathematica 3.0 schneller berechnet als durch eine entsprechende Routine aus den Numerical Recipes in C (wobei das keine allgemeine Wertung der letzteren beinhalten soll). Die Verfahren der numerischen Integration und Loesung von Differentialgleichungen wurden erweitert, man kann zwischen einigen Methoden explizit waehlen. In der neuen Version gibt es zwar auch ein Monte Carlo Verfahren zur Integration, ohne Fehlerangabe bleibt es jedoch von etwas zweifelhaftem Wert.
An der Grafik wurde nicht so sehr viel geaendert. In die Beschriftung kann jetzt der gesamte verfuegbare Font eingebunden werden - mit Hoch- und Tiefstellungen. Speziell fuer Physiker duerfte von Interesse sein, dass nun Daten mit Fehlerbalken (allgemein sogar mit frei programmierbaren Fehlerfunktionen) dargestellt werden koennen. Eine weitere wesentliche Verbesserung besteht darin, dass man nun grafische Objekte in fast alle gaengigen Formate wie GIF, TIFF, EPS, PICT oder auch PBM umwandeln kann. Es bleibt zu hoffen, dass (wie zugesagt) ab der naechsten Version von der reinen Postscriptdarstellung der Grafik abgegangen wird. Das wuerde die Manipulationsmoeglichkeiten grafischer Objekte wesentlich erweitern.
Die Dokumentation und das Hilfesystem wurden komplett neu gestaltet. Stephen Wolfram hat sein Buch auf etwa 1400 Seiten erweitert. Fuer mich ist es ein Musterbeispiel fuer eine gut durchdachte Einfuehrung in ein komplexes Softwaresystem. Da ein solch schweres Werk nicht immer ins Handgepaeck passt, ist es vollstaendig auf der ausgelieferten CD enthalten. Zudem ist es auch in das on-line-Hilfesystem integriert, das mit Themen- und Masterindexsuche das heute uebliche Niveau repraesentiert. Zu jedem Punkt gibt es interaktiv ausfuehrbare Beispiele, die man in das eigene Notebook kopieren kann. Die Standard add-on Pakete werden sowohl in der on-line Hilfe dokumentiert, als auch in einem zusaetzlichen Buch beschrieben. Die kommerziell vetriebenen Zusatzpakete werden nach und nach in die Version 3.0 umgeschrieben, ihre grundsaetzliche Funktionalitaet wird dabei nicht veraendert. Die bisherigen Programme laufen auch unter der Version 3.0, es gibt dazu ein mitgeliefertes Konvertierungsprogramm. Die Unterteilung der gespeicherten notebook Dateien in *.ma und *.mb wurde zugunsten einer *.nb Datei aufgegeben. Die Unabhaengigkeit von der Plattform soll dadurch besser gewaehrleistet werden, was ich nach meinen bisherigen Erfahrungen bestaetigen kann.
Die Nutzung der neuen Moeglichkeiten der Kommunikation ueber das Internet via WWW wurde in ersten Schritten erschlossen. Man kann sein Notebook als HTML-Dokument speichern und so Web-Seiten erstellen. Zudem besitzt Wolfram Research eine Web-Seite, auf der als Service das Loesen von Integralen angeboten wird. Und wer noch immer zuviel Geld uebrig hat, kann sich mit Mathematica-Tassen, -Sweat-Shirts, -T-Shirts, -Baseballmuetzen, usw. eindecken, Visa oder Master Card genuegt... . Mathematica 3.0 wird derzeit fuer Windows (95 und NT), Macintosh, SPARC, HP, Silicon Graphics, Linux und NEXTSTEP angeboten. Auf Draengen einer Vielzahl von Kunden soll im Sommer 1997 eine Version fuer Windows 3.11 erscheinen, was eigentlich nicht vorgesehen war.
Man kann durchaus sagen, dass Wolfram Research mit der Version 3.0 in einigen Bereichen neue Marksteine gesetzt hat. Das Ziel ist die Schaffung eines Systems, das hohe Rechenleistung mit hochqualitativer Praesentation vereinigt - die perfekte elektronische Dokumentation fuer Forschung, Lehre und Technik. Da die Entwicklung nicht stehenbleibt, kann man auf die neuen Versionen der anderen universellen Computeralgebrasysteme gespannt sein.

This page is maintained by Holger Perlt, 11-6-96