Numerieke Wiskunde IX:
Nulpuntsbepaling met Regula Falsi
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 Regula Falsi.
- Er worden twee items besproken:
- De Regula Falsi methode voor het vinden van een nulpunt.
- De aanpak in de praktijk.
- De naam 'Regula Falsi' is een afkorting van het Latijnse 'Regula falsae positionis', wat zoveel betekent als: 'Regel van de verkeerde plaats'.
- Nodig en voldoende is dat de functie continu monotoon stijgend of dalend is op een interval rond het nulpunt. In dat geval 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 waarde - Bereken
x2 = x1 - F(x1)·[x1 - x0] / [F(x1) - F(x0)]
. BerekenF(x2)
. - Er zijn nu drie mogelijkheden:
F(x2) = 0
. Als dit gebeurt isx2
de exacte oplossing.F(x2)*F(x0) < 0
: Vervangx1
doorx2
. Bereken een nieuwe waarde vanx2
enF(x2)
en herhaal de beoordeling.F(x2)*F(c) > 0
: Vervangx0
doorx2
. Bereken een nieuwe waarde vanx2
enF(x2)
en herhaal de beoordeling.
- 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. - Bij het bepalen van het verschil
| Δ | = |xi - xi-1|
moeten de waarden vanx0
resp.x1
worden gebruikt, afhankelijk van dex
-waarde die is veranderd. - De waarde van
ε
bepaalt de nauwkeurigheid van de oplossing.
x0 < x
en een waarde x1 > x
.
Het product F(x0)·F(x1)
is dan kleiner dan nul.
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
.
- We tekenen eerst de grafiek van
F(x)
, zie hiernaast. - Als startwaarden voor het iteratieproces nemen we
x0
= 3.5 enx1
= 4.8. - Onderstaande tabel toont het verloop van het iteratieproces.
N.B.: Omdat in dit voorbeeld alleenx0
verandert, is de waarde vanF(x1) = 1.92
constant in het iteratieproces.F(x1)
staat daarom niet in de tabel.
stap | x0 | x1 | x2 |
F(x0) | F(x2) | | Δ | |
< ε |
0 | 3.5 | 4.8 | 3.906976744 | -0.875 | -0.181719849 | ||
1 | 3.906976744 | 4.8 | 3.984189723 | -0.181719849 | -0.031495571 | 0.406976744 | nee |
2 | 3.984189723 | 4.8 | 3.997356246 | -0.031495571 | -0.005284014 | 0.077212979 | nee |
3 | 3.997356246 | 4.8 | 3.999559131 | -0.005284014 | -0.000881640 | 0.013166523 | nee |
4 | 3.999559131 | 4.8 | 3.999926515 | -0.000881640 | -0.000146967 | 0.002202886 | nee |
5 | 3.999926515 | 4.8 | 3.999987752 | -0.000146967 | -2.44952E-05 | 0.000367384 | ja |
- De tabel begint met stap 0. Dit is de initialisatie van het iteratieproces.
- Het convergentiecriterium wordt bereikt in stap 5, dat is dus de zesde berekening. Daar is
x2
gelijk aan 3.999987752. In vergelijking met de exacte oplossing (x = 4
; zie de opmerking aan het einde van deze bladzijde) is dat netjes.
- 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/Regula_falsi
Downloaden:
Druk op de knop:
File: voorb659.zip, 4358 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.