kapitel-07maple.mw

Mathematik

von T. Arens, F. Hettlich, Ch. Karpfinger, U. Kockelkorn, K. Lichtenegger,  H. Stachel

(zu Kapitel 7:  Stetige Funktionen)

> restart;

Stetige und unstetige Funktionen

Im Worksheet zu Kapitel 4 haben wir schon gesehen, wie Funktionen und Graphen in Maple realisiert sind. Lassen wir auch komplexe Argumente zu, so koennen wir die Graphen von Real- und Imaginaerteil getrennt als Flaechen ueber der komplexen Ebene darstellen. Zum Beispiel ergibt sich

> f:=z->(z+I)/(1+z^2);
plot3d(Im(f(x+I*y)),x=-2..2,y=-2..2,view=-2..2,axes=boxed);

f := proc (z) options operator, arrow; (z+I)/(1+z^2) end proc

[Plot]

Um abschnittweise  definierte Funktionen in das System einzugeben, kann der Befehl piecewise genutzt werden.

> piecewise(x>=1,x^2-2*x+2,(x<1 and x>=0), x^4+1/2*x^3-1/2*x^2,x<0,1/2*x+1);
f:=unapply(%,x);

PIECEWISE([x^2-2*x+2, 1 <= x], [x^4+1/2*x^3-1/2*x^2, x < 1 and 0 <= x], [1/2*x+1, x < 0])

f := proc (x) options operator, arrow; piecewise(1 <= x, x^2-2*x+2, x < 1 and 0 <= x, x^4+1/2*x^3-1/2*x^2, x < 0, 1/2*x+1) end proc

Beachten Sie die Syntax des Befehls: es wird im Wechsel eine Bedingung an x und der Ausdruck fuer die Funktion bei dieser Bedingung eingegeben. Intervalle, auf denen keine Angaben gemacht werden, werden automatisch auf 0 gesetzt.

Um den Graphen der Funktion anzusehen, ohne stoerende Verbindungslinien, muessen wir dem Befehl plot noch mitteilen, dass die gezeigten Funktionen unstetig sein koennen. Dazu dient die Variable discont .

> plot(f,-2..2,discont=true);

[Plot]

Betrachten wir die Grenzwerte von links und von rechts gegen x = 0 , so haben wir die  Unstetigkeit der Funktion an dieser Stelle explizit geprueft.

> assume(x>0);
limit(f(x),x=0);

0

> assume(x<0);
limit(f(x),x=0);

1

Um geschlossene Ausdruecke zu Umkehrfunktionen zu bekommen, versuchen wir den solve Befehl zu nutzen. Es ergibt sich etwa

> f:= x-> (x+1)/(1-x);
g:= solve(y=f(x),x);

f := proc (x) options operator, arrow; (x+1)/(1-x) end proc

g := (y-1)/(y+1)

Also ist mit g : R\{-1} -> R  eine Umkehrfunktion zu f : R\ {1} -> R gegeben, was wir durch

> x := 'x';
g:=unapply(g,y);

simplify(f(g(y)));

simplify(g(f(x)));

x := x

g := proc (y) options operator, arrow; (y-1)/(y+1) end proc

y

x

bestaetigen.

Die Bestimmung eines Ausdrucks fuer eine Umkehrfunktion erfordert Gleichungen der Form y = f(x) zu loesen. Dies ist nicht immer explizit moeglich, wie wir an verschiedenen Stellen schon gesehen haben. Numerisch koennen wir aber mit dem Bisektionsverfahren bei vorgegebenen Wert y und einer stetigen Funktion eine Loesung ermitteln. Ohne weitere Einschraenkungen setzen wir y = 0 und suchen Nullstellen einer Funktion f .

Wir schreiben ein kurzes Programm, dass das Bisektionsverfahren ausfuehrt.  

> bisekappr := proc(f,a,b,N)
local i, xa, xb, xm, fa, fb, fm, eps;

global intervall, nullstelle;

xa := a;

xb := b;

fa := evalf(f(xa));

fb := evalf(f(xb));

eps       := 10^(-8);


if fa*fb>eps then

   print("kein Vorzeichenwechsel zwischen f(a) und f(b)");

else

  intervall := [xa,xb];

  print(intervall);

  for i to N do

     xm := 0.5 * (xa + xb);

     fm := f(xm);

     if fa*fm>eps then

        xa := xm;

        fa := fm;   

     elif fa*fm<eps then

        xb := xm;

        fb := fm;

     else

       nullstelle := 0.5*(xa+xb);

       print(nullstelle);

       break;     

     end if;

     print([xa,xb]);

  od;

end if;

end:

Nun nutzen wir unseren Algorithmus, um Nullstellen zu approximieren. Betrachten wir etwa das Polynom p mit


   
p(x) = x^5+3*x^3-x^2+1 .

> p:= x-> x^5+3*x^3-x^2+1;

p := proc (x) options operator, arrow; x^5+3*x^3-x^2+1 end proc

Wir suchen zunaechst ein Startintervall:

> p(-1); p(0); p(1);

-4

1

4

Nach dem Zwischenwertsatz gibt es mindestens eine Nullstelle im Intervall [-1,0] und mit dem Bisektionsverfahren koennen wir eine Nullstelle einschachteln:

> bisekappr(p,-1,0,10);

[-1, 0]

[-1, -.5]

[-.75, -.5]

[-.625, -.5]

[-.625, -.5625]

[-.59375, -.5625]

[-.59375, -.578125]

[-.5859375, -.578125]

[-.5859375, -.58203125]

[-.583984375, -.58203125]

[-.5830078125, -.58203125]

>

Aufgaben

(Um Aufgaben zu bearbeiten oeffnen Sie bitte ein neues Worksheet und probieren Sie dort ihre Befehle aus. Einen Loesungsvorschlag erhalten Sie, wenn sie die Loesung oeffnen. Dies sollten Sie aber erst nach eigenen Versuchen nutzen.)

1. Die Graphen der beiden Funktionen f, g mit

   f(x) = x^5-x^2+4   fuer  x <= 1 ,    f(x) = (x-1)^6+(x+1)^2   fuer  1 < x

und

g(x) = 5*x+1

besitzen drei Schnittpunkte. Bestimmen Sie diese Punkte.

>

Loesung

2.  Welche der beiden Funktionen f, g mit

f(x) = (2^x-1)/(3^x-1)

und

g(x) = x*ln(1/x)

ist fuer
0 < x beschraenkt ?

Ist die Funktion h mit

  h(x) = sin(1/x)


zu einer stetigen Funktion  in
x = 0 fortsetzbar?

>

Loesung