Numerieke Wiskunde X:
Nulpuntsbepaling met Newton-Raphson
Een veel voorkomend wiskundig probleem is het berekenen van een snijpunt in de grafieken van twee functies. Je zou dat kunnen oplossen door de grafieken van die functies te tekenen en de coördinaten van het snijpunt uit de tekening af te lezen. De nauwkeurigheid van zo'n aanpak is echter beperkt; het is eigenlijk alleen bruikbaar als eerste schatting.
Er moet dus gerekend worden. Een algemeen toegepaste werkwijze is: de functievoorschriften van elkaar aftrekken en dan
het punt berekenen waar de grafiek de X-as snijdt (dus waar Y = 0).
Een veel gebruikte methode heet Newton-Raphson.
- Er worden twee items besproken:
- De methode van Newton-Raphson voor het vinden van een nulpunt.
- De aanpak in de praktijk.
- De naam 'Newton-Raphson' is naar de bedenkers van deze methode.
- Nodig, maar niet voldoende, is dat de functie continu monotoon stijgend of dalend is op een interval rond het nulpunt, dat ook de startwaarde van het iteratie-proces moet bevatten.
- Een tweede eis is dat de eerste afgeleide van de functie niet gelijk mag worden aan nul.
- Als aan beide eisen is voldaan geeft deze methode altijd een oplossing. We zeggen dan dat de methode convergeert.
- Teken altijd eerst een grafiek van de functie. Dat geeft al een idee van de oplossing.
- Stel dat we zoeken naar
F(x) = 0
. Uit de grafiek kun je een schatting maken vanx
. - Zie de figuur hiernaast. Kies een startwaarde
x0
. Die waarde mag zowel links als rechts van de geschatte waardex
liggen. BerekenF(x0)
. - Trek de raaklijn in het punt
(x0,F(x0))
. Die lijn heeft de vergelijkingY = F(x0) + λ·F'(x)
. Het snijpunt van deze lijn met de X-as is de nieuwe benadering van het nulpunt vanF(x)
. In formule:F(xi) = xi-1 - F(xi-1)/F'(xi-1)
. Hier blijkt ook de reden waaromF'(x)
niet nul mag worden:F'(x)
staat immers in de noemer! - Bereken een nieuwe waarde van
F(x)
. - Er zijn nu twee mogelijkheden:
F(x) = 0
. Als dit gebeurt isx
de exacte oplossing.F(x) ≠ 0
. Voer de volgende iteratiestap uit.
- Mogelijkheid 1 zal niet vaak voorkomen. Vrijwel altijd zal het iteratieproces worden afgebroken doordat de absolute waarde
van het verschil tussen de waarde van
x
in de huidige stap enx
in de vorige stap kleiner is dan een grenswaardeε
(epsilon).
In formule:| Δ | = |xi - xi-1| < ε
. Dit wordt het convergentie-criterium genoemd. - De waarde van
ε
bepaalt de nauwkeurigheid van de oplossing.
Een uitgewerkt voorbeeld
Vraag: wat is het snijpunt, x ≠ 0
, van f(x) = 0.5·x2
en
g(x) = 2·x
?
Uitwerking: In het snijpunt is f(x) = g(x)
, daaruit volgt:
f(x) - g(x) = 0
. Dat geeft de formule:
F(x) = 0.5·x2 - 2·x = 0
.
De afgeleide van F(x)
is F'(x) = x - 2
.
- We tekenen eerst de grafiek van
F(x)
, zie hiernaast. Het nulpunt lijkt in de buurt van 4 te liggen. - Als startwaarde voor het iteratieproces kiezen we
x0 = 4.8
. Dit punt ligt rechts van de eerste schatting. - Onderstaande tabel toont het verloop van het iteratieproces. De grenswaarde
ε = 0.001
.
Stap 0 is de initialisatie van het proces.
stap | xi | F(xi) | F'(xi) |
| Δ | | < ε |
0 | 4.8 | 1.92 | 2.8 | nee | |
1 | 4.114285714 | 0.235102041 | 2.114285714 | 0.685714286 | nee |
2 | 4.003088803 | 0.006182377 | 2.003088803 | 0.111196911 | nee |
3 | 4.000002381 | 4.76300E-06 | 2.000002381 | 0.003086422 | nee |
4 | 4.000000000 | 2.83684E-12 | 2.000000000 | 2.38150E-06 | ja |
- Het is ook mogelijk om de startwaarde links van het geschatte nulpunt te kiezen, bijvoorbeeld
x0 = 3.5
. Het iteratiepoces verloopt dan als in onderstaande tabel:
stap | xi | F(xi) | F'(xi) |
| Δ | | < ε |
0 | 3.5 | -0.875 | 1.5 | nee | |
1 | 4.083333333 | 0.170138889 | 2.083333333 | 0.583333333 | nee |
2 | 4.001666667 | 0.003334722 | 2.001666667 | 0.081666667 | nee |
3 | 4.000000694 | 1.38773E-06 | 2.000000694 | 0.001665973 | nee |
4 | 4.000000000 | 2.39808E-13 | 2.000000000 | 6.93866E-07 | ja |
- Het convergentiecriterium wordt bij beide berekeningen bereikt in stap 4, dat is dus de vijfde berekening.
Daar is het resultaat voor
x
in het eerste geval gelijk aan 4.000000000001418 (de decimalen passen niet in de tabel). In het tweede geval is dat 4.00000000000012. Vergeleken met de exacte oplossing (x = 4
; zie de opmerking aan het einde van deze bladzijde) is dat heel goed.
- Natuurlijk is er ook een applicatie om zelf met deze
techniek aan de slag te gaan. Klik op de knop hiernaast.
- De code van de applicatie kun je downloaden om zelf aan door te ontwikkelen.
- Als je verder wilt werken aan de applicatie, download je de .zip-file en pak je hem uit. Je hebt dan meteen een werkend voorbeeld.
Bron:Wikipedia: nl.wikipedia.org/wiki/Methode_van_Newton-Raphson
Downloaden:
Druk op de knop:
File: voorb660.zip, 4260 bytes.
Opmerking:
De analytische oplossing van F(x) = 0
gaat als volgt:
0.5·x2 - 2·x = x (0.5·x - 2) = 0 ⇒
x = 0 ∨ (0.5·x - 2) = 0 ⇔
x = 0 ∨ 0.5·x = 2 ⇒
x = 0 ∨ x = 4
Dit is ook te zien in de grafiek.