Metoda sečen

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Metoda sečen je iterační numerická metoda užívaná v numerické matematice k hledání kořene funkce jedné reálné proměnné (tj. hledání nějakého řešení rovnice f(x)=0). K nalezení řešení je obvykle potřeba méně iterací než u metody půlení intervalů. Jako u jiných numerických metod, ani metoda sečen není univerzální a může nastat případ, kdy nekonverguje ke správnému řešení. V těchto případech je nutné použít jinou numerickou metodu.

Popis algoritmu

Jak funguje metoda sečen

Na začátku je zapotřebí určit dvě počáteční hodnoty x_0 a x_1, které by měly být co nejblíže řešení rovnice f(x)=0. Tento kořen nemusí ležet mezi hodnotami x_0 a x_1. +more Pokud však je funkce f spojitá a její funkční hodnoty v bodech x_0 a x_1 mají opačná znaménka, nachází se v intervalu (x_0, x_1) alespoň jeden kořen. Sečna je v tomto případě lineární interpolací funkce f. Nejsou-li tyto podmínky splněny, výpočet metodou sečen může selhat (a funkce ani nemusí mít reálný kořen).

Pomocí bodů x_0 a x_1 je dána rovnice sečny ke grafu funkce f(x)=0 v bodech P_0=[x_0,f(x_0)] a P_1=[x_1,f(x_1)] ve tvaru:

y = f(x_1) + \frac{f(x_1)-f(x_0)}{x_1-x_0} (x-x_1).

V druhé iteraci musíme určit hodnotu x_2. Hodnota x_2 je průsečíkem sečny dané body x_0 a x_1 a osy x. +more Stačí do rovnice sečny dosadit y=0 a vyjádřit x. Dostaneme rovnici:.

x = x_1 - \frac{f(x_1)(x_1-x_0)}{f(x_1)-f(x_0)},

jejímž řešením je hledaná hodnota x_2. Dále pokračujeme v algoritmu, kde pro n > 0 se hodnota x_{n+1} vypočítá z hodnot x_n a x_{n-1} pomocí vztahu:

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

V algoritmu se pokračuje, dokud není splněna jedna z ukončujících podmínek.

Ukončení výpočtu

Metoda sečen je přibližná metoda. Výpočet se obvykle ukončuje, pokud absolutní hodnota rozdílu hodnot x_n a x_{n-1} je menší než požadovaná přesnost výsledku p > 0 tedy |x_n-x_{n-1}|

Pokud nejsou splněny podmínky konvergence metody, může se stát, že by výpočet nikdy neskončil. Proto by měl algoritmus obsahovat omezení počtu iterací, jehož dosažení se interpretuje jako selhání metody.

Příklad

Zadání

Najděte kořen rovnice x^3-4x^2+6x-24 = 0 v intervalu \langle 3, 5 \rangle a přesností p=0{,}01.

Řešení

Za počáteční hodnoty zvolíme x_0 = 3 a x_1 = 5. Počítáme dosazováním do vzorce:

x_2 = x_1 - \frac{f(x_1)(x_1-x_0)}{f(x_1)-f(x_0)} = 5 - \frac{31 (5 - 3)}{31 - (-15)} = 3{,}652174.

Další iterace jsou znázorněny v tabulce:

nx_nf(x_n)p
23,652174-6,7263911,347826
33,892483-2,2741320,240309
44,0152290,3368940,122746
53,999391-0,0133880,015838
63,999997-0,0000740,000605

Z tabulky je patrné, že u šesté iterace je p a hledaný kořen rovnice x^3-4x^2+6x-24 = 0 v intervalu \langle 3, 5 \rangle a přesností p=0{,}01 je x = 4 .

(V tabulce je kořen 3,999997, ale s zaokrouhlením na setiny dostáváme 4)

Výhody a nevýhody

Mezi výhody této metody patří malý počet iterací pro nalezení kořene a snadné naprogramování algoritmu v programovacím jazyce. Naopak mezi nevýhody patří, že ne vždy dojde v této metodě ke konvergenci.

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top