Mathematica als Visualisierungswerkzeug für mathematische Objekte, Mathematica als Programmiersprache und

Ähnliche Dokumente
Beamer Color. Sascha Frank. 13. Januar Einleitung 1. Beispielsweise das Usetheme Berkeley in rot anstatt dem üblichen blau:

Allgemeines zu Farben in HTML

Lektion 1 - Was ist HTML

Variablen in MATLAB. Unterschiede zur Mathematik: Symbolisches und numerisches Rechnen. Skriptdateien. for-schleifen.

Eine kleine Einführung in HTML

Eine Kurzanleitung zu Mathematica

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Komplexe Zahlen. Berechnung von n-ten Wurzeln. Als Beispiel behandeln wir die Bestimmung der 3-ten Wurzeln von z = i

Informationen zum Gebrauch des Rechners TI 92

Maple V, Rel 5.1 Einführungskurs

Werkstatt Multiplikation Posten: Rundung im Quadrat. Informationsblatt für die Lehrkraft. Rundung im Quadrat

Gewöhnliche Differentialgleichungen (ODEs) I

Thema: Excel-Grundlagen

9.1 Eine Gleichung mit einer Unbekannten exakt lösen x Beispiel 1: Die Gleichung x 2 = 4 lösen. solve( x / (x 2) = 4, x ); 8 3

Inhaltsverzeichnis. Inhaltsverzeichnis 3

2 ZAHLEN UND VARIABLE

3 Berechnungen und Variablen

Einführung in die Programmierung mit VBA

Kennen, können, beherrschen lernen was gebraucht wird

Von: Sven Weltring, Viola Berlage, Pascal Küterlucks, Maik Merscher

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Statistik mit Tabellenkalkulation

Excel Grundlagen. Peter Wies. 1. Ausgabe, Februar 2013

Inhaltsverzeichnis. Inhaltsverzeichnis

Wiederholung von Äquivalenzumformungen (Lösen linearer Gleichungen): Wiederholung von Äquivalenzumformungen (Lösen von Ungleichungen):

Ausbildungsziel: Die Nutzung der Zwischenablage -Kopieren und Einfügen-

Webseiten bearbeiten. Seite 10 von 48

1 Potenzen und Polynome

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt 8 1. Semester ARBEITSBLATT 8 RECHNEN MIT POTENZEN. 1) Potenzen mit negativer Basis

7 DOKUMENTEE FORMATIEREN

Gegenüber der direkten Formatierung jedes Wortes, jedes Satzes, Absatzes und jeder Seite hat die Arbeit mit Formatvorlagen mehrere Vorteile:

Java Kurzreferenz Für Fortgeschrittene

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

CASIO ClassPad II von der Sek I bis zum Abitur

Erzeugende Funktionen

Objekte zeichnen, formatieren, anordnen

6 Gleichungen und Gleichungssysteme

Microsoft Excel 2007 Basis. Leseprobe

Mathematische Grundlagen der Ökonomie Übungsblatt 8

Einführung in das Arbeiten mit MS Excel. 1. Bearbeitungs

2.5 Primitive Datentypen

Tabellen in Word. 1. Erstellen von Tabellen. 2. Erscheinungsbild und Eigenschaften 3. Zellinhalte 4. Arbeiten mit Tabellen. Bezug: Office 2010

Microsoft PowerPoint 2013 Layouts

Programmieren I + II Regeln der Code-Formatierung

RÖK Typo3 Dokumentation

3 GRAFIKEN, BILDER, ZEICHNUNGSOBJEKTE

Zahlen und Funktionen

Die Einführung von mehreren "Start Bausteinen", um das Programm zu starten, realisiert leicht die parallele Programmverarbeitung (Parallele Tasks).

SCHULSPEZIFISCHEN ROLLENRECHTE

1 Zahlenmengen und einige mathematische Symbole

Einführung in Mathcad / Zusatz zu Version 14 CAS

Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung.

Ihr PC - Arbeitsplatz

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik

Kurs über Lineare Gleichungssysteme. PD Dr. Karin Halupczok

Computerarithmetik ( )

Vorübung 1 Beschriften Sie die Tabelle wie in der Abbildung dargestellt.

syntax.tex Eine Übersicht

Arabische Ornamente in OpenOffice bearbeiten

3 FORMELN Formeln erzeugen

Wert. { color: blue; }

3. Datentypen, Ausdrücke und Operatoren

MICROSOFT EXCEL XP. Inhaltsverzeichnis

Inhaltsverzeichnis. Inhaltsverzeichnis

Ausbildungsziel: Erstellung eines Briefes mit Hilfe von Vorlagen

Formulare. Datenbankanwendung 113

TI-89-Funktionen TI-89. Funktionen. Johann Berger

ax 2 + bx + c = 0, (4.1)

Erklärung der Gliederungsansicht und die zugehörige Symbolleiste. Änderung der Formatvorlagen für die Überschriften.

Lösen quadratischer Gleichungen

Kapitel 3: Variablen

EDV Grundlagen. Tabellenkalkulation

Programmierkurs: Delphi: Einstieg

Python ist leicht zu erlernen, unterstützt mehrere Programmierparadigmen und ist klar strukturiert.

RÖK Typo3 Dokumentation

Gleichungen und Ungleichungen

GI Vektoren

10:Exkurs MATLAB / Octave

Textverarbeitung: Die elementaren Formatierungen

Grundlagen der Arbeit mit Mathematica

Die Befehle können Sie in der Registerkarte Einfügen in der Gruppe Block aufrufen.

Das Ergebnis ist Verändert man nun einen der Werte in B1 oder B2, wird wegen der Formel der neue Gewinn angezeigt.

Umformung und Vereinfachung mathematischer Ausdrücke

Handbuch zum VivaWeb-Serienbrief-Programm

Kostenmodell. Daniel Graf, Tobias Pröger. 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016)

MBF III 342- Zentrale. Abschlüsse

Symbolleiste Menü Einfügen

Der Serienbrief bzw. Seriendruck

Dokumentation CT TG13 Labview. 1.1 Drehregler: 0 C bis 100 C, Anzeige analog und als Zahlenwert

Mathematik für Naturwissenschaftler I WS 2009/2010

U. Rausch, 2010 Potenzrechnung 1

Basistext Lineare Gleichungssysteme. Eine lineare Gleichung mit einer Unbekannten hat die allgemeine Form! #=%

WiWi SoSe2016 Excel Grundlagen

Lösungsvorschlag zu 1. Übung

Dynamische Systeme und Zeitreihenanalyse // Komplexe Zahlen 3 p.2/29

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

2. Die graphische Benutzeroberfläche von Mathematica

Syntax von Programmiersprachen

De Taschäräschnr Casio (Reihe: 9750, 9850,...)

Transkript:

Anhang A Mathematica In diesem Abschnitt wird das Mathematik Softwaresystem Mathematica vorgest ellt, das als Basis der gesamten Lehrveranstaltung dient. Die folgenden Aspe kte des Systems Mathematica sind dabei von entscheidender Bedeutung: Mathematica als Rechenmaschine, Mathematica als Visualisierungswerkzeug für mathematische Objekte, Mathematica als Programmiersprache und Mathematica als mathematisches Dokumentenverarbeitungssystem. Mathematica besteht aus zwei voneinander unabhängigen, nichts desto Trotz aber eng in Verbindung stehenden Komponenten, dem Kernel und dem Front End. Aufgabe des Kernels ist es, Mathematica Expressions auszuwerten, wobei Mathematica Expressions von einfachen arithmetischen Berechnungen angefangen, über symbolische Umformungen, bis hin zu komplexen Programm systemen reichen können. Das FrontEnd hingegen ist die Benutzerschnittstelle, in der Eingaben an den Mathematica Kernel gegeben werden können und die für Formatierung der Resultate zuständig ist. Das FrontEnd verfügt über ein eigenes Dokumentenformat, das Mathematica Notebook, in dem wir Mathemat ica (Kernel )Input, Mathematica (Kernel )Output, Grafiken, Formeln, Text und Strukturierungselemente miteinander vermischen können. In den folgenden Kapiteln werden wir auf die verschiedenen Aspekte des Systems im Detail eingehen.

Anhang A: Mathematica 2 1 Mathematica als Rechenmaschine 1.1 Einfache arithmetische Ausdrücke Stellen Sie sich den Mathematica Kernel am besten als einen Super Taschen rechner vor! Jede Berechnung, die Sie durchführen wollen, schreiben Sie in einen eigenen Bereich im FrontEnd, wie z.b. 756 49 Am Teschenrechner würden Sie nun auf die = Taste drücken, um dem Rechner den Befehl zu geben, die Eingabe auszurechnen. In Mathematica positionieren Sie den Cursor ans Ende der Eingabe (dort steht der Cursor sowieso nach dem Eintippen!) und drücken oder. Dies ist das Kom mando, das dem FrontEnd mitteilt, dass der Input an den Kernel geschickt werden soll. Der Kernel führt nun die Berechnung durch und sendet das Resul tat zurück an das FrontEnd, welches das Ergebnis unmittelbar nach der Eing abezeile in einen eigenen Bereich schreibt. 756 49 805 Die jeweiligen Bereiche eines Notebooks werden Zellen genannt. Zellen für Kernel Input heißen Input Zellen, jene mit Output demnach Output Zellen, und es gibt noch jede Menge weitere Zelltypen. Das optische Erscheinungsbild der Zellen hängt vom Zellstil ab, mehr darüber in Kapitel 4. Arithmetische Operationen stellen wir durch die gewohnten Operationsze ichen wie +,, * und / dar. 756 49 707 756 49 37044 756 49 108 7 Komisch! Vielleicht hätten Sie eher mit einem Resultat 15.428571428571429 gerechnet. Mathematica kann aber mit Bruchzahlen rechnen, Gleitkom mazahlen werden nur verwendet, wenn schon die Eingabe Gleitkommazahlen beinhaltet.

Anhang A: Mathematica 3 756.0 49 15.4286 Bedenken Sie aber, dass numerische Berechnungen (fast) immer durch Rund ungsfehler verfälscht werden können. Wenn exakte Eingangsdaten zur Verfü gung stehen, sollte man daher bestrebt sein, so lange wie möglich exakt zu rechnen und erst auf numerische Auswertung zurückgreifen, wenn exaktes Rechnen nicht mehr sinnvoll möglich oder nicht mehr nötig ist. Im Laufe von längeren Berechnungen kann exaktes Rechnen mit Brüchen nämlich sehr schnell zum Anwachsen der Ausdrücke führen, wie man an folgendem (viel zu einfachen) Beispiel sehen kann. 30 35 313845 3847 313845 3848 86835654727474858206035539897073187139957574952912043697001859456544 4946510340790482454914004142026171242255095311091424176315073591732 2251442617904578611565964315925493830288915469233803944950373290587 2677023118218678581532149614738155439460259478205803669133244595443 2736428041942417621612548828125 1088661355697611427885035374126402122275919009642918871077130244858 33688882538883351090322461987136357572400055411946462824269588275 65372446426336258623090909988246669939342141835754980170934290496 6228100163785155856676224111285895168 Das Rechnen mit derartigen Zahlen ist sehr aufwendig, die Gesamtrechen zeiten können sich in diesen Fällen dramatisch verlängern. Will ich außerdem eine Vorstellung davon bekommen, wie groß die Zahl 313845 3847 30 313845 3848 35 ungefähr ist, so hilft das vorangegangene Resultat nicht wirklich, das numerisch ausgewertete Resultat 30 313845.0 3847 313845 3848 7.97637 10 66 35 hingegen lässt schon mehr Aufschlüsse zu. Lesen Sie mehr dazu in Kapitel 1.4. Weitere mathematisch Funktionen, die in Mathematica zur Verfügung stehen, sind etwa 23 23

Anhang A: Mathematica 4 24 2 6 12 2 144 Wie gibt man Berechnungen wie Wurzel ( ), Potenzieren, Brüche oder andere mathematische Sonderzeichen im Mathematica FrontEnd eigentlich ein? Im Wesentlichen gibt es 3 Arten: Eingabe Paletten: siehe Menü File Palettes. Tastatur Sequenzen mit : hauptsächlich für Operationen: z.b. 2 für Wurzel oder / für Bruch. Tastatur Sequenzen mit : hauptsächlich für Sonderzeichen: z.b. p für Π, int für. Lesen Sie mehr dazu im Kapitel 4.1. 1.2 Die Mathematica Kommandosprache Bisher haben wir immer Berechnungen durchgeführt, indem wir eine Rechenop eration in gewohnter Weise in eine Input Zelle geschrieben haben. Das war in den bisherigen Beispielen auch relativ einfach möglich, da es für Addition, Subtraktion, Multiplikation, Potenzieren und Wurzelziehen beinahe eindeutige Notation gibt. Es können aber nicht alle Schreibweisen, die in unterschiedlicher Mathematikliteratur verwendet werden, von Mathematica unterstützt werden. Die allgemeine Form eines Kommandos ist in Mathematica Kommando Name param 1, param 2,, param n wobei Kommando Name der Name eines Mathematica Befehls ist, der auf die Parameter (Argumente) param 1 bis param n angewendet wird. Dies ist die allgemeine Form der Mathematica Expression, jeder Mathematica Befehl hat diese Form. Für manche dieser Befehle existieren alternative Schreibweisen, die denen der klassischen Mathematik nachempfunden sind. So ist etwa 756 49 nur eine alternative Schreibweise (Infix Notation) für den Befehl Plus[756,49], was wiederum soviel heißt wie wende den Befehl Plus auf die Argumente 756 und 49 an. Plus 756, 49 805

Anhang A: Mathematica 5 Times 756, 49 37044 Sqrt 24 2 6 Power 12, 2 144 Log 12 Log 12 Ein wichtiger Hinweis: Mit? bzw.?? können Sie jederzeit Hilfe zu einer bestim mten Funktion bekommen, auch den Help Browser (Menü Help) sollte man nicht außer Acht lassen.? Log Log z gives the natural logarithm of z logarithm to base e. Log b, z gives the logarithm to base b. More Log 12, 2 Log 2 Log 12 Die numerische Auswertung eines Resultats kann ich auch erzwingen, indem ich das Kommando N anwende. N Log 12, 2 0.278943 Log 12, 2 N 0.278943 N Log 12, 2, 30 0.278942945651129843191044081038 Cos Π 1 1.3 Symbolische Berechnungen Bisher haben wir immer numerische Berechnungen durchgeführt. Mathematica kann aber auch mit Symbolen rechnen. 2 a b 5 a 7 b 7 a 8b

Anhang A: Mathematica 6 Der als Operationszeichen für die Multiplikation kann, wie man es aus der Schule kennt, auch weggelassen werden und durch ein Leerzeichen ersetzt werden, im Falle der Multiplikation einer Zahl mit einem Symbol kann selbst das Leerzeichen entfallen. 2 a b 6 a 7 b 8 1 8 a 8b 8 Expand 2 a b 6 a 7 b 8 a b Expand 2 a b 6 a 7 b 8 a b a a b b a b Simplify 2 a b 6 a 7 b 8 a b 1 Vorsicht: die Euler sche Zahl e wird in Mathematica durch "E" oder " " (= ee ) repräsentiert. Log e Log e Log 1 Symbole können Werte mit = zugewiesen bekommen, was ich zum Speich ern von Zwischenresultaten verwenden kann. ex Expand 2 a b 6 a 7 b 8 a b a a b b a b Together ex 1

Anhang A: Mathematica 7 1.4 Numerisches Rechnen Unter Numerischem Rechnen verstehen wir üblicherweise das Rechnen mit reellen Zahlen in einem Computer, genauer gesagt das Rechnen mit jenen Objekten, die wir als Modell der reellen Zahlen in einem Computer ansehen können. Eine kurze Überlegung verdeutlicht, dass die reellen Zahlen nicht als Ganzes in einem Computer dargestellt werden können: Es gibt unendlich viele reelle Zahlen (sogar überabzählbar viele), in einem Computer können wir aber nur endlich viele Zahlen darstellen. Als Computer Modell der reellen Zahlen verwenden wir üblicherweise Gleitkommazahlen (engl. floating point numbers), bei denen wir eine fixe Anzahl von bits zur Beschreibung einer Zahl verwenden, die sich auf ein Vorzeichen Bit, die Mantisse und den Exponent aufteilen. Die mathematischen Grundlagen dazu werden wir im Abschnitt über Gleitkommazahlen genauer beleuchten. Die Anzahl der Stellen in der Mantisse bestimmt die Genauigkeit (engl. precision) der Zahl. Nach jeder Rechenoperation müssen wir durch Rundung wieder eine Gleitkommazahl ermitten, sodass es in (fast) jeder Berechnung zu einem Rundungsfehler kommt. In manchen Fällen sind diese Fehler vernachlässigbar klein, in anderen Fällen kann ein numerisch berechnetes Resultat durch Akku mulation von Rundungsfehlern völlig unbrauchbar werden. Mathematica verwendet ein ausgefeilteres Konzept zur Darstellung von reellen Zahlen, und zwar eine Mischung aus machine precision numbers (Maschinenzahlen): Gleitkommazahlen mit fixer Genauigkeit abhängig von der darunterliegenden Hardware und arbitrary precision numbers: Gleitkommazahlen mit beliebiger Genauigkeit. Das Prinzip dabei ist das Folgende: die globale Variable $MachinePrecision 16 gibt an, wieviele Dezimalstellen an Genauigkeit für Maschinenzahlen zur Verfügung stehen. Wird nun eine Zahl eingegeben, die weniger Stellen als 16 benötigt, so wird diese als Maschinenzahl abgespeichert, andernfalls als arbitrary precision number. Bei allenarithmetischen Berechnungen wird der Rundungsfehler beachtet, und Mathematica hat stets Kontrolle darüber, wieviele Stellen der Zahl als korrekt betrachtet werden können. Precision 756 49

Anhang A: Mathematica 8 Precision 756. 49 16 Der zweite Parameter im Kommando N verleitet natürlich dazu, mehr Stellen zu ermitteln als eigentlich gesichert zur Verfügung stehen. N 756. 49, 30 15.4286 Da aber in 756. 49 nur 16 Stellen Genauigkeit vorhanden sind, können nicht 30 Stellen ermittelt werden. Dass von den 16 Stellen aber nur 6 Stellen angezeigt werden, ist rein eine Sache der Formatierung NumberForm N 756. 49, 30, 10 15.42857143 Von exakten Zahlen, also Zahlen mit unendlich großer Genauigkeit, kann man natürlich beliebig viele Stellen berechnen lassen. N 756 49, 30 15.4285714285714285714285714286 N 756 49, 300 15.428571428571428571428571428571428571428571428571428571428571428571 4285714285714285714285714285714285714285714285714285714285714285714 2857142857142857142857142857142857142857142857142857142857142857142 8571428571428571428571428571428571428571428571428571428571428571428 5714285714285714285714285714286 N Π, 300 3.1415926535897932384626433832795028841971693993751058209749445923078 1640628620899862803482534211706798214808651328230664709384460955058 2231725359408128481117450284102701938521105559644622948954930381964 4288109756659334461284756482337867831652712019091456485669234603486 1045432664821339360726024914127 Bei numerischen Berechnungen ist immer zu beachten, dass es durch Auslös chung zum Verlust von Genauigkeit kommen kann. Precision 1.11111111111111111111 20 Precision 1.11111111111111111000 20 Precision 1.11111111111111111111 1.11111111111111111000 2

Anhang A: Mathematica 9 1.5 Listen Table ist der grundlegende Befehl zum Erstellen von Datenlisten (siehe Kapitel 1.8 und im Mathematica Buch). mylist Table 3 x 2 2 x 5, x, 10, 10 275, 220, 171, 128, 91, 60, 35, 16, 3, 4, 5, 0, 11, 28, 51, 80, 115, 156, 203, 256, 315 Table 3 x 2 2 x 5, x, 10, 10, 0.5 275, 246.75, 220., 194.75, 171., 148.75, 128., 108.75, 91., 74.75, 60., 46.75, 35., 24.75, 16., 8.75, 3., 1.25, 4., 5.25, 5., 3.25, 0., 4.75, 11., 18.75, 28., 38.75, 51., 64.75, 80., 96.75, 115., 134.75, 156., 178.75, 203., 228.75, 256., 284.75, 315. Table 3 x 2 1 2 x 5, x, 10, 10, 2 987 275, 4, 220, 779 4, 171, 595 4, 128, 435 4, 91, 299 4, 60, 187 4, 35, 99 4, 16, 35 4, 3, 5 4, 4, 21 4, 5, 13 4, 0, 19 4, 11, 75 4, 28, 155 4, 259 51, 4, 80, 387 4, 115, 539 4, 156, 715 4, 203, 915 4, 256, 1139, 315 4 Listen können auf verschiedenste Art und Weise bearbeitet werden: Zugriff auf einzelne Elemente mylist 1 275 Zugriff auf mehrere Elemente gleichzeitig mylist 1, 5 275, 91 Take mylist, 5 275, 220, 171, 128, 91 Take mylist, 5 115, 156, 203, 256, 315 Take mylist, 3, 6 171, 128, 91, 60 Löschen von (mehreren) Elementen Drop mylist, 10 5, 0, 11, 28, 51, 80, 115, 156, 203, 256, 315

Anhang A: Mathematica 10 Drop mylist, 10 275, 220, 171, 128, 91, 60, 35, 16, 3, 4, 5 Veränderung der Struktur, Reverse mylist 315, 256, 203, 156, 115, 80, 51, 28, 11, 0, 5, 4, 3, 16, 35, 60, 91, 128, 171, 220, 275 Auswahl von Elementen, die eine bestimmte Bedingung erfüllen Select mylist, Negative 4, 5 Select mylist, Function x, x 2 100 3, 4, 5, 0 Auswahl von Elementen, die eine bestimmte syntaktische Gestalt haben 7 Cases 1, 3, a, b, 0.7,, _Integer 10 1, 3 7 Cases 1, 3, a, b, 0.7,, _Symbol 10 a, b 7 Cases 1, 3, a, b, 0.7,, _Real 10 0.7 7 Cases 1, 3, a, b, 0.7,, _Rational 10 7 10 Modifikation der Listenelemente Map Function z, z, mylist 5 11, 2 55, 3 19, 8 2, 91, 2 15, 35, 4, 3, 2, 5, 0, 11, 2 7, 51, 4 5, 115, 2 39, 203, 16, 3 35 Map # &, mylist 5 11, 2 55, 3 19, 8 2, 91, 2 15, 35, 4, 3, 2, 5, 0, 11, 2 7, 51, 4 5, 115, 2 39, 203, 16, 3 35

Anhang A: Mathematica 11 2 Mathematica als Visualisierungswerkzeug Mathematica bietet verschiedenste Möglichkeiten zum Erstellen von Grafiken. 2.1 Funktionsgrafen ListPlot Table 3 x 2 2 x 5, x, 10, 10, 0.5, PlotStyle PointSize 0.02 ; 300 250 200 150 100 50 10 20 30 40 ListPlot Table 3 x 2 2 x 5, x, 10, 10, 0.5, PlotJoined True ; 300 250 200 150 100 50 10 20 30 40 Zum Erstellen von Funktionsgrafiken für Funktionen in einer Variablen ist aber eigentlich die Funktion Plot gedacht.

Anhang A: Mathematica 12 Plot 3 x 2 2 x 5, x, 10, 10 ; 300 250 200 150 100 50-10 -5 5 10 Für 3D Grafiken gibt es die Funktion Plot3D, die eine Funktion von 2 Variablen grafisch darstellt. plot3d Plot3D Sin x Cos y Exp y, x, 0, 2Π, y, 0, 2, Boxed False ; 2 0-2 0 2 4 0.5 1 2 1.5 6 0 In den neuesten Versionen von Mathematica hat man auch die Möglichkeit, Grafiken interaktiv zu bearbeiten, indem man das Zusatzpaket RealTime3D lädt. RealTime3D Plot3D Sin x Cos y Exp y, x, 0, 2Π, y, 0, 2, Boxed False ; Default3D

Anhang A: Mathematica 13 2.2 Allgemeine Struktur von Grafiken Mathematica bietet eine Datenstruktur für grafische Objekte, die mit dem Befehl Show angezeigt werden können. In dieser Datenstruktur können grafische Primitivobjekte (Punkte, Linien, Kreise, Polygone, etc.) mit Visualisierungsan weisungen (Frabe, Linienstärke, Punktgröße, etc.) hierarchisch angeordnet werden. (Hinweis zur Auswahl von Farben: Menü Input Color Selector.) primgraf Graphics AbsoluteThickness 3, RGBColor 0.431373, 0.329412, 0.784314, Circle 0, 0, 1, Thickness 0.05, RGBColor 0.815686, 0.0627451, 0.784314, Line 0, 1, 0, 0, 1, 0, PointSize 0.04, Point 0.5, 0.5, AspectRatio Automatic Show; 2.3 Überlagern von Grafiken Überlagern von Grafiken kann erreicht werden, indem mehrere Grafiken simultan an Show gegeben werden.

Anhang A: Mathematica 14 Show primgraf, plot3d ; Mathematica bestimmt in den meisten Fällen selbst, welcher Ausschnitt einer Grafik angezeigt wird. Durch die Option PlotRange All kann auf jeden Fall erzwungen werden, dass alle Bestandteile angezeigt werden. Show primgraf, plot3d, PlotRange All ; Etwas mehr Kontrolle über die Art der Überlagerung gewinnt man, wenn man die einzelnen Grafiken in Ausschnitte plaziert, die dann innerhalb der Grafik positioniert werden können.

Anhang A: Mathematica 15 Show Graphics Rectangle 0, 0, 1, 1, plot3d, Rectangle 0.5, 0.5, 1, 1, primgraf ; 2 0-2 0 2 4 6 0 1 0.5 2 1.5 Auf diese Art könnte man dann selbstverständlich Grafiken neben oder unterein ander tabellenartig arrangieren. Das wird aber durch einen eigen Befehl erleichtert. GraphicsArray Partition Join Table primgraf, 4, Table plot3d, 5, 3 Show; -2 02 0 0.5 1 1.5 2-2 02 0 2 4 6 0 0.5 1 1.5 2 0 2 4 6-2 02 0 0.5 1 1.5 2 0-2 02 2 4 6 0 0.5 1 1.5 2 0-2 02 2 4 6 0 0.5 1 1.5 2 0 2 4 6

Anhang A: Mathematica 16 2.4 Kombination von Funktionsplots mit allgemeinen Grafikobjekten Der eingangs beschriebene Plot Befehl ermöglicht die Kombination mit allge meinen Grafikobjekten über die Optionen Prolog und Epilog. Bevor der Funk tionsplot gezeichnet wird, werden die Grafikelementen (wie in Graphics) aus der List in Prolog gezeichnet. Diese werden daher unter dem Funktionsplot erscheinen! Epilog enthält Elemente, die nach dem Funktionsplot dargestellt werden und demnach über dem Funktionsplot zu liegen kommen. Plot3D Sin x Cos y Exp y, x, 0, 2Π, y, 0, 2, Boxed False, Prolog RGBColor 0.807843, 0.188235, 0.121569, Circle 0.2, 0.4, 0.3, Epilog RGBColor 0.807843, 1, 0.121569, Text StyleForm "The Wave", FontFamily "Times", FontWeight "Bold", FontSize 22, 0.75, 0.55 ; 2 0-2 0 2 4 The Wave 2 1.5 1 0.5 6 0 3 Mathematica als Programmiersprache Aus der Schule kennen wir (hoffentlich) die Aufgabenstellung einer Kurvendis kussion. Gegeben ist eine Funktion f, gesucht ist eine Funktionsgrafik, in der alle besonderen Punkte (Nullstellen, Hoch und Tiefpunkte, Wendepunkte) eingezeichnet sind. Betrachten wir beispielsweise einmal die Funktion f x_ : 25 2 10 x 11 x2 3 x 3 2

Anhang A: Mathematica 17 Die Nullstellen erhält man, indem man die Gleichung f x 0 nach x auflöst. Achtung: eine Gleichung wird mit == oder " " ( == ) geschrieben, das einfache = steht für die Wertzuweisung. Zeros Solve f x 0, x x 5 3, x 1, x 5 2 Die Extremstellen erhalte ich, indem ich die Gleichung f x 0 nach x auflöse. Extremes Solve f x 0, x x 1 18 11 481, x 1 18 11 481 Die Wendestellen erhalte ich, indem ich die Gleichung f x 0 nach x auflöse. Inflections Solve f x 0, x x 11 18 Wir müssen nun nur noch aus den berechneten Werten Grafikobjekte erzeu gen, die wir dann entsprechend mit dem Funktionsplot kombinieren können. Das machen wir am einfachsten so: x, f x sind immer die Koordinaten eines Punktes am Funktionsgrafen. Durch Einsetzen von konkreten Werten für x bekommen wir konkrete Punkte am Grafen. Einsetzen von Werten geschieht in Mathematica durch den Befehl "/.", also z.b. x, f x. x 0 0, 25 2 x, f x. x 0, x 5 0, 25 2, 5, 200 Das heißt also, dass die Ausdrücke, die wir als Resultate von beim Lösen der Gleichungen zurückbekommen haben, genau die gewünschte Struktur auf weisen. Die passenden Grafikobjekte sind Ausdrücke der Form Point[{x,f[x]}], in die die passenden Werte für x einzusetzen sind. Point x, f x. Zeros Point 5 5, 0, Point 1, 0, Point 3 2, 0 Farben können auch per Namen ausgewählt werden, wenn wir ein geeignetes Zusatzpaket laden. Wir nehmen TurquoiseBlue für Nullstellen, DeepCobaltVi olet für Extermwerte und DarkOrange für Wendestellen.

Anhang A: Mathematica 18 Graphics Colors Names "Graphics Colors " AliceBlue, AlizarinCrimson, AllColors, Antique, Apricot, Aquamarine, AquamarineMedium, AureolineYellow, Azure, Banana, Beige, Bisque, Black, BlanchedAlmond, Blue, BlueLight, BlueMedium, BlueViolet, Brick, Brown, BrownMadder, BrownOchre, Burlywood, BurntSienna, BurntUmber, Cadet, CadetBlue, CadmiumLemon, CadmiumOrange, CadmiumRedDeep, CadmiumRedLight, CadmiumYellow, CadmiumYellowLight, Carrot, Cerulean, Chartreuse, Chocolate, ChromeOxideGreen, CinnabarGreen, CMYColor, Cobalt, CobaltGreen, CobaltVioletDeep, ColdGray, Coral, CoralLight, CornflowerBlue, Cornsilk, Cyan, CyanWhite, DarkGoldenrod, DarkGreen, DarkKhaki, DarkOliveGreen, DarkOrange, DarkOrchid, DarkSeaGreen, DarkSlateBlue, DarkSlateGray, DarkTurquoise, DarkViolet, DeepCadmiumRed, DeepCobaltViolet, DeepMadderLake, DeepNaplesYellow, DeepOchre, DeepPink, DeepSkyBlue, DimGray, DodgerBlue, Eggshell, EmeraldGreen, EnglishRed, Firebrick, Floral, ForestGreen, Gainsboro, GeraniumLake, Ghost, Gold, Goldenrod, GoldenrodDark, GoldenrodLight, GoldenrodPale, GoldOchre, Gray, Green, GreenDark, GreenishUmber, GreenPale, GreenYellow, HLSColor, Honeydew, HotPink, HSBColor, IndianRed, Indigo, Ivory, IvoryBlack, Khaki, KhakiDark, LampBlack, Lavender, LavenderBlush, LawnGreen, LemonChiffon, LightBeige, LightBlue, LightCadmiumRed, LightCadmiumYellow, LightCoral, LightGoldenrod, LightGray, LightPink, LightSalmon, LightSeaGreen, LightSkyBlue, LightSlateBlue, LightSlateGray, LightSteelBlue, LightViridian, LightYellow, LimeGreen, Linen, MadderLakeDeep, Magenta, ManganeseBlue, Maroon, MarsOrange, MarsYellow, MediumAquamarine, MediumBlue, MediumOrchid, MediumPurple, MediumSeaGreen, MediumSlateBlue, MediumSpringGreen, MediumTurquoise, MediumVioletRed, Melon, MidnightBlue, Mint, MintCream, MistyRose, Moccasin, NaplesYellowDeep, Navajo, Navy, NavyBlue, Oak, OldLace, Olive, OliveDrab, OliveGreenDark, Orange, OrangeRed, Orchid, OrchidDark, OrchidMedium, PaleGoldenrod, PaleGreen, PaleTurquoise, PaleVioletRed, PapayaWhip, Peach, PeachPuff, Peacock, PermanentGreen, PermanentRedViolet, Peru, Pink, PinkLight, Plum, PowderBlue, PrussianBlue, Purple, PurpleMedium, Raspberry, RawSienna, RawUmber, Red, RoseMadder, RosyBrown, RoyalBlue, SaddleBrown, Salmon, SandyBrown, SapGreen, SeaGreen, SeaGreenDark, SeaGreenLight, SeaGreenMedium, Seashell, Sepia, Sienna, SkyBlue, SkyBlueDeep, SkyBlueLight, SlateBlue, SlateBlueDark, SlateBlueLight, SlateBlueMedium, SlateGray, SlateGrayDark, SlateGrayLight, Smoke, Snow, SpringGreen, SpringGreenMedium, SteelBlue, SteelBlueLight, TerreVerte, Thistle, Titanium, Tomato, Turquoise, TurquoiseBlue, TurquoiseDark, TurquoiseMedium, TurquoisePale, Ultramarine, UltramarineViolet, VanDykeBrown, VenetianRed, Violet, VioletDark, VioletRed, VioletRedMedium, VioletRedPale, ViridianLight, WarmGray, Wheat, White, Yellow, YellowBrown, YellowGreen, YellowLight, YellowOchre, YIQColor, Zinc

Anhang A: Mathematica 19 Plot f x, x, 2.5, 3, Epilog PointSize 0.02, Prepend Point x, f x. Zeros, TurquoiseBlue, Prepend Point x, f x. Extremes, DeepCobaltViolet, Prepend Point x, f x. Inflections, DarkOrange ; 40 30 20 10-2 -1 1 2 3-10 Wollen wir nun eine andere Funktion behandeln, so könnten wir f neu definieren und das Ganze wieder von vorne beginnen. Die einzelnen Befehle bedürfen keinerlei Änderungen mehr, sie können ohne zu überlegen wieder ausgeführt werden. Wir können es sogar dem Computer überlassen, die einzelnen Schritte wieder auszuführen, wenn wir dem Computer ein Programm vorgeben, nach dem er die einzelnen Schritte ausführen soll! Curve f_ : Module x, Zeros, Extremes, Inflections, all, minx, maxx, Zeros Solve f x 0, x ; Extremes Solve f x 0, x ; Inflections Solve f x 0, x ; all x. Join Zeros, Extremes, Inflections N Sort; minx, maxx all 1, 1 ; Plot f x, x, minx maxx minx 10, maxx maxx minx 10, PlotRange All, Epilog PointSize 0.02, Prepend Point x, f x. Zeros, TurquoiseBlue, Prepend Point x, f x. Extremes, DeepCobaltViolet, Prepend Point x, f x. Inflections, DarkOrange General::spell1 : Possible spelling error: new symbol name "all" is similar to existing symbol "All".

Anhang A: Mathematica 20 Curve f ; 15 10 5-2 -1 1 2 3-5 -10-15 g x_ : x 2 3 x 1 Curve g ; Point::argx : Point called with 2 arguments; 1 argument is expected. 1-3 -2-1 -1-2 -3 Perfekt is diese Programm noch lange nicht. Zumindestens eines MUSS aus diesem Beispiel gelernt werden: Beim Übergang von einem konkreten Beispiel zu einem allgemein einsetzbaren Programm muss sehr vorsichtig umgegange werden! Anweisungen, die im speziellen Beispiel funktioniert haben, können bei geändertem Input zu Fehlern führen. In obigem Beispiel passierte dies, weil die Kurve keinen Wendepunkt besitzt, daher die Gleichung keine Lösung besitzt, und daher ein inkorrektes Grafikelement erzeugt wurde. Es ist daher von äußerster Wichtigkeit, sich bei jeder Programmzeile zu überlegen, ob deren Ausführung für jeden denkbaren erlaubten Input fehlerlos möglich ist!

Anhang A: Mathematica 21 Fehler treten in obigem Programm auf, wenn Funktionen weniger als 2 Nullstellen, Extremwerte, oder Wendestellen besitzen (Berechnung des zu zeichnenden Bereichs) Curve Function x, 1 Plot::plln : Limiting value x$26 in x$26, minx$26 maxx$26 minx$26, 10 maxx$26 maxx$26 minx$26 is not a machine size real number. 10 Plot Function x, 1 x$26, x$26, minx$26 maxx$26 minx$26, maxx$26 maxx$26 minx$26, 10 10 PlotRange All, Epilog PointSize 0.02, Prepend Point x$26, Function x, 1 x$26. Zeros$26, TurquoiseBlue, Prepend Point x$26, Function x, 1 x$26. Extremes$26, DeepCobaltViolet, Prepend Point x$26, Function x, 1 x$26. Inflections$26, DarkOrange komplexe Zahlen als Lösungen auftreten (Berechnung des zu zeich nenden Bereichs) Curve Function x, x 3 1 ; Plot::plln : Limiting value 0.65 0.952628 in x$27, minx$27 maxx$27 minx$27, 10 maxx$27 maxx$27 minx$27 is not a machine size real number. 10 an einer Stelle die 2. und die 3. Ableitung 0 sind (Extremwert wird irrtüm lich als Wendestelle gekennzeichnet) Curve Function x, x 4 1 ; Graphics::gptn : Coordinate in, 0 is not a floating point number. Graphics::gptn : Coordinate in, 0 is not a floating point number. 1 0.5-1 -0.5 0.5 1-0.5-1

Anhang A: Mathematica 22 Die allgemeine Struktur eines Mathematica Programmes ist wobei: program name parameter pattern 1,, parameter pattern n : program parameter pattern i bezeichnet einen Pattern für einen Programm Parame ter. Patterns sind sehr praktische Elemente der Mathematica Programmier sprache, mit deren Hilfe spezifiziert werden kann, für welche Parameterw erte das Programm aufrufbar sein soll. Will man jeden Mathematica Ausdruck als Parameter zulassen, dann schreibt man _, will man den Ausdruck im Programm auch unter einem Namen ansprechen, was normalerweise der Fall ist, so stellt man den Namen dem _ davor, z.b. x_, f_, etc. program stellt das Programm dar, wobei ein Programm aus einer oder mehrerer Anweisungen besteht, die nacheinander ausgeführt werden sollen. Die formalen Programmparameter werden im Programm ohne _ geschrieben. Besteht ein Programm aus mehreren Anweisungen, so werden diese durch ; voneinander getrennt. Die letzte Anweisung muss nicht unbedingt einen ; als Abschluss haben. Ein abschließender ; hat den Effekt, die Ausgabe des Resultats zu unterdrücken. Will man lokale Variable im Programm verwenden, so ist Module oder Block (manchmal auch With) ein passendes Konstrukt. Jeder einzelne Befehl in einem Programm kann selbstverständlich wieder ein selbstdefiniertes Programm sein! Selbstdefinierte Programme wreden genauso aufgerufen wie einge baute Mathematica Befehle. Zusätzlich zu den schon bekannten Mathematica Befehlen gibt es noch einige spezielle Anweisungen, die in Programmen von Interesse sein können, wie etwa Schleifen (For, Do, While), Verzweigungen (If, Switch, Which), etc. Das nachfolgende Programm ist eine verbesserte Version des obigen Pro grammes, das in vielen Beispielen das gewünschte Resultat liefert. (Perfekt ist auch dieses Programm nicht )

Anhang A: Mathematica 23 Curve f_ : Module x, Zeros, Extremes, Inflections, all, minx, maxx, Zeros SelectRealZeros Solve f x 0, x ; Extremes SelectRealZerosOf Solve f x 0, x, f x ; Inflections SelectRealZerosOf Solve f x 0, x, f x ; With listall Union Zeros, Extremes, Inflections, Switch Length listall, 0, minx, maxx 1, 1, 1, minx, maxx Join x. listall 1, x. listall 1 N, _, minx, maxx Part x. listall N Sort, 1, 1 ; Plot f x, x, minx maxx minx 10, maxx maxx minx 10, PlotRange All, Epilog PointSize 0.02, If Length Zeros 0, Prepend Point x, f x. Zeros, TurquoiseBlue,, If Length Extremes 0, Prepend Point x, f x. Extremes, DeepCobaltViolet,, If Length Inflections 0, Prepend Point x, f x. Inflections, DarkOrange, SelectRealZeros l_ : Select l, FreeQ #, Complex & SelectRealZerosOf l_, f_ : Select SelectRealZeros l, f. # 0& Curve g ; 1-3 -2-1 -1-2 h x_ : x 2 3 x 3-3

Anhang A: Mathematica 24 Curve h ; 2.2 2 1.8 1.6 1.4 1.2-2.5-1.5-1 -0.5 0.8 Curve Function x, x 3 ; 1.5 1 0.5-1 -0.5 0.5 1-0.5-1 -1.5

Anhang A: Mathematica 25 Curve Function x, Sin x 1 2 ; Solve::ifun : Inverse functions are being used by Solve, so some solutions may not be found. Solve::ifun : Inverse functions are being used by Solve, so some solutions may not be found. Solve::ifun : Inverse functions are being used by Solve, so some solutions may not be found. General::stop : Further output of Solve::ifun will be suppressed during this calculation. 1.5 1 0.5-1.5-1 -0.5 0.5 1 1.5-0.5 4 Mathematica als Dokumentenverarbeitungssystem Das Mathematica FrontEnd kann auch als Dokumentenverarbeitungssystem gesehen werden. Ein Mathematica Notebook setzt sich aus Zellen zusammen, die durch verschiedene Formatierungsmöglichkeiten in ihrem optischen Erschei nungsbild verändert werden können. Die Zellstruktur eines Notebooks wird durch die Zellklammern am rechten Bildschirmrand veranschaulicht, im Aus druck auf Papier werden diese Klammern nicht dargestellt. Jede Zelle hat einen Stil, der durch das zugrundeliegende Stylesheet definiert wird. Jeder Benutzer kann eigene Stylesheets entwerfen und so das optische Erscheinungsbild der Dokumente gestalten, im Stylesheet wird überdies festgehalten, welche Stile überhaupt zur Verfügung stehen. Darüberhinaus stehen über das Stylesheet noch sogenannte Environments zur Verfügung, die das Erscheinungsbild beeinflussen. Environments sind dazu geeignet, verschiedene Formatierungen für z.b. Bildschirm, Präsentation und Ausdruck zu definieren. Der große Vorteil von Stylesheets liegt in der Einheitlichkeit der For matierung. Zellen mit gleichem Stil erscheinen einheitlich formatiert, ändert sich der Formatierungswunsch will man etwa Sektionsüberschriften nachträglich in einer anderen Schriftart, so genügt eine Änderung im Stylesheet. Abwe ichend vom Stylesheet können Formatierungen auch auf einzelne Zellen angewendet werden, indem die Zelle markiert wird und im Format Menü die gewünschte Formatierung eingestellt wird. Alle Formatierungen schlagen sich

Anhang A: Mathematica 26 in Zelloptionen nieder, die alternativ auch über dne Option Inspector eingestellt werden können. 4.1 Mathematische Formeln Mathematische Formeln treten zumeist in einer der 3 folgenden Varianten auf: Inline Formula Kurze Formeln werden im laufenden Text geschrieben. Um die Formel vom umgebenden Text abzuheben, werden einzelne Symbole meist kursiv geschrie ben, Namen wie log, sin, cos, etc. jedoch nicht kursiv. Das Schreiben von schönen Formeln ist eine hohe Kunst, vieles dabei ist natürlich Geschmacks sache, aber es gibt einen gewissen Standard, der weltweit beim Schreiben von Formeln Anwendung findet. Formatierungstipp: Mathematica bietet die Möglichkeit, in Textzellen mathema tische Formeln einzubetten, sogenannte Inline cells. Inline cells werden mit 9 eröffnet und mit 0 wieder beendet. Alle Stylesheets beinhalten die Formatierungsdefinitionen für Inline cells, die für die passende Schriftart für einzelne Symbole und ein ansprechendes Spacing (= Abstände zwischen den einzelnen Formelbestandteilen) sorgen. Beispiel: Wenn wir in dem Term x 2 a x jedes Vorkommen von x durch 2 ersetzen, so erhalten wir 4 2a. Displayed Formula Längere oder wichtigere Formeln werden in eine eigene Zeile geschrieben. Abhängig vom persönlichen Geschmack werden diese zentriert oder mit einem fixen Abstand vom linken Rand eingerückt. Unbedingt sollte aber Einheitlichkeit in ein und demselben Dokument herrschen. Alle Stylesheets definieren für diesen Zweck einen Zellstil DisplayFormula. Beispiel: Eine Funktion f heißt differenzierbar an der Stelle a, wenn der Grenzwert lim x a f x f a x a

Anhang A: Mathematica 27 Numbered Formula Längere oder wichtigere Formeln werden in eine eigene Zeile geschrieben und mit einer laufenden Nummer versehen, wenn später auf diese Formel Bezug genommen wird. Die meisten Stylesheets definieren für diesen Zweck einen Zellstil NumberedEquation, die fortlaufende Nummerierung wird durch einen Counter realisiert, dessen Name mit dem Zellstil (also NumberedEquation) übereinstimmt. Beispiel: Eine Funktion f heißt differenzierbar an der Stelle a, wenn der Grenzwert lim x a f x f a x a (1) Ein Bezug zu einer Formel kann durch ein Automatic Numbering Object hergest ellt werden. Jene Zelle, die das Ziel einer solchen Referenz enthält, muss einen Cell Tag zugewiesen bekommen (Menü Find Add/Remove Cell Tags), über das Menü Input Create Automatic Numbering Object kann dann ein Bezug zu jener Zelle hergestellt werden, die genau diesen Cell Tag trägt. In obigem Beispiel trägt die Zelle mit der nummerierten Formel den Cell Tag "Eq:Diff", ein Bezug zu dieser Zelle sieht wie folgt aus: in Formel (1) Der Vorteil dieser Art von Bezügen ist, dass die Nummerierung automatisch am aktuellen Stand gehalten wird. Wird eine neue Formel eingefügt, so werden sowohl die Nummerierung als auch alle Bezüge angepasst. Im Notebook FrontEnd ist der Bezug überdies ein Hyperlink, der durch Anklicken zur Formel springt! 4.2 Hyperlinks Wie schon im vorangegangenen Kapitel bei Bezügen zu nummerierten Formeln angesprochen wurde, besitzt das Mathematica FrontEnd einige Features zum Gestalten von interaktiven Dokumenten. Alleine dadurch, dass Dialoge mit dem Mathematica Kernel (Input Output Grafik) in einem Dokument möglich sind, wird jedes Mathematica Notebook zu einem interaktiven Dokument. Darüberhinaus können im Text Hyperlinks eingebaut werden, deren Ziele Zellen innerhalb des Notebooks, Zellen in anderen Notebooks oder allgemeine Web Adressen sein können. Zum Einfügen eines Hyperlinks den Linktext markieren, ins Menü Input Create Hyperlink gehen und die Zieladresse eingeben. Im Falle einer Notebookzelle ist die Zieladresse in Form eines Cell Tags anzugeben, wird eine Adresse der Form http:// angegeben, so wird diese als Web Adresse interpretiert, und beim Anklicken entsprechend ein Web Browser gestartet. (Das weitere Verhalten ist betriebssystemabhängig.)

Anhang A: Mathematica 28 4.3 Buttons und Palettes Die im vorangegangenen Kapitel beschriebenen Hyperlinks sind spezielle Ausprägungen von Mathematica Buttons. Buttons sind FrontEnd Elemente, die beim Anklicken mit der Maus eine beliebige Aktion ausführen. Palettes (einige sind zu finden im Menü File Palettes) sind Ansammlungen von Buttons, die als Eingabehilfen für Mathematica fungieren. Einfache Buttons können im Menü Input Create Button erstellt werden, wobei die Symbole und in einem Button als Platzhalter ( steht für den im Notebook selektierten Ausdruck, ist ein freier Platzhalter). Die Aktion solcher Buttons hängt vom gewählten Button Style ab, siehe ButtonStyle im Online Help oder Kapitel 2.10.6 im Mathemat ica Buch. Das Interessante daran ist, dass die Aktion, die beim Anklicken ausgeführt wird, neben den vordefinierten Aktionen wie Paste, Evaluate etc. auch ein beliebiges Mathematica Programm sein kann auch ein vom Benutzer definiertes Programm! Die Programmierung von Buttons ist aber ein Kapitel für fortgeschrittene Mathematica Programmierer.