Newtonova metoda umožňuje najít reálná nuly funkce. Tento algoritmus se někdy nazývá Newtonova‑Raphsonova metoda, pojmenovaná podle sira Isaaca Newtona a Josepha Raphsona.
Princip metody
Metoda využívá k nalezení kořenů funkce její derivace. Je třeba provést počáteční odhad hodnoty umístění nuly, označený x0. Z tohoto odhadu se iterativně vypočítávají nové odhady podle vzorce:
x n + 1 = x n - f ( x n ) f ′ ( x n ) {\displaystyle x_{n+1}=x_{n}-{\frac {f(x_{n})}{f'(x_{n})}}}
Zde xn je aktuální odhad a xn+1 další odhad. Iterací (tj. opakovaným dosazováním xn+1 jako nového xn) získáme posloupnost, která se za příznivých podmínek blíží skutečné nule funkce.
Geometrická interpretace
Graficky se metoda vysvětluje pomocí průsečíků tečných přímek s osou x. Pro daný bod xn nakreslíme tečnu k funkci f. Průsečík této tečny s osou x dává xn+1. Opakováním tohoto kroku „sjíždíme“ po tečně k hledané nule.
Konvergence a vlastnosti
- Kvadratická konvergence: Pokud je f dvakrát spojitě diferencovatelná v okolí kořene α a f'(α) ≠ 0, pak Newtonova metoda konverguje kvadraticky — počet správných platných číslic přibližně dvojnásobně roste při každé iteraci poblíž kořene.
- Rychlost: Díky kvadratické konvergenci je metoda velmi rychlá, pokud je počáteční odhad dostatečně blízko skutečnému řešení.
- Rozšíření: Metodu lze snadno zobecnit i do komplexní roviny pro hledání komplexních kořenů.
Omezení a možné problémy
- Derivace nulová: Pokud se v některém kroku f'(xn) = 0 (nebo velmi blízko nule), vzorec selže (dělení nulou) nebo numericky zhorší odhad. To může vést k velkým skokům či divergenci.
- Citlivost na počáteční odhad: Špatně zvolený x0 může způsobit, že metoda bude konvergovat k jinému kořenu, bude oscilovat nebo bude divergovat.
- Singularity a vícenásobné kořeny: Pro kořeny s násobností >1 konvergence obvykle není kvadratická, často je pouze lineární nebo může být pomalejší.
- Lokální, ne globální: Newtonova metoda není samo o sobě zaručeně globálně konvergentní — zaručené metody pro nalezení kořenů (např. bisekce) používají obvykle jiné přístupy.
Praktická doporučení a modifikace
- Před implementací zkontrolujte, zda f'(x) není v některém kroku blízko nuly; v takovém případě použijte jinou metodu nebo modifikaci.
- Pro lepší globální chování lze použít damped (relaxovanou) verzi: xn+1 = xn − λ f(xn)/f'(xn) s 0 < λ ≤ 1, kde λ se volí adaptivně (line search) tak, aby se zajistilo zlepšení.
- Secant metoda je alternativa, která nepoužívá explicitně derivaci (používá aproximaci derivace dvou předchozích bodů) — užitečné, když je výpočet derivace složitý nebo nepraktický.
- V kódu vždy nastavte maximální počet iterací a toleranci pro zastavení, např. |xn+1 − xn| < tol nebo |f(xn)| < tol.
Algoritmus (krok za krokem)
- Zvolte počáteční odhad x0, toleranci tol a maximální počet iterací N.
- Pro n = 0,1,2,... do N − 1 proveďte:
- Vypočítejte f(xn) a f'(xn).
- Pokud |f'(xn)| je velmi malé, zvažte ukončení nebo změnu metody.
- Vypočítejte xn+1 = xn − f(xn)/f'(xn).
- Pokud |xn+1 − xn| < tol nebo |f(xn+1)| < tol, ukončete s úspěchem.
- Pokud nebylo dosaženo tolerance do N iterací, považujte výsledek za nedostatečný nebo změňte počáteční odhad.
Příklad
Najděme kladnou nulu f(x) = x2 − 2 (tj. sqrt(2)). Iterační vzorec je xn+1 = xn − (xn2 − 2)/(2 xn) = (xn + 2/xn)/2.
Při x0 = 1 dostaneme:
- x1 = (1 + 2/1)/2 = 1.5
- x2 = (1.5 + 2/1.5)/2 ≈ 1.4166667
- x3 ≈ 1.4142136 (již přesná na 7 desetinných míst)
Tento příklad ilustruje rychlou (kvadratickou) konvergenci Newtonovy metody, pokud je počáteční odhad rozumný.
Závěr
Newtonova‑Raphsonova metoda je účinný a rychlý nástroj pro hledání kořenů, zvláště když jsou k dispozici derivace a počáteční odhad je blízký řešení. V praxi je však potřeba dbát na možná rizika — zejména na body, kde je derivace malá nebo nulová — a v případě potřeby použít modifikace či kombinovat s jinými metodami pro zajištění spolehlivosti.

