Metoda tečen

Jeden krok metody tečen při hledání řešení . představuje původní odhad, v bodě je sestrojena tečna ke křivce . V místě, kde tečna protíná osu , se nachází nový odhad .

Metoda tečen je iterační numerická metoda užívaná v numerické matematice k nalezení kořenů funkce nebo k řešení soustavy nelineárních algebraických rovnic. Nazývá se také Newtonova metoda (nebo Newton-Raphsonova metoda) a metodou tečen je označována, protože přesnější řešení rovnice f(x) = 0 je hledáno ve směru tečny funkce f(x).

Popis algoritmu

Newtonova metoda tečen slouží k nalezení řešení rovnice za předpokladu, že známe derivaci funkce , tedy směrnici tečny. Pro jednoduchost dále předpokládejme, že i jsou skaláry.

Animovaná ukázka hledání řešení .

Dalším nezbytným předpokladem je znalost počáteční hodnoty , v jejíž blízkosti hledáme řešení. Pokud se funkce chová rozumně (je spojitá, hladká a monotónní v intervalu, ve kterém hledáme řešení), lze očekávat řešení v místě, kde tečna sestrojená z bodu protíná osu . (Směrnice této tečny je .) Tento průsečík označíme a vypočteme jej podle následujícího vztahu.

Za splnění výše uvedených předpokladů by měla hodnota být blíže nule než původní . Stejný postup můžeme opakovat a najít tak ještě přesnější hodnotu .

Iteraci provádíme tak dlouho, dokud hodnota neleží dostatečně blízko nuly. Pokud metoda konverguje a pokud kořen není násobný, je konvergence velice rychlá. S každou iterací se přibližně zdvojnásobí počet desetinných míst, která jsou správně (přesněji, konvergence je kvadratická). Častým kriteriem pro ukončení výpočtu proto bývá okamžik, kdy vzdálenost dvou po sobě jdoucích iterací je dostatečně malá.[zdroj?]

Odvození iteračního vzorce

Víme, že rovnice tečny tk funkce f(x) v libovolném bodě xk je dána vzorcem, jelikož derivace je směrnicí tečny (koeficient lineárního členu):

Zároveň také víme, že tečna tk prochází bodem . Po dosazení:

Hledáme bod , což je průnik tečny tk v bodě xk s osou x, a zároveň dosadíme vyjádřené b:

Odtud již plyne:

Příklad: Výpočet druhé odmocniny

Úkolem je vypočítat druhou odmocninu kladného reálného čísla a.

Problém lze definovat také jako nalezení kořenu funkce , neboli řešení rovnice .

Vypočteme derivaci .

Dosadíme do obecného vzorce a upravíme.

Získáváme tak rekurentní rovnici, u které jako počáteční podmínku můžeme zvolit .

Ukázka výpočtu , neboli , metodou tečen.

Výpočet (druhé odmocniny z devíti) bude podle výše uvedeného algoritmu probíhat následovně.

a  = 9
x0 = 9
x1 = 5
x2 = 3.4
x3 = 3.02352941176471
x4 = 3.00009155413138
x5 = 3.00000000139698
x6 = 3.00000000000000
x7 = 3.00000000000000

Je vidět, že po několika málo krocích se hodnota nemění a ustálí se (konverguje) na hodnotě 3, což odpovídá správnému výsledku.

Poznámky

Aproximace derivace

Pokud známe pouze funkci f(x) a neznáme její derivaci f'(x), můžeme se pokusit derivaci nahradit numerickou derivací. Případně je možné řešit úlohu metodou sečen, která znalost derivace nevyžaduje.

Vektory

Je-li funkce f(x) skalární funkcí vektorového argumentu („z vektoru vypočte skalár“), je nutné hledat xk+1 proti směru gradientu. Předpis pro iteraci lze potom napsat následovně.

Pokud je funkce f(x) vektorovou funkcí vektorového argumentu („z vektoru vypočte vektor“), lze předpis pro iteraci napsat následovně.

Matice J je takzvaná Jacobiho matice obsahující parciální derivace.

Související články

Externí odkazy

Média použitá na této stránce

Newton iteration.svg
Newton iteration
Newton sqrt9.png
Newtonova metoda tečen, ilustrace výpočtu sqrt(9)