next up previous
Next: if-Satser Up: Studio 3 Previous: Fixpunktsiteration

Implementation i Matlab

Så hur vet vi om fixpunktsiterationen funkar och konvergerar? Jo, vi kan mäta t.ex. absolutbeloppet av skillnaden mellan sucessiva approximationer, dvs. $ \vert x_1-x_0\vert$, $ \vert x_2-x_1\vert$, $ \vert x_3-x_2\vert$, etc. När denna är mindre än någon specificerad tolerans tol så säger vi att fixpunktsiterationen har konvergerat och att vi har hittat den sökta roten.

I Matlab kan vi implementera fixpunktsiterationen ovan m.h.a. koden

tol = 0.001
x = 4
g = x + 10*tol 
while abs(x-g) > tol
   x = g
   g = 8/(2+x)
end

Övning: Lös följande ekvationer med fixpunktsiteration. Börja iterera med de indikerade startgissningarna $ x_0$.

a. $ 1+x-\tfrac{x^2}{3}=x$, $ x_0=2$.

b. $ x(1+x^2)=1$, $ x_0 = 0$.

Prova att minska toleransen tol för att få en mer exakt rot.



Fredrik Bengzon 2004-08-24