Professional Documents
Culture Documents
Vorwort 15
Einführung 17
Konzeption 19
2 Bedienung 47
Die ersten Kommandos 48
Syntax 48
Befehle finden 50
Operatoren 52
Grafik und Animation 53
Packages 55
Was noch? 56
Tastenkürzel 58
3 Formeleingabe 59
Paletten 60
Brüche 61
8 Inhaltsverzeichnis
4 Mathematica-Notebooks 71
Der Aufbau eines Mathematica-Notebooks 72
Zelltypen 72
Zellgruppierung 76
Zellattribute 77
Querverweise 78
Anzeige von Systemvariablen und Optionen 78
Nummerierung von Überschriften 79
Kopf- und Fußzeilen 80
Style-Dateien verändern oder neu anlegen 81
Preferences (Dialog Option Inspector) 83
Druckerausgabe 85
Tastenkürzel 87
6 Überlebensregeln 111
Vorsicht beim Anschreiben von Produkten 112
Setzen Sie den Strichpunkt richtig ein 113
Vorsicht bei der Verwendung des Unterstrichs 114
II Grundlagen 131
10 Listen 203
Listen im alltäglichen Umgang mit Mathematica 204
Listen erzeugen 205
Auf Listenelemente zugreifen 208
Funktionen und Listen 209
Teillisten zusammenstellen 211
Listen manipulieren 218
Mengen 222
Matrizen und Vektoren 223
Beispiele 224
Syntaxzusammenfassung 229
11 Programmierung 235
Einführung 236
Steuerstrukturen in Mathematica 238
Beispiele 247
Modularisierung und Packages 252
Syntaxzusammenfassung 259
IV Grafik 417
22 Grafikprogrammierung 513
Grafikkommandos mit Optionen 514
Durchsichtige 3D-Objekte (CutOut) 518
TubePlot3D 521
Geschwindigkeitsoptimierung, Compile 531
V Anwendungen 535
24 Differenzialgleichungen 549
Einführung 550
Zwei Anwendungen 553
Beispiele 555
25 Datenanalyse 583
Numerische Daten und funktionale Zusammenhänge 584
Fourier-Transformation 590
Daten lesen und schreiben 594
Anhang 599
D Quellenverzeichnis 625
Mit der im Frühjahr 2001 vorgelegten Version 4.1 wird der Weg hin zu einem auch software-
technisch ausgereiften Werkzeug konsequent fortgeführt. Die Veränderungen sind nicht so fun-
damental wie zwischen Version 2.2 und 3, zeigen aber die Fortschritte in der soliden Arbeit an
verschiedenen Fronten (Differenzialgleichungen, Numerik- und Statistikfunktionen, Java und
MathML-Links, neue Import/Export-Filter) der Weiterentwicklung der Kernkompetenzen von
Mathematica. Software als Prozess – in wenigen kommerziellen Produkten wird dieses Heran-
gehen so deutlich wie bei Mathematica.
Für die Neuauflage eines einführenden Buches wie des vorliegenden eigentlich eine einfache
Sache, zumal es – im wohltuenden Gegensatz zu manch anderen Softwareprodukten – von
keinen Inkompatibilitäten und Neuerungen zu berichten gibt, deretwegen alles, was gestern
noch galt, heute nicht mehr relevant wäre.
Wenn Sie trotzdem eine neue, vollständig überarbeitete Auflage in den Händen halten, dann
hat das also weniger mit Mathematica zu tun als vielmehr mit dem neuen Koautor, der seit vie-
len Jahren an der Universität Leipzig Computeralgebra unterrichtet und dessen Erfahrungen in
der systematischen Darstellung dieses Gebiets hier eingeflossen sind. Für die vorliegende Neu-
auflage, die in entscheidenden Teilen in der Verantwortung des zweiten Autors ausgearbeitet
wurde, sind alle dargestellten Probleme und Lösungen noch einmal durchgegangen, überprüft
und aktualisiert worden. Der Schwerpunkt der Veränderungen liegt jedoch in einer stärkeren
Systematisierung der Ausführungen, die mit einer Neuorganisation, Straffung und Ergänzung
des Materials der vorigen Auflage verbunden ist.
Ein zentrales Anliegen war uns dabei – angesichts des Fehlens von Lehrbüchern zum symbo-
lischen Rechnen – die Verwendung einer klaren Terminologie, mit der sich die Besonderheiten
des symbolischen Rechnens im Vergleich zu klassischen Programmiersprachen (insbesondere
im Bereich des Variablen- und Funktionsverständnisses) deutlich herausarbeiten lassen.
Weiter liegt uns eine (Binsen-)Weisheit am Herzen: Auch wenn Mathematica ein tolles Pro-
gramm ist und Sie bei vielen Fragen dessen Rechenfertigkeiten (bald) nicht mehr missen möch-
ten – es ist, wie alle Computerprogramme, nur ein Werkzeug, dessen Wirksamkeit zum großen
Teil vom Geschick der Person abhängt, die dieses Werkzeug anwendet. Anders gesagt: Rechen-
arbeit kann Ihnen Mathematica abnehmen, aber denken müssen Sie noch immer selbst. Im ersten
Kapitel haben wir eine Reihe von (elementarmathematischen) Beispielen zusammengetragen,
die dieses subtile Wechselspiel zwischen Rechnen und Denken illustrieren.
Und noch eine letzte Bemerkung: Über die Formeln staunen, die Mathematica zu den kompli-
ziertesten Problemen auf den Bildschirm bringt, ist die eine Seite, sie sinnvoll interpretieren
und handhaben zu können, eine ganz andere. Das verlangt ein gehöriges Maß an mathemati-
scher Bildung und bringt die Autoren eines einführenden Buches wie dieses in Verlegenheit: Es
gilt, die Voraussetzungen nicht zu hoch zu schrauben und doch die Möglichkeiten von Mathe-
matica an nicht trivialen Beispielen zu demonstrieren. Urteilen Sie selbst, ob uns das gelungen
ist. Die Beispiele dieses Buches sollten sich weitgehend mit guten Abiturkenntnissen in Ma-
thematik bzw. dem Wissen, das in naturwissenschaftlich-technischen Studiengängen mit dem
Vordiplom vorausgesetzt wird, erschließen lassen. Nur im letzten Teil Anwendungen“ geht es
”
über diesen Horizont hinaus in den Bereich, in dem die eigentlichen Stärken von Mathematica
liegen.
Wir hoffen und wünschen uns, dass Sie an dieser Neuauflage Ihre Freude haben werden und
dass neben neuen Mathematica-Freunden auch der eine oder andere gestandene Mathematica-
Nutzer die Ausführungen mit Gewinn für seine Arbeit mit diesem hochkomplexen Software-
Werkzeug liest.
November 2001
Dank
Bedanken möchten wir uns an dieser Stelle bei der Firma Wolfram Research, Inc., die uns ak-
tuelle Mathematica-Versionen für Windows und Linux zur Verfügung stellte sowie mit http:
//support.wolfram.com eine Website unterhält, der wir zahlreiche konstruktive Ratschläge
und Hinweise entnommen haben.
Einführung
Was ist Mathematica? Eine sehr schlichte Antwort auf diese Frage gibt Steven Wolfram: A System
for Doing Mathematics by Computer. Schon die Übersetzung dieses Spruchs wirft einige Fragen
auf: Der Mathematik-Computer? Mathematik am Computer? Mathematik mit dem Computer?
Mit Mathematica haben Sie ein sehr komplexes Werkzeug zur Hand, das viele mathematische
Kalküle auszuführen vermag, die Sie vielleicht nur in groben Zügen oder auch gar nicht ken-
nen. Es hält für Sie einen großen Teil des in Formeln gegossenen mathematischen Wissens un-
serer Tage bereit und kann Sie von der Detailkenntnis zu einzelnen Verfahren entlasten, ohne
die Sie bisher mathematische Kalküle nicht fruchtbringend einsetzen konnten.
Hinter der Implementierung jedes dieser Kalküle steckt allerdings gewöhnlich mehr als nur
ein heuristischer Zugang, den Sie vielleicht für einzelne Probleme anwenden würden, sondern
die systematische Abhandlung einer ganzen Problemklasse auf einem Niveau, das dem heu-
tigen Stand der mathematischen und algorithmischen Kenntnis entspricht. Buchberger ([Re-
chenberg, Pomberger], S. 808) spricht in diesem Zusammenhang sogar von der Trivialisierung
”
einer ganzen Problemklasse der (symbolischen) Mathematik“, also von der Möglichkeit, diese
zukünftig als Black-Box-Wissen einzusetzen.
Sie können damit, von mehr oder weniger stupider und fehleranfälliger Routine-Rechenar-
beit entlastet, Konzepten und Anwendungen mehr Zeit widmen und auf eine vorher nicht
denkbare Weise mit Mathematik experimentieren.
Vom Umstand, welch schwierige mathematische Fragen sich mit einem solchen Werkzeug be-
handeln lassen, vor denen Sie bisher entweder aus Unkenntnis einschlägiger Verfahren oder
mit Blick auf den Rechenaufwand kapitulieren mussten, geht eine eigentümliche Faszination
aus. So wird Mathematica für Neueinsteiger bald zum unentbehrlichen Begleiter bei anspruchs-
vollen analytischen Aufgaben werden. Aber vielleicht sind Sie dieser Faszination bereits er-
legen, haben sich aber im Dschungel der vielen Kommandos und Möglichkeiten verirrt und
suchen Informationen, wie sich Mathematica noch effizienter einsetzen lässt?
Ein Schwerpunkt dieses Buchs liegt darauf, Ihnen nicht nur einen Überblick über diese fast
endlose Fülle von Kommandos zu vermitteln, sondern sie nach aus unserer Sicht wichtigen
Kriterien zu ordnen und so eine Basis zu schaffen, von der aus sich auch die Teile von Mathema-
tica erobern lassen, die nicht Gegenstand dieses Buches sind. Nicht die lexikalische Aufzählung
unzähliger Kommandos ist das Ziel dieses Buches, sondern die Orientierung an der Praxis.
Dazu zählt auch die Gestaltung mathematischer Dokumente – ein Punkt, der leider noch viele
Probleme bereitet.
Mit Blick auf die schnell wachsende Akzeptanz computermathematischer Werkzeuge kann
man schon heute prognostizieren, dass sie in absehbarer Zeit zum unverzichtbaren Arsenal
aller ingenieurtechnischen Bereiche gehören werden und ihr Einsatz an höheren Schulen, auf
Universitäten und in der Industrie so selbstverständlich sein wird wie heute der des Taschen-
rechners. Sie werden zum Kern umfassenderer fachspezifischer Systeme gehören, so wie viele
CAD-Systeme bereits heute symbolische Komponenten integriert haben.
Allerdings gehört zum qualifizierten Gebrauch eines solchen Werkzeugs mehr als die Fähig-
keit, Knöpfchen zu drücken und eine möglichst lange Liste von Kommandos gut zu memorie-
ren. Spätestens dann, wenn Ihnen das System einen Ausdruck um die Ohren haut, mit dem Sie
beim besten Willen nichts anfangen können, werden Sie merken: Ihnen verbleibt noch immer
der Part der Methoden- und Interpretationskompetenz, d.h. die Frage, welche mathematischen
Verfahren für welche Aufgabenstellung sinnvoll anzuwenden sind und wie Sie die Ergebnisse
der Mathematica-Rechnungen zu interpretieren haben.
Kurz, für den Mathematica-Einsatz gilt dasselbe, was die Autoren des Editorials des Hefts
5/2000 der Zeitschrift LOG IN generell zum Computereinsatz schreiben:
Die Technik wird denjenigen kaum helfen können, die sowieso schon Schwierigkeiten mit
dem Lernen haben. Gelernt werden muss zwar immer weniger die Fähigkeit, Wissen zu
speichern, also auswendig zu lernen, aber immer mehr, es gezielt zu recherchieren, zu verar-
beiten und zu ordnen. Auf den Erwerb grundlegender Verständnismodelle der Welt kommt
es zunehmend an, mit deren Hilfe dann die Wirklichkeit präziser erschlossen werden kann.
Sollen solche Verständnismodelle brauchbar sein, müssen sie einen hohen Abstraktionsgrad
erreichen. Damit wird das zu lernende Wissen noch abstraktere Formen annehmen müssen
als heute schon.
Mathematica ist ein Kind der mit fortschreitendem Computerzeitalter immer engeren Symbiose
zwischen Kalkül und Technologie. Auch bei diesen Fragen zur mathematischen und informa-
tischen Methoden- und Interpretationskompetenz kann Ihnen deshalb Mathematica ein treu-
er Rat- und Hinweisgeber sein; diesmal jedoch nicht mit seinen kalkulatorischen Fähigkeiten,
sondern über das im Hilfesystem gespeicherte computermathematische Wissen. Die Navigation in
diesem Wissenspool, der Ihnen zusammen mit dem Rechenwerkzeug zur Verfügung steht, ist
weitgehend selbst erklärend, so dass wir in diesem Buch nur kurz darauf eingehen werden.
Und noch eine letzte Bemerkung: So wie es Normen gibt, wie ein mathematischer Beweis or-
”
dentlich“ aufzuschreiben ist, plädieren wir für einen kulturvollen“ Gebrauch von Mathematica
”
als Werkzeug, für die Kenntnis und Anwendung grundlegender informatischer und computer-
mathematischer Konzepte. Das ist kein Plädoyer für einen Mathematica-Führerschein“, son-
”
dern die Aufforderung an Sie, sich bei der Arbeit mit dem System auch für solche Fragen zu
interessieren und entsprechende Konzepte zu berücksichtigen.
Konzeption
Teil I, Mathematica kennen lernen, gibt eine Einführung in den Umgang mit Mathematica. Nach
einer ersten Tour durch teils mehr, teils weniger elementare mathematische Fragestellungen
(wobei elementar nicht gleichbedeutend mit anspruchslos ist) liegt der Schwerpunkt auf der
Bedienung von Mathematica (inklusive Formeleingabe und Arbeiten mit Notebooks – jedem
dieser beiden Themen ist ein eigenes Kapitel gewidmet). Kapitel 6 mit Überlebensregeln für
den täglichen Umgang mit Mathematica sollte auch von Lesern, die glauben, Mathematica schon
zu kennen, nicht nur überblättert werden.
Teil II, Grundlagen, vermittelt grundlegendes Wissen über den Umgang mit Mathematica als
Computerwerkzeug. Der Schwerpunkt liegt auf der informatischen, der Computerseite, also
dem Umgang mit Variablen, Symbolen und Listen, dem Einsatz eingebauter und dem De-
finieren eigener Funktionen, der Verwendung von Regeln und Mustern und einem kleinen
Einblick in die Programmiermöglichkeiten von Mathematica. Eine Referenz elementarer Kon-
stanten, Operatoren und Grundfunktionen rundet diesen Teil ab.
Im Teil III, Mathematik, steht dann endlich die Mathematik im Mittelpunkt. In den ersten
beiden Kapiteln geht es zunächst, auf dem Niveau eines naturwissenschaftlich-technischen
Grundstudiums, systematisch durch verschiedene Gebiete der Analysis und Algebra. Der
Schwerpunkt liegt dabei auf den Kommandos selbst und ihrem qualifizierten Einsatz. In zwei
weiteren Kapiteln rücken dann konzeptionelle Fragen wieder stärker in den Mittelpunkt: Das
Vereinfachen von Ausdrücken und das Lösen verschiedener Arten von Gleichungen und Glei-
chungssystemen. In einem weiteren Kapitel sind numerische Anwendungen zusammenge-
fasst, da diese gegenüber der exakten, computeralgebraischen“ Mathematik einige (gemein-
”
same) Besonderheiten aufweisen. Alle Kapitel enden mit einer knappen Syntaxzusammenfas-
sung aller wichtigen Kommandos zum jeweiligen Thema.
Teil IV, Grafik, widmet sich einer weiteren nützlichen Seite von Mathematica, die sehr zu dessen
Popularität beigetragen hat: den exzellenten Visualisierungsmöglichkeiten. Es gibt hier derart
viele Gestaltungsmöglichkeiten, dass viele Anwender Mathematica nur einsetzen, um damit
Abbildungen für verschiedene Zwecke zu erstellen. Allerdings sind für die Ausschöpfung der
grafischen Möglichkeiten von Mathematica auch informatische, mathematische und Program-
mierkenntnisse in nicht unerheblichem Umfang erforderlich, so dass dieser Teil keineswegs ein
‘Buch im Buche’ ist.
Im Teil V, Anwendungen, begeben wir uns auf eine kleine Exkursion in verschiedene Bereiche
der höheren Mathematik und demonstrieren – wenn dies überhaupt jemand in Frage stellen
sollte –, dass Mathematica auch jenseits eines universitären Grundkurses ein wichtiges Werk-
zeug ist. Obwohl gerade in diesem Bereich der höheren Mathematik und ihren Anwendungen
in den Natur- und Technikwissenschaften die eigentliche Bedeutung von Computeralgebra-
Werkzeugen liegt, ist dieser Teil mit Blick auf den einführenden Charakter unseres Buches kurz
und wenig systematisch gehalten.
Der Anhang enthält schließlich eine Reihe von Informationen über die lokale Konfigurierbar-
keit von Mathematica und die Möglichkeiten des Zusammenwirkens mit anderen Program-
men. Allerdings geht es dort nicht um MathLink, das leistungsfähige Mathematica-Protokoll
zur Kommunikation mit C und Java, da dessen Programmierung ausgefeilte Computerkennt-
nisse erfordert und somit den Rahmen eines einführenden Buches sprengen würde. Wir be-
schränken uns auf Fragen, die uns selbst bei der Arbeit mit Mathematica immer wieder bewegt
haben: die lokale Konfigurierbarkeit, um unbequeme Standardeinstellungen zu modifizieren,
das Speichern und Ausdrucken von Grafiken und Notebooks, Mathematica im Internet sowie
die Zusammenarbeit mit den Textverarbeitungsumgebungen LATEX und Word.
Formalitäten
Aus Platzgründen sind Formeln nicht wie in Mathematica üblich mit der Schrift Courier ge-
setzt, sondern mit dem Times-ähnlichen Standardzeichensatz von LATEX. Ebenso wurde auf die
Nummerierung der Formeln durch In[n] := ::: und Out[n] := ::: verzichtet.
Versionen
Grundlage für die Arbeit an diesem Buch waren die Mathematica-Versionen 4.1 für Windows
und für Linux, wobei die meiste Arbeit mit der Linux-Version erledigt wurde. Der Rechner war
mit einem Pentium 133 und 64 MByte RAM ausgestattet. (Ja, auch auf solchen Möhren“ läuft
”
Mathematica zur vollsten Zufriedenheit!)
Anmerkung: Die verwendeten Tastenkürzel variieren leicht zwischen den verschiedenen Be-
triebssystemen. Für die Arbeit an diesem Buch standen sowohl eine Linux- als auch eine
Windows-Version zur Verfügung. Alle Tastenkürzel, die in diesem Buch angegeben sind,
beziehen sich auf die Windows-Version.