Die in diesem Worksheet beschriebenen Prozeduren bestimmen Nullstellen von stetigen Funktionen durch die Anwendung von numerischen Einschließungsverfahren, welche die gesuchte Nullstelle in einem kleiner werdenden Intervall einschließen. Es wird sowohl die Bisektionsmethode bise (=Intervallhalbierungsverfahren) als auch das Pegasusverfahren Pegasus in Form einer Animation visualisiert. Voraussetzung für die Verfahren ist, dass die stetigen Funktionen an den Intervallgrenzen ein unterschiedliches Vorzeichen besitzen!
Graphische Darstellung des Bisektionsverfahrens
Graphische Darstellung des Pegasusverfahrens
-----------------------
Graphische Darstellung des Bisektionsverfahrens
Das Bisektionsverfahren berechnet den Funktionswert in der Intervallmitte und ersetzt dann den Intervallrand durch die Mitte, welcher das gleiche Funktionsvorzeichen besitzt. Das Verfahren wird über den Aufruf der Prozedur bise durch eine Animation visualisiert, indem die Funktion zusammen mit den sich verkleinernden Intervallgrenzen als Graph gezeichnet werden. Der Aufruf der Prozedur erfolgt wie der plot-Befehl ohne Optionen.
Gesucht ist die Nullstelle der
Funktion
im Intervall [0.5,2].
>
f:=sqrt(x)-1;
>
bise(f, x=0.5..2);
Animation !
Nach der 1. Iteration ist die NS eingeschlossen im Intervall [ .5 ,1.25 ] Nach der 2. Iteration ist die NS eingeschlossen im Intervall [ .875 ,1.25 ] Nach der 3. Iteration ist die NS eingeschlossen im Intervall [ .875 ,1.0625 ] Nach der 4. Iteration ist die NS eingeschlossen im Intervall [ .96875,1.0625 ] Nach der 5. Iteration ist die NS eingeschlossen im Intervall [ .96875,1.01563] Nach der 6. Iteration ist die NS eingeschlossen im Intervall [ .99219,1.01563] Nach der 7. Iteration ist die NS eingeschlossen im Intervall [ .99219,1.00391] Nach der 8. Iteration ist die NS eingeschlossen im Intervall [ .99805,1.00391] Nach der 9. Iteration ist die NS eingeschlossen im Intervall [ .99805,1.00098] Nach der 10. Iteration ist die NS eingeschlossen im Intervall [ .99951,1.00098] Nach der 11. Iteration ist die NS eingeschlossen im Intervall [ .99951,1.00024] Nach der 12. Iteration ist die NS eingeschlossen im Intervall [ .99988,1.00024] Nach der 13. Iteration ist die NS eingeschlossen im Intervall [ .99988,1.00006] Nach der 14. Iteration ist die NS eingeschlossen im Intervall [ .99997,1.00006]
Ein
weiteres Beispiel
Gesucht
ist die Nullstelle der Funktion
.
Wir zeichnen zunächst die Funktion zwischen 0 und 3:
>
f:=0.25*arctan(x-0.7);
>
plot(f, x=0..3);
Aus dem Schaubild entnimmt man,
dass eine Nullstelle im Intervall [0, 1.5] liegt. Wir setzen daher
> bise(f, x=0..1.5);
Animation !
Nach der 1. Iteration ist die NS eingeschlossen im Intervall [0 , .75 ] Nach der 2. Iteration ist die NS eingeschlossen im Intervall [ .375 , .75 ] Nach der 3. Iteration ist die NS eingeschlossen im Intervall [ .5625 , .75 ] Nach der 4. Iteration ist die NS eingeschlossen im Intervall [ .65625, .75 ] Nach der 5. Iteration ist die NS eingeschlossen im Intervall [ .65625, .70313] Nach der 6. Iteration ist die NS eingeschlossen im Intervall [ .67969, .70313] Nach der 7. Iteration ist die NS eingeschlossen im Intervall [ .69141, .70313] Nach der 8. Iteration ist die NS eingeschlossen im Intervall [ .69727, .70313] Nach der 9. Iteration ist die NS eingeschlossen im Intervall [ .69727, .7002 ] Nach der 10. Iteration ist die NS eingeschlossen im Intervall [ .69873, .7002 ] Nach der 11. Iteration ist die NS eingeschlossen im Intervall [ .69946, .7002 ] Nach der 12. Iteration ist die NS eingeschlossen im Intervall [ .69983, .7002 ] Nach der 13. Iteration ist die NS eingeschlossen im Intervall [ .69983, .70001] Nach der 14. Iteration ist die NS eingeschlossen im Intervall [ .69992, .70001]
zurück zum Anfang
Graphische Darstellung des Pegasusverfahrens
Das Pegasusverfahren bestimmt im Innnern des Intervalls durch ein modifiziertes Sekantenverfahren einen Punkt, der den Intervallrand mit dem gleichen Funktionsvorzeichen ersetzt. Der wesentliche Unterschied zum Intervallhalbierungsverfahren ist, dass das Zwischenintervall nicht mehr die Mitte der beiden aktuellen Grenzen ist, sondern der Schnittpunkt der Sekanten mit der x-Achse die neue Intervallgrenze liefert! Das Verfahren wird mit Hilfe der Prozedur Pegasus durch eine Animation visualisiert, indem die Funktion zusammen mit den jeweiligen Sekanten als Graph abgespielt werden. Der Aufruf der Prozedur erfolgt wie der plot-Befehl ohne Optionen.
Gesucht ist die Nullstelle der
Funktion
zwischen -2 und 2. Wir zeichnen daher die
Funktion in diesem Bereich.
> f:=x^3-sqrt(x^2+1);
>
plot (f,x=-2..2);
=> Eine Nullstelle dieser
Funktion liegt zwischen 1 und 2 ! Daher wird das Anfangsintervall der
Iteration I = [1,1.8] gewählt:
>
Pegasus(f,x=1..1.8);
Animation !
Nach der 1. Iteration ist die NS eingeschlossen im Intervall [1.07914,1.8 ] Nach der 2. Iteration ist die NS eingeschlossen im Intervall [1.11792,1.8 ] Nach der 3. Iteration ist die NS eingeschlossen im Intervall [1.14435,1.8 ] Nach der 4. Iteration ist die NS eingeschlossen im Intervall [1.15084,1.8 ] Nach der 5. Iteration ist die NS eingeschlossen im Intervall [1.15084,1.15096] Nach der 6. Iteration ist die NS eingeschlossen im Intervall [1.15096,1.15096]
Ein
weiteres Beispiel
Gesucht
ist die Nullstelle der Funktion
zwischen -2 und 2.
> f:=
x^3+2*x+4:
> plot
(f,x=-2..2);
Eine Nullstelle dieser Funktion
liegt zwischen -2 und 0. Daher setzen wir
>
Pegasus(f,x=-2..0);
Animation !
Nach der 1. Iteration ist die NS eingeschlossen im Intervall [-2 ,-.66667] Nach der 2. Iteration ist die NS eingeschlossen im Intervall [-2 ,-1.09413] Nach der 3. Iteration ist die NS eingeschlossen im Intervall [-1.19197,-1.09413] Nach der 4. Iteration ist die NS eingeschlossen im Intervall [-1.19197,-1.17889] Nach der 5. Iteration ist die NS eingeschlossen im Intervall [-1.19197,-1.1795 ] Nach der 6. Iteration ist die NS eingeschlossen im Intervall [-1.19197,-1.17951] Nach der 7. Iteration ist die NS eingeschlossen im Intervall [-1.17951,-1.17951]
zurück zum Anfang
T.Westermann
Mathematik für
Ingenieure mit Maple (Band 1)
Springer-Verlag
, Heidelberg 1996