Überblick

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!

Inhaltsverzeichnis

Graphische Darstellung des Bisektionsverfahrens

Graphische Darstellung des Pegasusverfahrens

-----------------------

zurück zur Startseite

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

Literatur

T.Westermann
Mathematik für Ingenieure mit Maple (Band 1)
Springer-Verlag , Heidelberg 1996