2) Erstes Beispiel eines Maple worksheets. Einige sehr einfache Beispiele zur Demonstration, systematische Erklärungen folgen später. > restart; 2.a) Funktionen zeichnen: > plot(1/(1+x^2),x=-2..2); > > plot(1/(1-x^2),x=-3..3); > > plot(1/(1-x^2),x=-3..3,y=-10..10); > > ?plot > 2.b) Folgengrenzwerte berechnen: > limit((2*n^3+n^2+1)/(17*n^3-4711),n=infinity); > > Limit((2*n^3+n^2+1)/(17*n^3-4711),n=infinity)=limit((2*n^3+n^2+1)/(17*n^3-4711),n=infinity); > > limit((1+1/n)^n, n=infinity); > 2.c) Endliche Summen mit symbolischen Größen berechnen und "Namengebung": > Sum(k,k=1..n)=sum(k,k=1..n); > simplify(%); > factor(%); > Add(k,k=1..n)=add(k,k=1..n); > Add(k,k=1..100)=add(k,k=1..100); > sum(k^2,k=1..n); factor(%); > > test1:=%; > > test1; > 2.d) "Induktionsbeweis": Zu beweisen ist die Formel: > Sum(k^2,k=1..n)=factor(sum(k^2,k=1..n)); Beim Induktionsbeweis wird verifiziert: Die Formel stimmt fuer n=1 (hier trivial). Wenn man von n zu (n+1) uebergeht, erhoehen sich die Werte auf beiden Seiten um (n+1). Linke Seite: > factor(sum(k^2,k=1..n+1)-sum(k^2,k=1..n)); > Rechte Seite: > 1/6*(n+1)*(n+2)*(2*n+3)-test1; > > factor(%); > --> Uebereinstimmung! Aufheben der Wertzuweisung fuer die Groesse "test1": > test1:='test1'; > > test1; > 2.e) Additionstheorem des Cosinus > cos(a+b); > > expand(%); > > expand(cos(a+b+c+d+e)); > 2.f) Differenzieren: > diff(1/(1-x^2),x); > 2.g) Integrieren: > int(2*x/(1-x^2)^2,x=0..y); > > numer(%)/expand(denom(%)); > Probe: Differenziere dies nach y: > diff(%,y); > normal(%); Substitution: y wird durch x ersetzt: > subs(y=x,%); 2.h) Dreidimensionale Grafik. Beispiel: f(x,y)= xy/(x^2+y^2): > plot3d(x*y/(x^2+y^2), x=-2..2, y=-2..2); > 2.i) Eigene Maple-Programme schreiben. Beispiel: In obige Grafik stanze ein kreisrundes Loch vom Radius 0.01 und lasse dieses in der Zeit t = 0..2*Pi einmal im Kreis um den Nullpunkt wandern. > a:=proc(x,y,t) local result; if (x-cos(t))^2+(y-sin(t))^2>0.01 then > result:=(x*y)/(x^2+y^2) else result:=FAIL fi; end; > > plot3d('a(x,y,Pi)','x'=-2..2,'y'=-2..2,numpoints=1600,orientation=[109,49]); Die Groesse "result" war im Programm als lokale Variable gekennzeichnet. Das bedeutet, dass ihre Wertzuweisung geloescht wird, sobald das Programm durchlaufen ist: > result; 2.j) Erzeuge eine bewegte Grafik. > ?animate3d > > with(plots): > > animate3d('a(x,y,t)','x'=-2..2, 'y'=-2..2, 't'=0..2*Pi, frames=32, > numpoints=1600,orientation=[109,49]); > Fortsetzung: Kapitel 3 : 03.mws