Das Arbeitsblatt besteht i.d.R. aus drei Bereichen (auch Regionen genannt): Eingabebereich, Textbereich und Ausgabebereich. Im Eingabebereich werden die Rechenkommandos in Kommandozeilen erfaßt; in die Textregion können Sie Kommentare eintragen; in der Ausgaberegion erscheint das Ergebnis. Darüber hinaus gibt es auch noch die Graphikregion, in der die von Maple erzeugten Graphiken plaziert werden können.
Man darf sich aber diese Bereiche nicht als fixe Bildschirmregionen vorstellen. Auf die Kommandozeile(n) in der Eingaberegion folgt die korrespondierende Ausgabe (es sei denn, man hat dies unterbunden) in der Ausgaberegion, darauf dann wieder eine Eingabezeile, usw. Dazwischen lassen sich nach Belieben Kommentare (Textbereiche) und Graphiken (Graphikbereiche) einfügen. Alle Bereiche bis auf den Eingabebereich werden bei der Ausführung/Berechnung des Arbeitsblattes von Maple übergangen.
Die Schriftzeichen (Fonts) der Eingaberegion, Textregion und Ausgaberegion lassen sich den Präferenzen des Anwenders gemäß ändern (s.u.).
Bei der MS Windows-Version von Maple V stehen mehrere Tastaturkommandos zur Verfügung, die die Gestaltung des Arbeitsblattes steuern:
Jede Kommandozeile muß entweder mit einem Semikolon (semicolon) oder einem Doppelpunkt (colon) jeweils gefolgt von Return oder Enter abgeschlossen werden. Dabei bewirkt das Semikolon die Berechnung und die Anzeige des Ergebnisses, der Doppelpunkt nur die Berechnung, aber nicht die Anzeige des Resultates. Der Abschnitt 'Ergebnisspeicher' beinhaltet eine kleine Demonstration.
Menü FILE
Mit dem Eintrag NEW kreieren Sie ein neues Arbeitsblatt. In Release 3 können Sie (zumindest unter MS Windows und Linux) während einer Arbeitssitzung nur mit einem Arbeitsblatt arbeiten. Es ist aber möglich, Maple mehrmals zu starten, vorausgesetzt, Ihr Rechner besitzt genügend Arbeitsspeicher (RAM). Die mehrfach laufenden Maple-Programme beeinflussen sich dabei nicht, es kommt nicht zu Überschneidungen oder Kollisionen. Dennoch sollte die höhere Gefahr von Abstürzen bei MS Windows (...) bedacht werden.
OPEN öffnet bzw. lädt ein Arbeitsblatt, welches entweder im MS- oder ASCII-Format vorliegen kann. MS-Dateien beinhalten sowohl die Ein- als auch Maple-Ausgaben, Formatierungen sowie evtl. eingebettete Graphiken, in ASCII-Dateien sind nur die Benutzereingaben gespeichert.
SAVE speichert den aktuellen Inhalt des Arbeitsblattes in eine bereits bestehende Datei; mit SAVE AS speichern Sie ein neues Arbeitsblatt unter einem beliebigen Dateinamen ab. Das Zielverzeichnis können Sie dabei ebenfalls wählen. Anders als bei SAVE erscheint eine Warnmeldung, wenn eine bereits vorhandene Datei überschrieben werden soll. Maple speichert zwar alle Ein- und Ausgaben, Text sowie Graphiken in die MS-Datei, nicht aber die Werte bzw. den Zustand des Arbeitsblattes. Aktivieren Sie vor dem Abspeichern im Menü OPTIONS den Eintrag SAVE KERNEL STATE, so werden diese aber in eine separate Datei mit dem Suffix M geschrieben, welche bei einem späteren Öffnen der entsprechenden MS-Datei automatisch geladen wird. Diese Option bewirkt allerdings einen höheren Platzbedarf auf dem Speichermedium.
Mit SAVE SETTINGS werden gewisse das Arbeitsblatt betreffende Formatierungseinstellungen gespeichert, wie z.B. die Anzeige von Trennlinien, des Prompts oder auch der Statusleiste. Diese Einstellungen gelten dann für alle folgenden Arbeitssitzungen.
PRINT druckt das Arbeitsblatt auf Papier, mit PAGE MARGINS können Sie die Größe der Ränder festlegen.
EXIT schließlich beendet Maple.
Menü EDIT
Zuvor markierte Textpassagen können in die Zwischenablage kopiert (COPY), aus der Zwischenablage in das Arbeitsblatt (oder auch in ganz andere Programme) eingefügt (PASTE) oder gelöscht (DELETE) werden. Mit CUT wird Text ausgeschnitten und in die Zwischenablage kopiert.
Menü FORMAT
Einige der hier vorhandenen Einträge wurden bereits oben besprochen. INSERT PAGE BREAK fügt einen Seitenumbruch in das Arbeitsblatt ein (für einen Druck), durch Markieren der schwarzen Linie, welche den Umbruch symbolisiert, und Betätigen der Entfernen-Taste wird letzterer wieder gelöscht.
INSERT NEW REGION fügt einen neuen Eingabebereich ein, entweder ober- (above) oder unterhalb (below). Maßgeblich ist die Position des Cursors.
Mit REMOVE ALL können Sie entweder Ein- oder Ausgaben, Textregionen oder Graphiken allesamt aus dem Blatt entfernen.
Mit FONTS werden die Schriftsätze für die Ein- und Ausgabe sowie Textpassagen eingestellt. Siehe auch den Abschnitt 'Einstellung der Schriftfonts bei Release 3 für Windows'.
Mit MATH STYLE bestimmen Sie die Größe der Maple-Ausgabe: groß (large), mittel (medium) oder klein (small). 'Character' stellt die Ausgabe auf LineStyle-Notation um (siehe auch Abschnitt: 'interface-Einstelloptionen' in Kapitel 7).
EXECUTE WORKSHEET berechnet automatisch alle Eingaben nacheinander. Dazu muß der Menüeintrag OPTIONS/CONTINUOUS MODE aktiviert sein.
Menü VIEW
TOOL BAR setzt die Ein- oder Ausblendung der Statusleiste fest.
Menü OPTIONS
Die folgenden Menüeinträge klicken Sie einmal mit der Maus an, um sie zu aktivieren. Vor den Optionen erscheinen dann Häkchen. Klicken Sie noch einmal auf die aktivierten Einstellungen, so werden sie deaktiviert.
CONFIRMATION CHECKS bittet Sie vor Ausführung von FORMAT/REMOVE ALL um Bestätigung der Löschung des gewählten Bereichstyps.
Mit der Aktivierung von FAST GRAPHICS REDRAW werden dreidimensionale Graphiken im Speicher gehalten, um die erneute Anzeige zu beschleunigen. Dieses führt zu einer erhöhten Speicherbelastung.
REPLACE MODE legt fest, ob bereits vorhandene Maple-Ausgaben ersetzt werden. INSERT MODE fügt eine neue Eingaberegion hinter die aktuelle Ausgabe ein.
Menü HELP
Mit BROWSER rufen Sie die nach Themen gegliederte Online-Hilfe auf. KEYWORD SEARCH sucht nach dem Vorkommen von Ihnen eingegebener Begriffe und listet die sie enthaltenden Hilfeseiten auf. INTERFACE HELP zeigt Hilfeseiten zu der Benutzeroberfläche an.
Die Iconleiste unterhalb der Menüs stellt Ihnen die wichtigsten Bearbeitungsfunktionen zur Verfügung. Sie brauchen nur das entsprechende Symbol einmal anzuklicken. Die Funktionen sind im folgenden Schaubild erklärt.
Die Grundrechenarten Addition (+), Subtraktion (-), Multiplikation (*), Division (/) sowie Potenzierung (^):
> 4+6; 10 > 4-10; -6 > 8*9; 72 > 2.1/6; .3500000001 > 2^3; 8Das Hütchen (Caret) ^ erzeugen Sie auf einem PC, indem Sie die ^-Taste (links neben der Taste '1') betätigen, sie danach loslassen und dann eine weitere Taste (hier 3) drücken; danach erst erfolgt die Anzeige des ^-Symboles.
Weitere einfache Operationen:
> x^a; a x > 3*5-5.5*9+6; -28.5 > sqrt(2); 1/2 2 > 2^(1/3); 1/3 2sqrt ermittelt die Quadratwurzel, alle anderen Wurzeln können entweder in ihrer Potenzschreibweise eingegeben oder durch den Befehl surd berechnet werden.
Die Namen einfacher mathematischer Funktionen sind im Ungefähren gleich mit denen eines normalen wissenschaftlichen Taschenrechners. Argumente (arguments) von Funktionen und Befehlen werden grundsätzlich in runde Klammern gesetzt:
> sin(Pi); 0 > exp(1); eEine Besonderheit besteht bei ganzzahligen Divisionen: Sie erhalten hier keinen Fließkommawert als Ergebnis, sondern einen (unausgewerteten) Bruch (fraction), sprich einen rationalen Ausdruck. Maple verwaltet diesen intern anders als Fließkommaausdrücke mit absoluter Genauigkeit.
> 5/8; 5/8Wünschen Sie aber die Dezimaldarstellung numerischer Werte, so reicht es, hinter einer Zahl im Bruch einen Punkt zu setzen, oder den Bruch dem Befehl evalf zu übergeben.
> 5./8; .6250000000 > evalf(5/8); .6250000000Die Genauigkeit der Fließkommadarstellung (floating point notation), d.h. die Anzahl der Fließkommastellen, läßt sich durch die Systemvariable Digits ändern, der Vorgabewert ist 10. Eine Erhöhung des Wertes führt bei komplexen Berechnungen zu einer längeren Rechenzeit.
> Digits := 20; Digits := 20 > evalf(1/3); .33333333333333333333Unabhängig davon kann die Genauigkeit einer einzelnen Fließkommadarstellung als Option durch evalf(ausdruck, genauigkeit) vorgeben werden:
> evalf(Pi, 50); 3.1415926535897932384626433832795028841971693993751Hier wird die Zahl Pi mit 50 Stellen angezeigt.
> restart; > sin(2): > cos(2); cos(2) > tan(2); tan(2) > """; sin(2)Das zweifache Anführungszeichen bezieht sich auf die Anzeige von tan(2):
> ""; tan(2)Das jetzt folgende einfache Anführungszeichen greift auf das Ergebnis zurück, den die vorherige Zeile geliefert hat:
> "; tan(2)Ein neu berechneter bzw. angezeigter Wert bewirkt immer die Neubelegung des Ergebnisspeichers, daher führt folgende Reihenfolge nicht zum Ziel:
> sqrt(1); 1 > sqrt(2); 1/2 2 > sqrt(3); 1/2 3 > "; 1/2 3 > ""; 1/2 3 > """; 1/2 3
> sin(Pi); 0 > Sin(Pi); Sin(Pi)Obwohl Maple V Sin nicht kennt, erfolgt kein Fehlermeldung.
Eingaben können Sie auch über mehrere Zeilen verteilen (funktioniert nicht in R4):
> 3*9 > ; 27 > 3 > * > 9 > ; 27 > 3* > 9; 27
Die Wertzuweisung (assignment) von Ausdrücken an Variablen erfolgt wie bei den Programmiersprachen der ALGOL-Familie (u.a. MODULA-2 oder PASCAL) mit ':=', also einem Doppelpunkt gefolgt von einem Gleichheitszeichen. Es können hierbei nicht nur Zahlenwerte, Variablen und Terme sondern auch Gleichungen benannt werden. Für die Namen der Ausdrücke gelten folgende Regeln:
Zwischen den einzelnen Operatoren können Sie Leerzeichen einfügen, um Ihre Eingabe übersichtlicher zu gestalten.
Den Wert einer Variablen erfahren Sie durch Eingabe ihres Namens mit abschließendem Semikolon.
Das einfache Gleichheitszeichen '=' dient nur dem Vergleich von Ausdrücken, es kann nicht zur Wertdeklaration herangezogen werden, wie in der Schulmathematik oder beispielsweise BASIC oder FORTRAN üblich.
> u := 50; u := 50 > u; 50 > y := 4*x-3; y := 4 x - 3Der Wert von y (also 4x - 3) wird jetzt automatisch in die Variable y der folgenden Zeile eingesetzt.
> y^2+5*x+3; 2 (4 x - 3) + 5 x + 3Nun folgt eine Zuweisung einer Gleichung an eine Variable; die Gleichung enthält wieder die bereits bestimmte Variable y. Setzen Sie eine Variable in Apostrophe, so wird sie in der betreffenden Zeile unausgewertet angezeigt. Dennoch bleibt im Gegensatz zu der Löschung von Variablen durch var:='var' (s.u.) der Wert von y erhalten, siehe übernächste Zeile.
> gleichung := 'y'*67=x+6; gleichung := 67 y = x + 6 > gleichung; 268 x - 201 = x + 6Erlaubte Variablennamen sind u.a.:
> solve := 9; Error, attempting to assign to `solve` which is protectedDie Fehlermeldung weist darauf hin, daß der Name 'solve' geschützt ist.
Ein unerlaubter Bezeichner:
> 3n := 90; syntax error: 3n:=90; ^Der Versuch der Zuweisung mit '=' scheint zwar zuerst zu funktionieren:
> B9=10; B9 = 10aber eine Wertbelegung erfolgt nicht:
> B9; B9Groß- und Kleinschreibung bei Variablen:
> Variable := 1; Variable := 1 > variable := 2; variable := 2 > variAble := 3; variAble := 3 > Variable; 1 > variable; 2 > variAble; 3Siehe auch assign im Abschnitt 'Gleichungen' in Kapitel 2.
Die Funktionszuweisung unterscheidet sich von der von der Schule gewohnten Art, sie erfolgt mittels der sog. 'Pfeilzuweisung' (arrow notation). Es gelten dieselben Namensregeln wie bei Variablen.
> f := x -> 1/4*x^4-4*x; 4 f := x -> 1/4 x - 4 x > f(7.); 572.25000000000000000Das Pfeilsymbol -> besteht aus dem Minus- und dem Größerzeichen.
Obschon in dieser Abhandlung nicht die Programmierung Maples erläutert werden soll, möchte ich die for-Schleife kurz erklären, mit deren Hilfe eine Wertetabelle erstellt werden kann. Die Zeilen trennen Sie durch die Tasten SHIFT+RETURN voneinander (gleichzeitig drücken), hinter der letzten Zeile aber betätigen Sie nur die RETURN-Taste.
> for xneu from -2 to 2 by 0.5 do > lprint(xneu, evalf(f(xneu))) > od; -2 12. -1.5 7.2656250000000000000 -1.0 4.2500000000000000000 -.5 2.0156250000000000000 0 0 .5 -1.9843750000000000000 1.0 -3.7500000000000000000 1.5 -4.7343750000000000000 2.0 -4.0000000000000000000Die for-Schleife erlaubt die mehrmalige Abarbeitung bestimmter Anweisungen, welche sich im Rumpf zwischen do und od befinden. Dabei steht die Anzahl der Wiederholungen im voraus fest. In diesem Beispiel werden alle Werte von (from) -2 bis (to) +2 durchlaufen, mit einer Schrittweite (by) von 0.25, und der 'Laufvariablen' xneu zugeordnet. Soll die Schrittweite Eins betragen, so kann sie weggelassen werden, der Passus 'by 1' kann also entfallen. lprint bewirkt die Ausgabe der Werte von xneu und f(xneu). (Sie können auch den Befehl print benutzen.) Sollen mehrere Befehle im Rumpf abgearbeitet werden, so müssen sie durch Semikolon voneinander getrennt werden. Hinter do allerdings darf sich kein Semikolon befinden.
Eine Funktionsdefinition wie
> t(x) := x^2; 2 t(x) := xist zwar möglich, doch führt dies nicht weit:
> evalf(t(7)); t(7)Funktionsdefinition mit mehreren Variablen:
> g := (x, y, z) -> sin(x) + cos(y) + tan(z): > evalf(g(5, a, 10)); - .31056344720405179763 + cos(a)Bei zwei oder mehr Argumenten müssen diese hinter dem Zuweisungsoperator := in Klammern gesetzt werden.
Die Namen von Variablen und Funktionen sollten sich nicht gleichen, da es hierbei zu Kollisionen kommt. Im folgenden wird eine Variable r und eine Funktion r(x) definiert, nach der Funktionszuweisung ist der Wert der Variable gelöscht:
> r := 10; r := 10 > r := x -> x^2; 2 r := x -> x > r; r > r(x); 2 xEinmal wird r der Wert 10 und dann eine Funktionsvorschrift x->x^2 zugewiesen.
Alle während der Sitzung (session) gespeicherten Variablen, Funktionen und aufgerufenen Pakete können Sie durch restart wieder löschen (sog. 'Reset'). Manchmal ist aber auch der vollkommene Ausstieg und nachfolgender Neustart von Maple selbst erforderlich.
> i := 10; i := 10 > p := x -> x^2: > i; 10 > p(x); 2 x > restart; > i; i > p(x); p(x)Löschen (unassignment) können Sie einzelne Variablen durch eine Zuweisung der Form
(Hierbei befindet sich die Apostrophtaste ' rechts neben dem 'ä'.)
> z := 10; z := 10 > z; 10 > z := 'z'; z := z > z; zLöschen von Funktionszuweisungen:
> restart; > f := x -> x^2: > f(x); 2 x > f := 'f'; f := f > f(x); f(x)
Maple enthält eine umfangreiche und gut dokumentierte Hilfefunktion zu den einzelnen Kommandos, welche Sie mit ?kommando (ohne abschließendes Semikolon) aufrufen können. ??kommando liefert die Syntax des entsprechenden Kommandos und ???kommando bzw. example(kommando); Beispiele zu diesem:
??solve CALLING SEQUENCE: solve(eqn, var) solve(eqns, vars) PARAMETERS: eqn - an equation or inequality eqns - a set of equations or inequalities var - (optional) a name (unknown to solve for) vars - (optional) a set of names (unknowns to solve for) ???solve EXAMPLES: solve > solve( f=m*a, a ); f/m > solve( {f=m*a}, {a} ); {a = f/m} > eq := x^4-5*x^2+6*x=2; 4 2 eq := x - 5 x + 6 x = 2info(kommando); gibt eine Kurzbeschreibung:
> info(solve); FUNCTION: solve - Solve Equationsrelated(kommando); listet verwandte Befehle auf:
> related(solve); SEE ALSO: dsolve, fsolve, isolve, msolve, rsolve, assign, invfunc, isolate, match, linalg[linsolve], simplex, grobner, solve[] where is one of: floats, functions, identity, ineqs, linear, radical, scalar, series, system
> convert(x^2, binary); Error, (in convert/binary) invalid argument for convertHier sollte das Polynom in die Binärdarstellung umgeformt werden, welches unsinnig ist.
Eine andere Fehlerquelle sind Syntaxfehler:
> 4+*4; syntax error: 4+*4; ^Ein Operator wurde oben zuviel angegeben. Der Pfeil zeigt die Stelle, die den Fehler hervorrief, an.
> 3*4; syntax error: 3*4; ^Hier wurde '3*4' ohne Semikolon oder Doppelpunkt eingegeben, mit Enter zur nächsten Zeile gesprungen, dann der Cursor eine Zeile wieder nach oben bewegt und hinter '3*4' ein Semikolon gesetzt und nachfolgend Enter gedrückt.
Oft können auch Parameter vergessen werden:
> diff(x^2); Error, wrong number (or type) of parameters in function diff > diff(x^2, x); 2 xIn der Mathematik ist ein Ausdruck wie 'mx', welches 'm multipliziert mit der Unbestimmten x' bedeutet, üblich. Dies führt bei Maple allerdings zu einer Fehlermeldung:
> 2x; syntax error: 2x; ^ > 2*x; 2 xEs muß grundsätzlich das Multiplikationszeichen * angegeben werden. Gleichwohl erfolgt die Anzeige ohne das Multiplikationszeichen.
Zu den häufigsten Fehlerquellen gehören falsch gesetzte oder vergessene Klammern.
> limit(1+1/n^n, n=infinity); 1Hier sollte eigentlich der Summenwert von (1+1/n)^n berechnet werden. Da auch bei Maple Punkt- vor Strichrechnung gilt, bezieht sich die Potenz n nur auf den Bruch 1/n (siehe auch den Abschnitt: 'Prioritäten mathematischer Operationen'. Richtig ist folgendes:
> limit((1+1/n)^n, n=infinity); exp(1)Fehlende Klammern werden mit einem Syntaxfehler quittiert:
> sum(1+2/n)^n, n=infinity); syntax error: sum(1+2/n)^n, n=infinity); ^Tippfehler bei Kommandos ergeben keine Fehlermeldung, sondern es wird die Eingabe unberechnet wieder ausgegeben.
> sum((1+2/n)^n, n=infinty); / 2 \infinty |1 + -------| \ infinty/Hier fehlt bei infinity das letzte 'i'.
Auch kann eine Berechnung die Speicherressourcen sehr schnell verbrauchen, dies passiert besonders schnell bei Rekursionen - dieses Problem wird Ihnen allerdings erst bei der Programmierung mit Maple begegnen.
> fib_rec(100); Error, (in fib_rec) STACK OVERFLOW
Da Software von Menschen programmiert wird, haben sich natürlich auch bei Maple V einige Fehler eingeschlichen, welche zu falschen Ergebnissen führen. Im Rahmen dieser Einführung können bei den Befehlen limit für die Grenzwertberechnung, sum für Reihen, int bei der Flächenberechnung und piecewise ab und zu falsche Ergebnisse zurückgeliefert werden. Wenn möglich, überprüfen Sie die Resultate dieser Anweisungen mit anderen Mitteln. Die Fehler erfolgen hierbei nicht zufällig, sondern bei nur ganz wenigen bestimmten mathematischen Problemfällen. Bei allen anderen Befehlen sind mir - was den Rahmen dieses Textes betrifft - keine Unkorrektheiten aufgefallen.