Yhtälöiden ratkaisu numeerisesti#

Numeeristen menetelmien avulla on mahdollista selvittää likimääräisiä ratkaisuja yhtälöille, joita on mahdotonta tai vaikeaa ratkaista muuten. Esimerkiksi kolmannen ja neljännen asteen polynomien nollakohtien ratkaisukaavat ovat hyvin monimutkaisia, ja viidennen ja korkeamman asteen polynomeille sellaisia ei ole olemassakaan. Tietokoneetkin ratkaisevat tällaisia ongelmia numeerisesti eli etsimällä luvun, joka toteuttaa ratkaistavan yhtälön riittävän hyvin. Tässä luvussa tarkastellaan erityisesti sitä, miten derivaattaa voi hyödyntää yhtälöiden ratkaisussa.

Bolzanon lause#

Lähtökohtana tämän luvun menetelmille on Bolzanon lause: jos jatkuvan funktion \(f(x)\) arvo pisteessä \(a\) on eri merkkinen kuin funktion \(f(x)\) arvo pisteessä \(b\), niin lukujen \(a\) ja \(b\) välissä on olemassa jokin piste \(c\), jossa funktion arvo on \(f(c)=0\). Toisin sanoen funktion arvot eivät voi muuttua positiivisista negatiivisiksi tai negatiivisista positiivisiksi ilman, että funktion arvo on välissä ainakin kerran nolla.

Bolzanon lauseesta on huomioitava seuraavaa:

  • Funktiolla voi olla nollakohtia pisteiden \(a\) ja \(b\) välissä, vaikka funktion arvot olisivat saman merkkiset pisteissä \(a\) ja \(b\); esimerkiksi funktio \(f(x)=x^2-9x+18\) saa saman merkkiset arvot pisteissä 2 ja 7 (sillä \(f(2)=2^2-9\cdot 2+18=4 > 0\) ja \(f(7)=7^2-9\cdot 7+18 = 4 > 0\)), mutta funktiolla on kuitenkin tällä välillä kaksikin nollakohtaa \(x=3\) ja \(x=6\).

  • Funktiolla, jonka arvot pisteissä \(a\) ja \(b\) ovat eri merkkiset, voi olla välillä \(]a,b[\) useampi kuin yksi nollakohta. Esimerkiksi funktion \(f(x)=x^3-6x^2+11x-6\) arvo pisteessä \(x=0\) on \(f(0)=-6 < 0 \) ja pisteessä \(x=4\) arvo on \(f(4)= 6 > 0\). Funktion nollakohdiksi voidaan ratkaista \(x=1\), \(x=2\) ja \(x=3\).

Jos kuitenkin luvut \(a\) ja \(b\) ovat lähellä toisiaan ja funktion arvot \(f(a)\) ja \(f(b)\) ovat eri merkkiset, niin lukujen \(a\) ja \(b\) välistä löytyy varmasti eräs nollakohta funktiolle \(f(x)\). Bolzanon lausetta voi yksinkertaisimmin käyttää nollakohdan etsimiseen haarukoimalla, eli laskemalla funktion arvot ensin pisteissä \(a\) ja \(b\) ja sitten pienentämällä lukujen väliä, kunnes saadaan riittävän tarkat rajat sille, minkä lukujen välissä funktion merkki vaihtuu.

Esimerkki

Ratkaise yhtälö \(3x^2-4x=5\) haarukoimalla lukujen -1 ja 0 välistä.

Sekanttimenetelmä#

Haarukointimenetelmää voidaan hieman jalostaa seuraavasti: muodostetaan pisteiden \(f(a)\) ja \(f(b)\) välille suora, ja ratkaistaan tämän suoran nollakohta. Tätä tapaa kutsutaan sekanttimenetelmäksi.

Suora muodostetaan pisteiden \((a,f(a))\) ja \((b,f(b))\) avulla, joten suoran kulmakerroin on

\(k=\frac{f(b)-f(a)}{b-a}\)

ja leikkausvakio on \(v=f(b)-kb\)

jolloin suoran yhtälöksi saadaan \(y=kx+f(b)-kb\).

Oletetaan, että suora saa arvon 0 pisteessä \(c\). Kun suoran yhtälöön asetetaan \(y=0\) ja \(x=c\), saadaan \(c=\frac{kb-f(b)}{k}\) eli \(c=b-\frac{f(b)}{k}\).

Sijoittamalla edelliseen yhtälöön \(k=\frac{f(b)-f(a)}{b-a}\) saadaan lopulta nollakohdalle arvio

\(c=b-\frac{b-a}{f(b)-f(a)} f(b)\).

Seuraava vaihe on laskea funktion arvo pisteessä \(c\)ja tarkastella sen merkkiä. Jos merkki on sama kuin pisteessä \(a\), niin lähemmäs nollakohtaa päästään muodostamalla uusi suora pisteestä \((c,f(c))\) pisteeseen \((b,f(b))\). Jos taas merkki on vastakkainen kuin pisteessä \(a\), niin uusi suora muodostetaan pisteiden \((a,f(a))\) ja \((c,f(c))\) välille.

Newtonin menetelmä#

Newtonin menetelmä perustuu edellä esitettyyn sekanttimenetelmään. Sekanttimenetelmällä pisteiden välillä piirretyn suoran kulmakerroin oli \(k=\frac{f(b)-f(a)}{b-a}\). Jos pisteet \(a\) ja \(b\) ovat hyvin lähellä toisiaan, niin kyseinen erotusosamäärä on melkein sama kuin funktion derivaatta \(f'(b)\). Nyt suoran kulmakertoimeksi valitaankin siis funktion derivaatta pisteessä \(b\):

\(k=f'(b)\)

ja edelleen leikkausvakio on \(v=f(b)-f'(b)b\),

joten suoran yhtälöksi muodostuu \(y=f'(b)x+f(b)-f'(b)b\).

Suoran nollakohta on \((c,0)\), joten \(0=f'(b)c+f(b)-f'(b)b\), josta ratkaa

\(c=b-\frac{f(b)}{f'(b)}\).

Newtonin menetelmässä valitaan luvulle \(c\) jokin alkuarvaus \(x_0\). Seuraava arvio nollakohdalle, \(x_1\), saadaan laskemalla \(x_1=x_0 - \frac{f(x_0)}{f'(x_0)}\). Yleisesti \(n+1\):s arvio luvulle \(c\) eli x_{n+1} saadaan edellisen arvion \(x_n\) perusteella:

\(x_{n+1}=x_n-\frac{f(x_n)}{f'(x_n)}\).

Laskua jatketaan, kunnes jonon \(x_1, x_2, ...\) luvut alkavat pysyä riittävällä tarkkuudella samoina.

Menetelmän heikkouksia ovat seuraavat:

  • ratkaisun löytyminen riippuu siitä, mikä valitaan alkuarvaukseksi \(x_0\)

  • lasku katkeaa, jos \(f'(x_n)=0\)

Esimerkki

Etsi Newtonin menetelmällä yhtälölle \(3x^2-4x-8=0\) ratkaisu käyttäen alkuarvausta \(x_0=-1\).