Fachhochschule Regensburg

Werbung
Fachhochschule Regensburg
Studiengang Mathematik
Kurzeinführung in MAPLE
MAPLE ist ein Computeralgebrasystem, d.h. ein Programm das symbolisch rechnen
kann. Daneben gibt es vielfaltige graphische Moglichkeiten zur Visualisierung mathematischer Objekte und Zusammenhange. Diese Kurzeinfuhrung soll Ihnen die ersten Schritte in MAPLE erleichtern. Weiterfuhrende Befehle konnen am besten anhand von Beispielen unter Verwendung der Hilfe-Funktion von Maple gelernt werden. Die Hilfeseite
zu einem bestimmten Befehl erhalt man durch die Eingabe von ?befehl oder durch Setzen des Cursors in das Befehlswort und Drucken der F1-Taste. Eine Internetseite mit gutem Material ist http://SunSite.informatik.rwth-aachen.de/maple/maplev.html.
Diese Seite enthalt auch einen Crashkurs. Beispiel-Worksheets (auch aus dem Maplesoft Application Center) sind unter K:\pl\Maple\ zu nden.
Grundsatzlich muss die Eingabe von Maple mit einem Semikolon oder einem Doppelpunkt abgeschlossen werden. Bei Verwendung des Doppelpunktes wird die Ausgabe
unterdruckt. Fur einen Ruckverweis zu den drei letzten Rechenergebnissen stehen die
Abkurzungen %, %% und %%% zur Verfugung.
Die elementaren Rechen- und Vergleichsoperationen in Maple sind in folgender Tabelle
zusammengestellt.
a+b
a+b
a−b
a-b
a·b
a*b
a
b
a/b
ab
a^b
a<b
a<b
a≤b
a<=b
a=b
a=b
a≥b
a>=b
a>b
a>b
a 6= b
a<>b
Die Vergleichsoperatoren liefern einen Wahrheitswert, der mit dem Befehl evalb();
ausgewertet werden kann. Eine Primfaktorzerlegung einer ganzen Zahl n liefert der
Befehl ifactor(n);. Mit dem Befehl evalf(); kann man einen Ausdruck numerisch
auswerten.
Beispiele: (-17)^3/(5^2+1); 2^(2^10); ifactor(%); evalf(Pi,333)
evalb(4 < 3); evalb(E <> Pi); evalb(E < Pi); aber max(E, Pi);
Die Zuweisung von einem Wert, einem Ausdruck, einer Gleichung, einer Plot-Struktur,
. . . an eine Variable erfolgt mit dem Befehl :=. Dabei steht auf der linken Seite von
:= der Variablenname und auf der rechten Seite der Wert der Variable. F
ur Folgen
von Ausdrucken benotigt man eine leere Variable. Wurde einer Variable var ein Wert
zugewiesen, so kann dieser durch var:=’var’ wieder geloscht werden.
Beispiele: a:=5; ausdruck:=sin(x^2)*sqrt(abs(cos(x)));
gleichung:= a*x^2 + b*x + c = 0; bild:=plot(sin(x),x=0..2*Pi);
Endliche Summen kann man mit dem Befehl sum(); auswerten. Dieser Befehl hat die
"trage\ Variante Sum();, welche die Eingabe im Arbeitsblatt darstellt. Der Laufbereich
des Summationsindex ist vom Typ range und wird in der Form index = unten..oben
angegeben.
Beispiele: Sum(k, k = 1..1000) = sum(k, k = 1..1000);
Sum(k, k = 1..n) = sum(k, k = 1..n);
Sum(x^k, k=0..n) = normal(sum(x^k, k=0..n));
Das Vereinfachen von Ausdrucken erfolgt mit einem der Befehle simplify(); expand();
normal(); oder collect();. Welcher Befehl die gew
unschte Vereinfachung bewirkt
muss im Zweifelsfall ausprobiert werden.
Das Programm versucht, alle auftretenden Zahlen exakt darzustellen. Dies ist bei reellen
Zahlen nicht immer moglich. Eine numerische Naherung des Wertes erhalt man mit dem
Befehl evalf(); Die Anzahl der Ziern wird durch die Systemvariable Digits gesteuert.
Diese hat die Voreinstellung von 10, kann aber durch den Befehl Digits:=n auf den Wert
n geandert werden. Enthalt eine der Zahlen der Eingabe einen Dezimalpunkt, so werden
alle Rechnungen mit Fliekommazahlen durchgefuhrt.
Beispiele: evalf(2^20/3^8);
evalf(2^20/3^8,40);
3*(1/3); 3*(1./3);
Ein sehr haug verwendeter Befehl ist solve(); Damit kann man Gleichungen, Gleichungssysteme (lineare und nichtlineare) und Ungleichungen losen. Wenn Maple keine
Losung ndet kann man die Gleichungen numerisch mit Hilfe von fsolve(); losen.
Beispiele: solve(a*x^2+b*x+c=0,x); solve(x^3+x^2-2*x<0);
solve({x^2+y^2=2, x^2-y^2=1/2}, {x,y});
Bei diesem Beispiel werden die Losungen mit Hilfe von RootOf-Ausdrucken
Um dies zu unterbinden, muss eine Umgebungsvariable gesetzt werden:
angegeben.
_EnvExplicit:=true: solve({x^2+y^2=2, x^2-y^2=1/2}, {x,y});
Grundsatzlich fuhrt Maple nur symbolische Umformungen durch, die fur alle moglichen,
d.h. im allgemeinen fur komplexe, Zahlen gultig sind. So wird der Ausdruck sqrt(x^2);
nicht weiter vereinfacht. Mit dem Befehl assume(); kann man fur die vorkommenden
Variablen
auf bestimmte Wertebereiche einschranken. Fur positive Werte von x gilt
√
2
x = x. Hierzu verwendet man assume(x, positive): sqrt(x^2); Die Tilde in der
Ausgabe x~ weist darauf hin, dass fur x gewisse Annahmen getroen wurden.
Eine Folge von Ausdrucken entsteht dadurch, dass man die einzelnen Ausdrucke durch
Kommata trennt. Auf die einzelnen Folgeglieder kann man dann mittels [] zugreifen,
z.B.
a:=1, 2, 4, 8, 16, 31; a[4];
Gibt es eine Formel fur die einzelnen Ausdrucke, so kann man die Folge mit dem Befehl seq(); erzeugen. ¡Eine
Folge aus Tripeln, bestehend aus einer Nummer k und dem
¢
10
Binomialkoezienten k kann man durch a:=seq([k, binomial(10,k)], k=0..10);
erstellen. Es ist zu beachten, dass das erste Element die Nummer 1 hat. Der Befehl
sum(a[k][2],k=1..11); f
uhrt zu einem Fehler, da die Variable k den Wert 11 hat.
Daher muss man k:=’k’: sum(a[k][2],k=1..11); verwenden. Mochte man eine Vermutung uber die Summe der Binomialkoezienter erhalten, so kann man dies mit Hilfe
von seq(sum(binomial(n,k), k=0..n),n=1..13); n:=’n’: Maple kennt die gesuchte
Beziehung: Sum(binomial(n,k),k=0...n) = sum(binomial(n,k),k=0...n);
Herunterladen