Regula falsi -menetelmä

Regula falsi -menetelmä on numeerisen analyysin algoritmi funktion nollakohdan löytämiseksi. Menetelmässä käytetään käyrän sekantteja uuden, edellistä tarkemman likiarvon löytämiseksi juurelle. ==Menetelmän kuvaus== Regula falsi -menetelmä aloitetaan valitsemalla kaksi pistettä a0 ja b0 siten, että f(a0) ja f(b0) ovat erimerkkiset. Menetelmä etenee tuottaen jonon suppenevia välejä [ak, bk] siten, että väli sisältää sellaisen arvon x, että f(x) = 0. Iteraatiolla numero k lasketaan lukuarvo : c_k = \frac{f(b_k)a_k-f(a_k)b_k}{f(b_k)-f(a_k)} . ck on pisteiden (ak, f(ak)) ja (bk, f(bk)) kautta kulkevan sekantin nollakohta. Jos f(ak) ja f(ck) ovat samanmerkkiset, valitaan ak+1 = ck ja bk+1 = bk, muutoin valitaan ak+1 = ak ja bk+1 = ck. Tätä prosessia toistetaan, kunnes juuri on saatu laskettua halutulla tarkkuudella. Yllä olevaa kaavaa käytetään myös sekanttimenetelmässä, mutta sekanttimenetelmässä seuraava arvo lasketaan aina kahden viimeksi lasketun pisteen avulla. Regula falsi -menetelmässä taas käytetään viimeksi lasketun pisteen parina edellistä sellaista pistettä, jossa funktion arvo oli erimerkkinen. ===Sekantin nollakohdan löytäminen=== Kun tunnetaan ak ja bk, voidaan konstruoida pisteiden (ak, f(ak)) ja(bk, f(bk)) kautta kulkeva suora, kuten yllä olevasta kuvasta nähdään. Huomaa, että tämä suora on funktion f sekantti. Sen yhtälö voidaan laskea seuraavasti: : y - f(b_k) = \frac{f(b_k)-f(a_k)}{b_k-a_k} (x-b_k). Valitaan nyt arvoksi ck tämän suoran nollakohta, jolloin ck on valittu siten, että : f(b_k) + \frac{f(b_k)-f(a_k)}{b_k-a_k} (c_k-b_k) = 0. Tämän yhtälön ratkaisuna saadaan ylempänä oleva yhtälö arvolle ck. ==Analyysi== Jos alkuperäiset päätepisteet a0 ja b0 on valittu siten, että f(a0) ja f(b0) ovat erimerkkiset, toinen päätepisteistä suppenee iterointia jatkettaessa kohti funktion f nollakohtaa. Vastaavasti toinen päätepiste pysyy samana kaikille iteraatioille. Seurauksena päätepisteiden välimatka ei suppene kohti nollaa. Tästä taas seuraa, että funktion f(x) lineaarinen approksimaatio ei muutu paremmaksi. Esimerkkinä tästä ilmiöstä mainittakoon funktio : f(x) = 2x^3-4x^2+3x jonka iteroinnin alkuarvoiksi valitaan [−1,1]. Vasen päätepiste, −1, ei koskaan korvaudu ja näin ollen välin pituus ei koskaan mene ykköstä pienemmäksi (koska funktion nollakohta on nolla). Näin ollen oikea päätepiste lähestyy nollaa. Jos regula falsi -menetelmä ei tuo ratkaisua juurelle (eli sama päätepiste saadaan kahdesti peräkkäin), voidaan ongelma kiertää muuntamalla menetelmää painokertoimin. Valitaan esimerkiksi : c_k = \frac{\frac{1}{2}f(b_k) a_k- f(a_k) b_k}{\frac{1}{2}f(b_k)-f(a_k)} tai : c_k = \frac{f(b_k) a_k- \frac{1}{2}f(a_k) b_k}{f(b_k)-\frac{1}{2}f(a_k)} Tällöin toista päätepisteistä on painotettu siten, että seuraava ck saadaan kyseisellä puolella funktiota. Lisäetuna saavutetaan suurempi suppenemisnopeus. == Historia == Vanhimmat dokumentit alkeellisen Regula falsi -menetelmän käytöstä löytyvät intialaisesta matemaattisesta tekstistä Vaishali Ganit noin kolmannelta vuosisadalta ennen ajanlaskun alkua. Vanha kiinalainen teksti The Nine Chapters on the Mathematical Art (九章算術) vuosien 200 eaa. - 100 jaa. mainitsee myös menetelmän. Tässä yhteydessä esimerkit soveltavat menetelmää kuitenkin vain lineaarisiin yhtälöihin, joten ratkaisu saadaan jo ensimmäisellä askeleella. Leonardo Pisalainen eli Fibonacci mainitsee arabilähteistä oppimansa menetelmän kirjassaan Liber Abaci vuonna 1202. == Kirjallisuutta == * == Aiheesta muualla == * J.A. Ford (1995), Improved Algorithms of Illinois- type for the Numerical Solution of Nonlinear Equations, Technical Report CSM-257, University of Essex, 1995 (englanniksi) *Richard L. Burden, J. Douglas Faires (2000), "Numerical Analysis, (7th Ed)", Brooks/Cole. ISBN 0-534-38216-9 (englanniksi) * L.E. Sigler, Fibonacci's Liber Abaci, Leonardo Pisno's Book of Calculation (2002), Springer-Verlag, New York, ISBN 0-387-40737-5. (englanniksi) Luokka:Algoritmit Luokka:Numeerinen analyysi