MASARYKOVA UNIVERZITA V BRNĚ NELINEÁRNÍCH ROVNIC



Podobné dokumenty
Numerické řešení nelineárních rovnic

Základy matematické analýzy

Matematika III. Miroslava Dubcová, Daniel Turzík, Drahoslava Janovská. Ústav matematiky

Hledání kořenů rovnic jedné reálné proměnné metoda sečen Michal Čihák 23. října 2012

Numerická matematika 1

Numerické řešení rovnice f(x) = 0

Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady.

Numerické řešení nelineárních rovnic

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Přednáška 11, 12. prosince Část 5: derivace funkce

f(c) = 0. cn pro f(c n ) > 0 b n pro f(c n ) < 0

PŘEDNÁŠKA 2 POSLOUPNOSTI

Citlivost kořenů polynomů

Hledání kořenů rovnic jedné reálné proměnné metoda půlení intervalů Michal Čihák 23. října 2012

LEKCE10-RAD Otázky

9.2. Zkrácená lineární rovnice s konstantními koeficienty

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy...

Riemannův určitý integrál

Matematická analýza III.

1 Mnohočleny a algebraické rovnice

1 Mnohočleny a algebraické rovnice

Newtonova metoda. 23. října 2012

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

metoda Regula Falsi 23. října 2012

Derivace funkce DERIVACE A SPOJITOST DERIVACE A KONSTRUKCE FUNKCÍ. Aritmetické operace

DRN: Kořeny funkce numericky

Numerické řešení nelineárních rovnic

1 Lineární prostory a podprostory

1. Několik základních pojmů ze středoškolské matematiky. Na začátku si připomeneme následující pojmy:

Posloupnosti a jejich limity

Diferenciální počet 1 1. f(x) = ln arcsin 1 + x 1 x. 1 x 1 a x 1 0. f(x) = (cos x) cosh x + 3x. x 0 je derivace funkce f(x) v bodě x0.

Derivace funkce Otázky

Zavedení a vlastnosti reálných čísel

Základy teorie množin

Nelineární obvody. V nelineárních obvodech však platí Kirchhoffovy zákony.

Posloupnosti a řady. 28. listopadu 2015

Matematická analýza pro informatiky I. Limita funkce

5.3. Implicitní funkce a její derivace

Posloupnosti a jejich konvergence POSLOUPNOSTI

METODA PŮLENÍ INTERVALU (METODA BISEKCE) METODA PROSTÉ ITERACE NEWTONOVA METODA

5. Lokální, vázané a globální extrémy

Lineární algebra : Polynomy

Matematická analýza pro informatiky I. Limita posloupnosti (I)

úloh pro ODR jednokrokové metody

[1] Definice 1: Polynom je komplexní funkce p : C C, pro kterou. pro všechna x C. Čísla a 0, a 1,..., a n nazýváme koeficienty polynomu.

Pavlína Matysová. 5. listopadu 2018


Zimní semestr akademického roku 2014/ prosince 2014

Kapitola 4: Průběh funkce 1/11

Funkce jedn e re aln e promˇ enn e Derivace Pˇredn aˇska ˇr ıjna 2015

Čebyševovy aproximace

Důvodů proč se zabývat numerickou matematikou je více. Ze základní školy si odnášíme znalost, že číslo

PRIMITIVNÍ FUNKCE. Primitivní funkce primitivní funkce. geometrický popis integrály 1 integrály 2 spojité funkce konstrukce prim.

10. cvičení - LS 2017

Je založen na pojmu derivace funkce a její užití. Z předchozího studia je třeba si zopakovat a orientovat se v pojmech: funkce, D(f), g 2 : y =

Báze a dimenze vektorových prostorů

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech

pouze u některých typů rovnic a v tomto textu se jím nebudeme až na

Interpolace, ortogonální polynomy, Gaussova kvadratura

Věta o dělení polynomů se zbytkem

Numerické metody a programování. Lekce 7

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

Posloupnosti a jejich konvergence

PRIMITIVNÍ FUNKCE DEFINICE A MOTIVACE

BAKALÁŘSKÁ PRÁCE. Numerické metody jednorozměrné minimalizace

Elementární křivky a plochy

Těleso racionálních funkcí

Greenova funkce pro dvoubodové okrajové úlohy pro obyčejné diferenciální rovnice

Řešení nelineárních rovnic

Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT. Monotónie. Konvexita. V této části budou uvedena některá použití derivací.

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ

7. Funkce jedné reálné proměnné, základní pojmy

Limita a spojitost funkce a zobrazení jedné reálné proměnné

7B. Výpočet limit L Hospitalovo pravidlo

Limita a spojitost funkce

Bakalářská matematika I

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

Soustavy nelineárních rovnic pomocí systému Maple. Newtonova metoda.

Funkce jedné reálné proměnné. lineární kvadratická racionální exponenciální logaritmická s absolutní hodnotou

Extrémy funkce dvou proměnných

MATLAB a numerické metody

Matematická analýza III.

Důkaz Heineho Borelovy věty. Bez újmy na obecnosti vezmeme celý prostor A = M (proč? úloha 1). Implikace. Nechť je (M, d) kompaktní a nechť.

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky

Občas se používá značení f x (x 0, y 0 ), resp. f y (x 0, y 0 ). Parciální derivace f. rovnoběžného s osou y a z:

BAKALÁŘSKÁ PRÁCE. Metody pro výpočet kořenů polynomů

Q(y) dy = P(x) dx + C.

Určete (v závislosti na parametru), zda daný integrál konverguje, respektive zda konverguje. dx = t 1/α 1 dt. sin x α dx =

Matematika (KMI/PMATE)

IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel

Hledání extrémů funkcí

Kapitola 4: Průběh funkce 1/11

ALGEBRA. 1. Pomocí Eukleidova algoritmu najděte největší společný dělitel čísel a a b. a) a = 204, b = 54, b) a = , b =

Management rekreace a sportu. 10. Derivace

Zimní semestr akademického roku 2015/ ledna 2016

Soustavy lineárních rovnic

Funkce a lineární funkce pro studijní obory

1 Linearní prostory nad komplexními čísly

Transkript:

MASARYKOVA UNIVERZITA V BRNĚ PŘÍRODOVĚDECKÁ FAKULTA NUMERICKÉ ŘEŠENÍ NELINEÁRNÍCH ROVNIC RIGORÓZNÍ PRÁCE Mgr. Michal Šmerek Brno 2005

ii Prohlášení: Prohlašuji, že předložená práce je mým původním autorským dílem, které jsem vypracoval samostatně. Veškerou literaturu a další zdroje, z nichž jsem při zpracování čerpal, v práci řádně cituji a jsou uvedeny v seznamu použité literatury. V Brně dne...

iii ABSTRAKT Práce se zabývá studiem nelineárních rovnic, se zřetelnou specializací na polynomické rovnice. Autor předkládá řadu metod, jak určit kořeny polynomické rovnice. Podrobně studuje citlivost kořenů na malou změnu polynomu. Je všeobecně známo, jak získat kořeny polynomů, jak je získat s předepsanou přesností. Méně se ale klade důraz na přesné určení polynomu, resp. jeho koeficientů. Práce dokládá, že i malá nepřesnost, byť i jen v jednom koeficientu polynomu, může významným způsobem ovlivnit hodnoty kořenů. Text práce je rozdělen do tří částí. V první části jsou uvedeny základní metody řešení nelineárních rovnic, jako je metoda půlení, metoda regula falsi, metoda sečen, Newtonova metoda a rozšířená Newtonova metoda. U každé z nich je popsán algoritmus, jež určuje posloupnost aproximací, která konverguje ke hledanému řešení. Je definován řád konvergence metody, u jednotlivých metod je tento řád stanoven a většinou i dokázán. Srovnání jednotlivých metod z hlediska rychlosti konvergence je rovněž demonstrováno na testovacím příkladu. Druhá a třetí část práce se věnuje speciálnímu typu nelineárních rovnic, problematice polynomických rovnic. První z nich popisuje výpočet reálných kořenů polynomu libovolného stupně. Nejprve je vyložen postup, jak určit největší kořen daného polynomu, a následně je prezentován algoritmus pro získání všech ostatních kořenů polynomu. Je předložena dvojkroková metoda, která může nalezení kořenů polynomu značně urychlit ve srovnání s Newtonovou metodou. Práce obsahuje srovnání dvou metod pro určení všech kořenů polynomu, Maehlyho metody a metody dělení kořenovým činitelem. V posledním oddíle je pozornost zaměřena na citlivost kořenů polynomu. Je zde popsána závislost změny kořenů na malé změně některého z koeficientů polynomu. V souvislosti s tím je definován pojem špatně podmíněný polynom. Všechny části práce jsou proloženy názornými příklady. Vlastní výsledky autora jsou obsaženy ve druhé a třetí části práce. Hlubší studium této problematiky je nemyslitelné bez využití výpočetní techniky. Naopak, všechny v práci uváděné postupy jsou dobře algoritmizovatelné. Proto může studované téma dobře posloužit jako oblast matematiky vyučovaná s podporou počítače.

1 Obsah Předmluva a historický úvod 2 1 Metody řešení nelineárních rovnic 5 1.1 Metoda prosté iterace......................... 6 1.2 Metoda půlení............................. 9 1.3 Metoda regula falsi.......................... 12 1.4 Metoda sečen............................. 18 1.5 Metoda Newtonova.......................... 20 1.6 Rozšířená Newtonova metoda.................... 23 1.7 Srovnání metod............................ 26 2 Výpočet kořenů polynomu 27 2.1 Určení největšího kořene polynomu................. 27 2.2 Určení ostatních kořenů polynomu.................. 33 3 Citlivost kořenů polynomu 37 3.1 Špatně podmíněné polynomy..................... 37 3.2 Příklady polynomů druhého stupně................. 39 3.3 Polynom vyššího stupně....................... 46 Závěr 50 Literatura 51 Přílohy 53 Životopis................................... 53 Publikační činnost............................. 54 CD-ROM.................................. 55

Předmluva a historický úvod 2 Předmluva a historický úvod Tématem práce je studium nelineárních rovnic, přičemž hlavní pozornost je věnována problematice řešení polynomických rovnic. Autor předkládá řadu metod, jak určit kořeny polynomické rovnice. Podrobně studuje citlivost kořenů na malou změnu polynomu. Je všeobecně známo, jak získat kořeny polynomů, jak je získat s předepsanou přesností. Méně se ale klade důraz na přesné určení polynomu, resp. jeho koeficientů. Práce dokládá, že i malá nepřesnost, byť i jen v jednom koeficientu polynomu, může významným způsobem ovlivnit hodnoty kořenů. Cílem práce bylo klasifikovat metody řešení nelineárních rovnic, popsat je a posoudit je z hlediska rychlosti konvergence. Těžištěm práce je ovšem problematika výpočtu kořenů polynomů a zkoumání citlivosti těchto kořenů na malé změny koeficientů polynomu. Text práce je rozdělen do tří částí. V první části jsou uvedeny základní metody řešení nelineárních rovnic, jako je metoda půlení, metoda regula falsi, metoda sečen, Newtonova metoda a rozšířená Newtonova metoda. U každé z nich je popsán algoritmus, jež určuje posloupnost aproximací, která konverguje ke hledanému řešení. Je definován řád konvergence metody, u jednotlivých metod je tento řád stanoven a většinou i dokázán. Srovnání jednotlivých metod z hlediska rychlosti konvergence je rovněž demonstrováno na testovacím příkladu. Druhá a třetí část práce se věnuje speciálnímu typu nelineárních rovnic, problematice polynomických rovnic. První z nich popisuje výpočet reálných kořenů polynomu libovolného stupně. Nejprve je vyložen postup, jak určit největší kořen daného polynomu, a následně je prezentován algoritmus pro získání všech ostatních kořenů polynomu. Je předložena dvojkroková metoda, která může nalezení kořenů polynomu značně urychlit ve srovnání s Newtonovou metodou. Práce obsahuje srovnání dvou metod pro určení všech kořenů polynomu, Maehlyho metody a metody dělení kořenovým činitelem. V poslední kapitole je pozornost zaměřena na citlivost kořenů polynomu. Je zde popsána závislost změny kořenů na malé změně některého z koeficientů polynomu. V souvislosti s tím je definován pojem špatně podmíněný polynom. V tomto ohledu je zvlášť diskutován případ jednoduchého kořene a násobného kořene. Ukázalo se totiž, že při velmi malé změně koeficientu polynomu probíhá změna jednotkového kořene kvalitativně odlišně než změna násobného kořene. Všechny části práce jsou proloženy názornými příklady. Práce obsahuje 26 obrázků a 21 tabulek. Byly zpracovány systémem MATLAB. Vlastní výsledky autora jsou obsaženy ve druhé a třetí části práce. Hlubší studium této problematiky je nemyslitelné bez využití výpočetní techniky. Naopak, všechny v práci uváděné postupy jsou dobře algoritmizovatelné. Dokladem toho je množství souborů na nosiči CD-ROM, jež je nedílnou součástí předkládané práce, viz příloha. Na CD-ROMu lze, kromě elektronické verze samotné práce, nalézt i programy, jež obsahují většinu v práci použitých algoritmů (m-soubory). Dále CD-ROM obsahuje také grafické výstupy (fig-soubory). Studované téma proto může dobře posloužit jako oblast matematiky vyučovaná

Předmluva a historický úvod 3 s podporou počítače. Zajímavý je i pohled na historický vývoj tohoto oboru (podrobněji viz článek [9]). Problém řešení polynomické rovnice kde p(x) = 0, (0.1) p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0, (0.2) je polynom s reálnými koeficienty, byl znám již Sumerům ve 3. tis. před n. l. a hluboce ovlivnil rozvoj matematiky během mnoha staletí. Studium tohoto problému mělo velký význam pro rozvoj abstraktního myšlení a matematického zápisu. Motivovalo vznik a rozvoj mnoha odvětví matematiky, jako je teorie komplexních čísel, algebra, numerická matematika. Hlavním krokem v historii studia polynomických rovnic bylo uvážení problému v obecném abstraktním tvaru (0.2). Tento krok trval tisíciletí a vedl k zavedení moderního matematického formalismu. Mezitím, počínaje Sumerským a Babylonským obdobím, se studium zaměřilo na rovnice nižších řádů se speciálními koeficienty. Řešení speciálních kvadratických rovnic Babyloňany (kolem 2000 př. n. l.) a Egypťany, nalezené ve Rhindově a Ahmesově papyru (z 2. tis. př. n. l.), odpovídá užití našeho školního vzorce x 1,2 = a 1 ± a 2 1 4a 2 a 0 2a 2. (0.3) Pro plné pochopení tohoto vzorce je třeba znát teorii záporných, iracionálních a komplexních čísel. Důležitý úspěch v této oblasti byl formální důsledný důkaz Pythagorejců (kolem 500 př. n. l. ve starověkém Řecku), že rovnice x 2 = 2 nemá racionální řešení, že řešení musí užít odmocnin a ne jen aritmetické operace. Snahy nalézt formuli, která by, podobně jako (0.3), zahrnovala jen aritmetické operace a odmocniny, uspěly v 16. století pro polynomy stupňů 3 a 4 (Scipione del Ferro, Nicolo Tartaglia, Ludovico Ferrari, Geronimo Cardano), ale hluboký vliv na matematiky mělo především selhání všech pokusů nalézt takovou formuli pro jakýkoli polynom stupně většího než 4. Přesněji řečeno takové pokusy vedly k větě, získané Ruffinim v roce 1813 a Abelem 1827, o neexistenci takové formule pro třídu polynomů stupně n pro žádné n > 4 a ke Galoisově fundamentální teorii z r. 1832. Tato teorie obsahuje důkaz neexistence řešení rovnice (0.2) ve tvaru formule s odmocninami již pro jednoduché speciální polynomické rovnice s přirozenými koeficienty, takové jako x 5 4x 2 = 0. Navzdory absenci řešící formule obecně platí základní věta algebry: Rovnice (0.1) má vždy (komplexní) řešení pro každý polynom p(x) každého kladného stupně n. Různé verze této věty podali Roth (1608), Girard (1629) a Descartes (1637), dále potom Rahn (1659), Newton (1685) a Maclaurin. Dokázat se povedla až v 19. století. Několik neúplných či chybných důkazů bylo již předtím

Předmluva a historický úvod 4 podáno D Alembertem, Eulerem, Lagrangem a Gaussem (v jeho doktorské disertační práci v r. 1799). Chybu v Gaussově důkazu odstranil Ostrowski v r. 1920. Je snadné rozšířit základní větu algebry prokázáním existence faktorizace n p(x) = a n (x ξ i ) pro každý polynom p(x), kde a n 0, takový, že ξ 1, ξ 2,..., ξ n i=1 je n kořenů polynomu p(x) (ne nutně všechny rozdílné) a jsou jediným řešením rovnice (0.1). Po zjištění, že neexistuje přesná řešící formule, úsilí matematiků přešlo do navrhování iteračních algoritmů pro aproximaci řešení. V současné době seznam iteračních algoritmů navržených pro aproximaci řešení ξ 1, ξ 2,..., ξ n rovnice (0.1) obsahuje stovky položek zahrnující období 4 tisíc let. Ve skutečnosti není důležité, zda počítač řešení získá pomocí formule nebo ne. Řešení je totiž zpravidla iracionální a tedy stejně nemůže být počítáno úplně přesně. S rozvojem vědy a techniky, se vznikem mnoha nových aplikací, vyvstává potřeba řešit polynomické rovnice řádu několika stovek či tisíců. Navíc se často požaduje vysoká přesnost stovek koeficientů i vlastního řešení. V těchto případech řešení rovnice (0.1) je problematické, a to motivuje další výzkum nových efektivních algoritmů pro řešení rovnice (0.1). Úsilí a zájem vědců v tomto směru je takový, že nové algoritmy pro řešení (0.1) se stále objevují každý rok.

Metody řešení nelineárních rovnic 5 1 Metody řešení nelineárních rovnic Hledejme reálné kořeny rovnice f(x) = 0, (1.1) kde x je reálná proměnná a f(x) je v nějakém smyslu rozumná funkce. Především budeme požadovat, aby funkce f(x) byla spojitá na nějakém intervalu. Předpokládejme, že kořen ξ rovnice (1.1) nelze nalézt v algebraickém tvaru. Musíme tedy hledat metody, které vedou k přibližnému řešení. Při řešení rovnice (1.1) můžeme užít následující věty. Věta 1.1 Nechť f je funkce spojitá na intervalu a, b a nechť v koncových bodech tohoto intervalu nabývá hodnot s opačnými znaménky, tj. f(a)f(b) < 0. Pak v intervalu (a, b) leží aspoň jeden kořen rovnice (1.1). Jestliže navíc existuje derivace f funkce f a má konstantní znaménko v intervalu (a, b), pak funkce f(x) má v intervalu (a, b) právě jeden kořen ξ. Důkaz: Funkce f je spojitá na intervalu a, b. Nechť bez újmy na obecnosti je např. f(a) < 0 < f(b). Potom platí Speciálně h f(a), f(b) x a, b : f(x) = h. 0 (f(a), f(b)) ξ (a, b) : f(ξ) = 0. Tím je dokázána první část věty. Dále předpokládáme, že je buď f (x) > 0 x (a, b), anebo f (x) < 0 x (a, b). Nechť ξ 1, ξ 2 (a, b) jsou kořeny funkce f, tzn. f(ξ 1 ) = 0, f(ξ 2 ) = 0. Pak je buď ξ 1 = ξ 2, anebo ξ 1 ξ 2. Pokud by bylo ξ 1 ξ 2, pak z věty o střední hodnotě platí, že x (ξ 1, ξ 2 ) : f (x) = 0, což je spor s předpokladem. Celkově, je-li f spojitá na a, b, f (x) > 0 (resp. f (x) < 0) x (a, b), a platí-li f(a)f(b) < 0, pak v intervalu a, b existuje právě jeden kořen. Všechny metody uvedené v této kapitole budeme aplikovat na příkladu nalezení nejmenšího kladného kořene funkce f(x) = cos x + x 2 1. (1.2) Graf této nelineární funkce je znázorněn na obrázku 1.

Metody řešení nelineárních rovnic 6 Obr. 1: Graf funkce f(x) = cos(x) + x/2 1 1.1 Metoda prosté iterace Nechť f(x) je spojitá reálná funkce, která má tolik derivací, kolik jich bude v dalším třeba. Problém nalezení kořene rovnice (1.1) můžeme převést na ekvivalentní problém nalezení pevného bodu funkce F, tj. řešení rovnice Pevný bod budeme označovat ξ. x = F (x). (1.3) Věta 1.2 Nechť F je taková spojitá funkce, že x a, b : F (x) a, b. Pak funkce F má v intervalu a, b pevný bod. Jestliže funkce F navíc splňuje Lipschitzovu podmínku, tj. F (x) F (y) q x y, x, y a, b, 0 q < 1, pak F má v intervalu a, b jediný pevný bod. Důkaz: Jestliže F (a) = a, je a pevným bodem funkce F. Jestliže F (b) = b, je b pevným bodem funkce F. Předpokládejme dále, že F (a) > a, F (b) < b. Uvažujme funkci g, g(x) = F (x) x. Zřejmě g(x) je spojitá funkce na intervalu a, b a platí g(a) = F (a) a > 0, g(b) = F (b) b < 0.

Metody řešení nelineárních rovnic 7 Z věty 1.1 plyne, že existuje bod ξ (a, b) : g(ξ) = 0, tj. F (ξ) ξ = 0 F (ξ) = ξ, a tedy ξ je pevným bodem funkce F (x). Nechť F (x) splňuje Lipschitzovu podmínku s konstantou q, 0 q < 1. Předpokládejme, že existují dva různé pevné body ξ, η a, b. Platí ξ η = F (ξ) F (η) q ξ η < ξ η, což je spor a tedy ξ = η. Důsledek 1.3 Nechť F je taková spojitá funkce, že x a, b : F (x) a, b. Nechť v každém bodě x a, b existuje derivace F (x) splňující podmínku F (x) q < 1, pak F má v intervalu a, b jediný pevný bod. Důkaz: Plyne z věty o střední hodnotě: F (x) F (y) = F (α) x y q x y, α a, b. Nechť jsou splněny předpoklady věty 1.2. Zvolme libovolnou počáteční aproximaci x 1 a, b. Generujme posloupnost {x i } i=1 následovně: x i+1 = F (x i ), i = 1, 2, 3,... (1.4) Funkce F se nazývá iterační funkce a metoda (1.4) se nazývá iterační metoda nebo také metoda prosté iterace. Uvedená iterační metoda (1.4) je metodou jednobodovou, neboť výpočet aproximace x i+1 závisí pouze na předchozí aproximaci x i. Obecnější jsou potom n-bodové iterační metody, které mají tvar x i+1 = F (x i, x i 1,..., x i n+1 ), i = n, n + 1, n + 2,.... (1.5) Aproximace x i+1, daná vztahem (1.5), vždy závisí na n bezprostředně předchozích aproximacích. V tom případě hovoříme o stacionární iterační metodě. Ještě obecněji lze uvažovat nestacionární n-bodovou iterační metodu, x i = F (x k1, x k2,..., x kn ), i = n + 1, n + 2,..., i > k 1 > k 2 > > k n. (1.6) Zde aproximace x i závisí vždy na n předchozích aproximacích, avšak ne nutně bezprostředně předcházejících aproximaci x i. Jak uvidíme dále, metoda půlení (viz odstavec 1.2) či metoda regula falsi (viz odstavec 1.3) jsou příklady dvoubodových nestacionárních metod; metoda sečen (viz odstavec 1.4) je dvoubodovou stacionární metodou; metoda Newtonova (viz odstavec 1.5) a rozšířená Newtonova metoda (viz odstavec 1.6) jsou zástupci jednobodových (stacionárních) metod. Otázkou nyní je, za jakých předpokladů a jak rychle bude posloupnost (1.4), resp. (1.5), resp. (1.6) konvergovat k pevnému bodu ξ. Právě z hlediska rychlosti konvergence má význam zavedení pojmu řád iterační metody.

Metody řešení nelineárních rovnic 8 Definice 1.4 Předpokládejme, že iterační metoda (1.4), resp. (1.5), resp. (1.6) je konvergentní, tj. lim i x i = ξ. Existuje-li reálné číslo p 1 takové, že platí x i+1 ξ lim i x i ξ p = C 0, říkáme, že iterační metoda je řádu p. Konstanta C se nazývá asymptotickou konstantou chyby a závisí na iterační funkci F. Požadavek C 0 značí, že C 0 pro obecnou funkci F. Tento požadavek zaručuje jednoznačnost čísla p. Je-li p = 1, musí být C 1, aby metoda konvergovala. V tom případě říkáme, že metoda konverguje lineárně. Jestliže pro nějakou funkci F je C = 0, pak daná iterační metoda konverguje rychleji než obvykle. Věta 1.5 Nechť funkce F má v okolí bodu ξ derivace až do řádu p 1 včetně. Iterační metoda (1.4) je řádu p, právě tehdy, když ξ = F (ξ), F (j) (ξ) = 0, j = 1, 2,..., p 1, F (p) (ξ) 0. Důkaz: Taylorův rozvoj funkce F (x) v okolí bodu ξ je F (x i ) = ξ + (x i ξ)f (ξ) +... + (x i ξ) (p 1) F (p 1) (ξ) + (x i ξ) p F (p) (α) = (p 1)! p! = ξ + (x i ξ) p F (p) (α), (1.7) p! kde bod α leží v intervalu určeném body x i a ξ. Protože x i+1 = F (x i ), dostáváme ze vztahu (1.7) x i+1 ξ = (x i ξ) p F (p) (α), (1.8) p! a odtud x i+1 ξ lim i x i ξ p = F (p) (ξ) Metoda je tedy řádu p, p N. Naopak, nechť j, 1 j < p : F (j) (ξ) 0. Pak z (1.7) plyne, že metoda nemůže být řádu p. Stejně tak, jestliže platí F (p) (ξ) = 0, pak z (1.8) plyne, že metoda není řádu p. Věta 1.6 Nechť F je taková spojitá funkce, že x a, b : F (x) a, b. Nechť funkce F splňuje Lipschitzovu podmínku, tj. p! 0 F (x) F (y) q x y, x, y a, b, 0 q < 1. Pak pro libovolnou počáteční aproximaci x 1 a, b je posloupnost {x i } i=1, x i = F (x i 1 ), konvergentní a platí lim i x i = ξ, kde ξ je pevný bod funkce F.

Metody řešení nelineárních rovnic 9 Důkaz: Platí F (x) a, b x a, b, a tedy pro x 1 a, b je posloupnost {x i } i=1, x i = F (x i 1 ) definovaná a x i a, b pro i = 1, 2,.... Dále platí Odtud indukcí dostaneme Protože 0 q < 1, platí x i ξ = F (x i 1 ) F (ξ) q x i 1 ξ. x i ξ q i 1 x 1 ξ. lim x i ξ = 0, i a tedy posloupnost {x i } i=1 konverguje k pevnému bodu ξ. V následujících odstavcích se s některými iteračními metodami seznámíme blíže. 1.2 Metoda půlení Metoda půlení neboli metoda bisekce je jednoduchou numerickou metodou pro výpočet kořene rovnice (1.1). Je založena na tvrzení věty 1.1. Metodu nyní popíšeme. Nechť jsou splněny předpoklady věty 1.1, tj. f je spojitá funkce na intervalu a, b. Předpokládejme dále, že na intervalu a, b má funkce f právě jeden kořen. Položíme a 1 = a, b 1 = b, x 1 = 1 2 (a 1 + b 1 ). Nastane jedna ze tří možností: 1. Je-li f(a 1 )f(x 1 ) < 0, leží kořen ξ v intervalu a 1, x 1, položíme a 2 = a 1, b 2 = x 1. 2. Je-li f(x 1 )f(b 1 ) < 0, leží kořen ξ v intervalu x 1, b 1, položíme a 2 = x 1, b 2 = b 1. 3. Je-li f(x 1 ) = 0, je x 1 = ξ a kořen je nalezen. Položíme a 2 = a 3 = = ξ a b 2 = b 3 = = ξ. V prvních dvou případech jsou splněny předpoklady věty 1.1, opakujeme postup pro interval a 2, b 2. V každém případě získáme posloupnost intervalů a 1, b 1 a 2, b 2... a i, b i..., přičemž f(a i )f(b i ) 0, i = 1, 2,.... Platí: a 1 a 2 ξ, Délky intervalů jsou dány vztahem b 1 b 2 ξ. b i a i = b a, i = 1, 2,..., (1.9) 2i 1

Metody řešení nelineárních rovnic 10 případně b i a i = 0, i = k, k + 1,..., (1.10) v případě, že jsme v k-tém kroku našli kořen ξ, tj. nastala třetí možnost. Protože i N : a a i ξ b i b a lim i (b i a i ) = 0, platí lim a i = lim b i = ξ. i i Ukážeme, že ξ je kořenem rovnice f(x) = 0. Funkce f je spojitá a platí Dále Odtud plyne, že f(ξ) = 0. f(a i )f(b i ) 0, i = 1, 2,.... lim f(a i)f(b i ) = lim f(a i ) lim f(b i ) = f 2 (ξ) 0. i i i Věta 1.7 Metoda půlení generuje posloupnost {x i } i=1, x i = a i+b i, která konverguje ke kořenu ξ, přičemž chyba i-té aproximace 2 je x i ξ b a 2 i, i = 1, 2,.... (1.11) Důkaz: Platnost věty plyne z předchozích úvah a z faktu, že kořen ξ leží v intervalu a i, b i, jehož délka je dána vztahem (1.9), příp. (1.10), a ze skutečnosti, že aproximace x i půlí tento interval. Poznámka 1.8 Metodu půlení lze ekvivalentním způsobem zapsat také pomocí vztahu x i = x i 1 + x s, i = 1, 2,..., (1.12) 2 kde označíme x 1 = a, x 0 = b a s = s(i), 1 s i 2 je největší index takový, že f(x i 1 )f(x s ) < 0. Poznámka 1.9 Metoda půlení má řád konvergence roven jedné. Pokud vyloučíme singulární možnost, že v k-tém kroku najdeme kořen ξ, můžeme odhadnout (shora) chybu aproximace x i výrazem b a 2 i, viz vztah (1.11), tj. Potom x i ξ b a 2 i, i = 1, 2,.... x i+1 ξ x i ξ což ukazuje na to, že řád metody půlení je roven jedné. 1 2, (1.13) Příklad 1.1 Metodou půlení určete kořen funkce f(x) = cos(x) + x/2 1 ležící v intervalu π 4, π 2.

Metody řešení nelineárních rovnic 11 Snadno lze určit hodnoty funkce f v krajních bodech daného intervalu, tj. f(π/4). = 0,100; f(π/2). = 0,215. Rovněž lze snadno vyšetřit, že derivace f (x) = sin x + 1/2 nabývá v intervalu π, π pouze záporných hodnot. Z věty 1.1 tedy plyne, že v daném intervalu 4 2 skutečně existuje právě jeden kořen funkce f. Vlastní výpočet metodou půlení je proveden v tabulce 1 postupem popsaným výše. Graficky je tento proces znázorněn na obrázku 2. Obr. 2: Metoda půlení, f(x) = cos(x) + x/2 1, a = π/4, b = π/2 i a i b i x i b i a i 1 1 π 1 π 3 π = 1,178 097 1 π 4 2 8 4 1 2 π 3 π 5 π = 0,981 748 1 π 4 8 16 8 5 3 π 3 π 11 π = 1,079 922 1 π 16 8 32 16 11 4 π 3 π 23 π = 1,129 010 1 π 32 8 64 32 11 5 π 23 π 45 π = 1,104 466 1 π 32 64 128 64 45 6 π 23 π 91 π = 1,116 738 1 π 128 64 256 128 45 7 π 91 π 181 π = 1,110 602 1 π 128 256 512 256 45 8 π 181 π 361 π = 1,107 534 1 π 128 512 1024 512 Tab. 1: Metoda půlení, f(x) = cos(x) + x/2 1, a = π/4, b = π/2

Metody řešení nelineárních rovnic 12 Z tabulky plyne, že x 8 = 361 π =. 1,107 534. 1024 Chyba aproximace je x 8 ξ 1 π =. 0,003 068. Hodnota funkce v tomto bodě 1024 je f(x 8 ) =. 0,000 636. 1.3 Metoda regula falsi Předpokládejme i zde, že f je spojitá funkce na intervalu a, b, pro níž platí f(a)f(b) < 0. Metoda půlení jako další aproximaci užívá středu intervalu a, b, bez ohledu na to, jakých hodnot nabývá funkce f v krajních bodech tohoto intervalu. Jiná situace je u metody regula falsi - užívá nulového bodu přímky vedené body [a, f(a)], [b, f(b)], viz obrázek 3. Obr. 3: Metoda regula falsi Z obrázku je zřejmé (na základě podobnosti trojúhelníků), že platí b x f(b) = b a f(b) f(a), (1.14) kde bod x označuje nulový bod dané přímky. Ze vztahu (1.14) snadno vyjádříme hodnotu x b a x = b f(b). (1.15) f(b) f(a) Položíme-li a = x 1, b = x 2, můžeme pomocí vztahu (1.15) vyjádřit následující

Metody řešení nelineárních rovnic 13 iteraci x 2 x 1 x 3 = x 2 f(x 2 ) f(x 1 ) f(x 2). (1.16) Pro další výpočet je potřeba vzít v úvahu bod x 3 a ten z bodů x i (i = 1, 2), který splňuje podmínku f(x 3 )f(x i ) < 0. Obecně můžeme iteraci x i+1 počítat podle vzorce x i+1 = x i x i x s f(x i ) f(x s ) f(x i), i = 2, 3,..., (1.17) kde s = s(i) < i je největší index, pro něž platí f(x i )f(x s ) < 0. Věta 1.10 Nechť f je funkce spojitá na intervalu a, b a nechť v koncových bodech tohoto intervalu nabývá hodnot s opačnými znaménky, tj. f(a)f(b) < 0. Nechť v intervalu (a, b) leží právě jeden kořen ξ. Nechť funkce f má na intervalu a, b spojité derivace f (x) a f (x). Dále nechť derivace f (x), ani f (x) nemění znaménko v intervalu a, b. Pak metoda regula falsi generuje posloupnost {x i } i=1, která konverguje ke kořenu ξ. Řád konvergence metody regula falsi je roven jedné. Důkaz: Předpokládejme např.: 1) f (x) < 0 x a, b, 2) f (x) > 0 x a, b, viz situace znázorněná na obrázku 4. Obr. 4: Metoda regula falsi

Metody řešení nelineárních rovnic 14 Předpoklad 1) spolu s podmínkou f(a)f(b) < 0 implikuje f(a) > 0, f(b) < 0. Zvolme počáteční aproximace x 1 = a, x 2 = b. Bod x 3 je definován vztahem (1.16). Platí pro něj x 2 > x 3 > ξ. Přitom, první nerovnost plyne přímo ze vztahu (1.16) uvědomíme-li si, že x 2 x 1 > 0, f(x 2 ) f(x 1 ) < 0, f(x 2 ) < 0; druhá nerovnost plyne z toho, že f je funkce konvexní a klesající, a tedy průsečík sečny s osou x leží vpravo od kořene ξ. Dále, f(x 3 ) < 0, takže indukcí plyne obecný vztah x i+1 = x i x i x 1 f(x i ) f(x 1 ) f(x i), f(x i )f(x 1 ) < 0, i = 2, 3,.... (1.18) To znamená, že všechny sečny prochází bodem [x 1, f(x 1 )]. Posloupnost {x i } i=2 zřejmě monotónně konverguje k bodu ξ: x 2 > x 3 > > x i > x i+1 > > ξ, lim i x i = ξ. Pro tento případ ukážeme, že řád metody je roven jedné. Odečteme-li od obou stran rovnice (1.18) hodnotu ξ, dostáváme Odtud po úpravě x i+1 ξ x i ξ x i+1 ξ = x i ξ x i x 1 f(x i ) f(x 1 ) f(x i), i = 2, 3,.... = 1 x i x 1 f(x i ) f(x i ) f(x 1 ) x i ξ = 1 1 k(x i, x 1 ) k(x i, ξ), i = 2, 3,..., (1.19) kde k(x i, x 1 ) je směrnice sečny s i1 procházející body [x i, f(x i )], [x 1, f(x 1 )]; k(x i, ξ) je směrnice sečny s iξ procházející body [x i, f(x i )], [ξ, 0]. Jelikož posloupnost {x i } i=2 konverguje k bodu ξ, tj. lim x i = ξ, potom, v limitním i přechodě i, přejde sečna s i1 v sečnu s procházející body [ξ, 0] a [x 1, f(x 1 )], sečna s iξ přejde v tečnu t funkce f v bodě ξ, viz obrázek 4. Můžeme tedy vztah (1.19) přepsat takto: x i+1 ξ lim i x i ξ = 1 1 k(ξ, x 1 ) f (ξ) = c, (1.20) kde c je konstanta, c (0, 1), viz poznámka 1.11. Podobně bychom poslední vztah odvodili i pro ostatní případy. Z uvedeného plyne, že metoda regula falsi má za daných předpokladů řád konvergence roven jedné. Poznámka 1.11 Ukážeme, že c ve vztahu (1.20) je konstantou z intervalu (0, 1). Směrnice k(ξ, x 1 ) sečny s a směrnice f (ξ) tečny t mají stejná znaménka, neboť platí předpoklad 1), tj. f (x) < 0 x a, b, a body x 1 i ξ leží v intervalu a, b. Z věty o střední hodnotě plyne, že η (x 1, ξ) : f (η) = k(ξ, x 1 ).

Metody řešení nelineárních rovnic 15 Jelikož a < η < ξ < b, a z platnosti předpokladů 1) a 2) plyne k(ξ, x 1 ) = f (η) > f (ξ). (Tzn., že sečna s je vždy strmější než tečna t.) 1 Odtud už je zřejmé, že c = 1 k(ξ, x 1 ) f (ξ) = konst. (0, 1). Na tomto místě ještě poznamenejme, že konvergence je tím rychlejší, čím je konstanta c blíže číslu nula. Pokud je číslo c blízké číslu jedna, je naopak konvergence velice pomalá. Tuto situaci demonstruje příklad 1.3. Poznámka 1.12 Předpoklad o konstantním znaménku funkcí f (x) a f (x) na intervalu a, b je ve větě nadbytečný. Důkaz příslušné obecnější (bez tohoto předpokladu) věty by byl poněkud složitější a obsáhlejší. Příklad 1.2 Metodou regula falsi určete kořen funkce f(x) = cos(x) + x/2 1 ležící v intervalu 0,6; 1,5. Podle věty 1.1, lze snadno ověřit, že v intervalu 0,6; 1,5 leží právě jeden kořen. Jednotlivé aproximace určené metodou regula falsi (viz vztah (1.17) jsou uspořádány do tabulky 2. Postup je patrný z obrázku 5. Obr. 5: Metoda regula falsi; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,6

Metody řešení nelineárních rovnic 16 i x i f(x i ) 1 1,5 0,179 263 2 0,6 0,125 336 3 0,970 330 0,050 192 4 1,086 193 0,008 954 5 1,105 879 0,001 289 6 1,108 691 0,000 179 7 1,109 082 0,000 025 8 1,109 136 3,4.10 6 Tab. 2: Metoda regula falsi; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,6 Osmá aproximace kořene ξ je x 8 = 1,109 136 s funkční hodnotou f(x 8 ) = 3,4.10 6. Příklad 1.3 Metodou regula falsi určete kořen funkce f(x) = 1 1 ležící v intervalu 0,2; x 2 2 5. Snadno se ověří, že předpoklady věty 1.1 jsou splněny, a tedy, že v intervalu 0,2; 5 leží právě jeden kořen. Kořen ξ můžeme v tomto případě snadno určit algebraicky, tj. ξ = 2. = 1,414 213 562. Posloupnost {x i } i=1, viz tabulka 3, generovaná metodou regula falsi, konverguje velice pomalu. To je patrné i z obrázku 6. Detailní výřez, vytečkovanou obdélníkovou oblast, zachycuje obrázek 7. i x i i x i i x i 1 0,2 21 3,611 467 101 1,602 202 2 5 22 3,553 522 102 1,595 909 3 4,911 538 23 3,496 895 103 1,589 818 4 4,824 977 24 3,441 561 104 1,583 924 5 4,740 278 25 3,387 494 105 1,578 219 Tab. 3: Metoda regula falsi; f(x) = 1 1 x 2 2 ; x 1 = 0,2; x 2 = 5

Metody řešení nelineárních rovnic 17 Obr. 6: Metoda regula falsi; f(x) = 1 x 2 1 2 ; x 1 = 0,2; x 2 = 5 Obr. 7: Metoda regula falsi; detail obrázku 6

Metody řešení nelineárních rovnic 18 1.4 Metoda sečen Modifikací předchozí metody je metoda sečen. Zde upouštíme od požadavku, aby funkce f(x) měla různá znaménka v bodech, které používáme pro určení další aproximace. Na rozdíl od předchozích metod, metoda sečen užívá k určení další iterace vždy dvou bezprostředně předcházejících iterací. Říkáme, že metoda sečen je dvoubodová stacionární metoda (viz kap. 1.1 - vztah (1.5)), tj. x i+1 = x i x i x i 1 f(x i ) f(x i 1 ) f(x i), i = 2, 3,.... (1.21) Tato metoda znamená oproti metodě regula falsi podstatné zlepšení, a to především v rychlosti konvergence. Řád metody sečen je (1 + 5)/2. = 1,618, viz [6]. Nevýhodou je, že metoda při nevhodné volbě počátečních aproximací nemusí konvergovat. Takový případ je popsán v příkladu 1.5. Příklad 1.4 Metodou sečen určete kořen funkce f(x) = cos(x) + x/2 1. Počáteční aproximace zvolte x 1 = 1,5; x 2 = 0,6. Z příkladu 1.2 už víme, že v intervalu 0,6; 1,5 leží právě jeden kořen. Postup určování aproximací je patrný z obrázku 8. Jednotlivé aproximace jsou zapsány do tabulky 4. Obr. 8: Metoda sečen; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,6

Metody řešení nelineárních rovnic 19 i x i f(x i ) 1 1,5 0,179 263 2 0,6 0,125 336 3 0,970 330 0,050 192 4 1,217 693 0,045 342 5 1,100 291 0,003 482 6 1,108 664 0,000 190 7 1,109 147 9,6.10 7 8 1,109 144 2,6.10 10 Tab. 4: Metoda sečen; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,6 Získali jsme aproximaci x 8 = 1,109 144 s funkční hodnotou f(x 8 ) = 2,6.10 10. Další příklad demonstruje špatnou volbu počátečních aproximací. Příklad 1.5. Metodou sečen určete kořen funkce f(x) = cos(x) + x/2 1 v intervalu 0,3; 1,5. Počáteční aproximace zvolte x 1 = 1,5; x 2 = 0,3 (tj. krajní body intervalu). Jelikož funkce f nabývá v krajních bodech intervalu 0,3; 1,5 hodnot s opačnými znaménky (f(0,3). = 0,1053 a f(1,5). = 0,1793), leží v tomto intervalu alespoň jeden kořen (viz věta 1.1). Postup při výpočtu dalších aproximací je zřejmý z obrázku 9. Hodnoty těchto aproximací jsou uvedeny v tabulce 5. i x i f(x i ) 1 1,5 0,179 263 2 0,3 0,105 336 3 0,744 147 0,107 740 4 19,169 034 9,635 117 5 0,523 940 0,127 825 6 0,266 103 0,097 855 7 0,575 753 0,449 094 8 0,115 487 0,051 082 Tab. 5: Metoda sečen; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,3

Metody řešení nelineárních rovnic 20 Obr. 9: Metoda sečen; f(x) = cos(x) + x/2 1; x 1 = 1,5; x 2 = 0,3 Setkáváme se zde se situací, kdy dvě po sobě následující aproximace (v našem případě jsou to x 2 a x 3 ) mají relativně blízké funkční hodnoty. To má za důsledek, že následující aproximace (x 4 ) leží vně intervalu 0,3; 1,5. Posloupnost {x i } i=1 potom nekonverguje k hledanému kořenu (tj. z intervalu 0,3; 1,5 ). Poznámka 1.13 Samozřejmě, může také nastat případ, že se funkční hodnoty dvou po sobě následujících aproximací budou shodovat, tj. f(x i ) = f(x i 1 ), potom další aproximace není dokonce definována, viz vztah (1.21). 1.5 Metoda Newtonova Metoda sečen je dvoubodovou iterační metodou. Je založena na přímce procházející body [x i, f(x i )] a [x i 1, f(x i 1 )]. Následující aproximace x i+1 je definována jako nulový bod této přímky. Naproti tomu, Newtonova metoda následující aproximaci x i+1 definuje jako nulový bod přímky, jež je tečnou ke grafu funkce f s dotykem v bodě [x i, f(x i )], viz obrázek 10.

Metody řešení nelineárních rovnic 21 Obr. 10: Newtonova metoda; f(x) = cos(x) + x/2 1; x 1 = 0,7 Z uvedeného je zřejmé, že Newtonova metoda je jednobodovou iterační metodou. Je dána vztahem x i+1 = x i f(x i), i = 1, 2,... ; (1.22) f (x i ) tomu odpovídá Newtonova iterační funkce tvaru F (x) = x f(x) f (x). (1.23) Poznámka 1.14 Je přirozené, že Newtonově metodě se také často říká metoda tečen. Věta 1.15 Nechť f(x) je funkce spojitá na intervalu a, b a nechť na tomto intervalu jsou spojité i její první a druhá derivace, f (x) a f (x). Nechť ξ je kořenem rovnice f(x) = 0 a f (ξ) 0. Pak existuje δ > 0 tak, že posloupnost {x i } i=1 generovaná Newtonovou metodou (1.22) konverguje k bodu ξ pro každou počáteční aproximaci x 1 ξ δ, ξ + δ a, b. Důkaz: Ukážeme, že existuje interval ξ δ, ξ + δ a, b, na kterém iterační funkce splňuje předpoklady věty 1.6. Protože f (x) je spojitá funkce na intervalu a, b a f (ξ) 0, δ 1 > 0 : x ξ δ 1, ξ + δ 1 : f (x) 0. Funkce F (x) je tedy

Metody řešení nelineárních rovnic 22 definovaná a spojitá na intervalu ξ δ 1, ξ + δ 1. Derivací vztahu (1.23) dostaneme F (x) = 1 f 2 (x) f(x)f (x) f 2 (x) = f(x)f (x), pro x ξ δ f 2 1, ξ + δ 1. (1.24) (x) Protože funkce f(x) i její derivace f (x) a f (x) jsou spojité na intervalu a, b, jsou funkce F (x) a její derivace F (x) spojité na intervalu ξ δ 1, ξ + δ 1. Jelikož f(ξ) = 0, je F (ξ) = f(ξ)f (ξ) = 0. (1.25) f 2 (ξ) Z faktů, že F (ξ) = 0 a F (x) je spojitá funkce na intervalu ξ δ 1, ξ + δ 1, plyne, že δ, 0 < δ < δ 1, takové, že F (x) q < 1 pro každé x ξ δ, ξ + δ. Zbývá ukázat, že funkce F splňuje Lipschitzovu podmínku. Ta plyne z věty o střední hodnotě, neboť pro libovolná čísla x, y ξ δ, ξ + δ platí F (x) F (y) = F (α) x y q x y, kde α je vhodný bod mezi body x a y. Funkce F (x) splňuje na intervalu ξ δ, ξ + δ předpoklady věty 1.6, a tudíž posloupnost {x i } i=1 generovaná Newtonovou metodou konverguje k bodu ξ pro každou počáteční aproximaci x 1 ξ δ, ξ + δ a, b. Věta 1.16 Newtonova metoda (1.22) je metoda druhého řádu. Důkaz: Důkaz plyne z věty 1.5. Platí totiž ξ = F (ξ), neboť ξ je pevný bod funkce F ; F (ξ) = 0, viz vztah (1.25); F (ξ) = f (ξ) f (ξ) 0, čož plyne derivováním vztahu (1.24). Příklad 1.6 Newtonovou metodou určete kořen funkce f(x) = cos(x) + x/2 1. Počáteční aproximaci zvolte x 1 = 0,7. Postup určování aproximací je patrný z obrázku 10. Jednotlivé aproximace jsou zapsány do tabulky 6.

Metody řešení nelineárních rovnic 23 i x i f(x i ) 1 0,7 0,114 842 2 1,496 311 392 0,177 428 3 1,139 476 135 0,012 191 4 1,109 625 380 0,000 190 5 1,109 144 312 5,2.10 8 6 1,109 144 182 3,8.10 15 Tab. 6: Newtonova metoda; f(x) = cos(x) + x/2 1; x 1 = 0,7 Dospěli jsme k aproximaci x 6 = 1,109 144 182 s funkční hodnotou f(x 6 ) = 3,8.10 15. 1.6 Rozšířená Newtonova metoda Je-li ξ nulový bod funkce f(x) a existují-li ve všech bodech okolí U(ξ) bodu ξ všechny derivace f (i) (x), které budeme potřebovat, pak Taylorův rozvoj funkce f(x) v bodě x 1 U(ξ) je f(ξ) = 0 = f(x 1 ) + (ξ x 1 )f (x 1 ) + (ξ x 1) 2 f (x 1 ) +.... (1.26) 2! Jestliže bod x 1 je dostatečně blízko kořene ξ, jsou vyšší mocniny (ξ x 1 ) i zanedbatelné a rovnici (1.26) lze potom psát ve tvaru např. nebo 0 = f(x 1 ) + (x 2 x 1 )f (x 1 ), (1.27) 0 = f(x 1 ) + (x 2 x 1 )f (x 1 ) + (x 2 x 1 ) 2 f (x 1 ). (1.28) 2! Zde místo ξ píšeme x 2, neboť x 2 je pouze přiblížením k požadovanému nulovému bodu ξ. Řešením těchto rovnic získáme a x 2 = x 1 f(x 1) f (x 1 ) (1.29) x 2 = x 1 f (x 1 ) [f f (x 1 ) ± (x 1 )] 2 2f(x 1 )f (x 1 ), (1.30) f (x 1 ) kde ze dvou kořenů (1.30) rovnice (1.28) je přiblížením ke kořenu ξ rovnice (1.1) právě ten kořen, který má u třetího sčítance ve vztahu (1.30) znaménko souhlasné se znaménkem derivace f (x 1 ) (viz poznámka 1.18). Dospěli jsme k iteračním metodám x i+1 = F (x i ), kde iterační funkce jsou F (x) = x f(x) f (x) (1.31)

Metody řešení nelineárních rovnic 24 a F (x) = x f (x) [f f (x) + sign[f (x)] (x)] 2 2f(x)f (x). (1.32) f (x) Vidíme, že v prvním případě se jedná o klasickou Newtonovu metodu, tj. metodu tečen - viz kap. 1.5, vztah (1.23). Skutečně, x i+1 je nulovým bodem lineární funkce (přímky), která má v bodě x i stejnou funkční hodnotu a stejnou hodnotu 1. derivace jako funkce f(x), tj. daná přímka je tečnou ke grafu funkce f(x) v bodě x i. Druhý případ je zřejmým rozšířením Newtonovy metody. Aproximace x i+1 je nulovým bodem kvadratické funkce (paraboly), která má v bodě x i stejnou funkční hodnotu a stejné hodnoty 1. a 2. derivace jako funkce f(x). Metodu, jejíž iterační funkcí je funkce (1.32), nazýváme rozšířenou Newtonovou metodou. Poznámka 1.17 Nechť ξ je jednoduchý kořen. Ukážeme, že pokud je reálný bod x dostatečně blízko kořene ξ, nabývá iterační funkce (1.32) reálné hodnoty. Funkce f(x) i f (x) jsou spojité, f(ξ) = 0, f (ξ) 0, proto δ > 0 : x ξ δ; ξ + δ : [f (x)] 2 2f(x)f (x) > 0. Poznámka 1.18 Bod ξ je pevným bodem iterační funkce F (x), tzn. ξ = F (ξ). Jelikož f(ξ) = 0, ze vztahu (1.32) dostáváme ξ = F (ξ) = ξ f (ξ) f (ξ) ± f (ξ) f (ξ). Je zřejmé, že druhý a třetí člen v předchozím vztahu se musí navzájem odečíst, a tedy ze znamének ± skutečně volíme to, které je dáno funkcí sign[f (x)]. Poznámka 1.19 Podobně, jako pro Newtonovu metodu požadujeme f (ξ) 0 (viz věta 1.15), požadujeme v případě rozšířené Newtonovy metody f (ξ) 0. Potom pro každou aproximaci x i (dostatečně blízkou kořenu ξ), je aproximace x i+1 = F (x i ), daná iterační funkcí (1.32), definovaná. Zobecnění těchto metod lze získat pomocí Taylorova rozvoje zanedbáním členů po (ξ x 1) k f (k) (x 1 ), k = 1, 2,.... Zjištěním první nenulové derivace iterační k! funkce F (x) (viz (1.31) a (1.32)) v bodě ξ lze dospět (na základě věty 1.5) k řádu konvergence dané metody. U klasické Newtonovy metody (1. případ) platí: F (ξ) = 0, F (ξ) 0, a tedy řád klasické Newtonovy metody je 2 (metoda konverguje kvadraticky). U rozšířené metody (2. případ) platí: F (ξ) = 0, F (ξ) = 0, F (ξ) 0, a tedy řád je 3 (metoda konverguje kubicky, tj. rychleji než klasická Newtonova metoda ).

Metody řešení nelineárních rovnic 25 Příklad 1.7 Užitím rozšířené Newtonovy metody určete kořen funkce f(x) = cos(x) + x/2 1. Počáteční aproximaci zvolte x 1 = 2,5. Proces výpočtu jednotlivých aproximací vidíme na obrázku 11. Jednotlivé aproximace jsou zapsány do tabulky 7. Obr. 11: Rozšířená Newtonova metoda; f(x) = cos(x) + x/2 1; x 1 = 2,5 i x i f(x i ) 1 2,5 0,551 144 2 1,443 507 781 0,151 301 3 1,122 644 623 0,005 377 4 1,109 145 115 3,7.10 7 5 1,109 144 182 < 10 15 Tab. 7: Rozšířená Newtonova metoda; f(x) = cos(x) + x/2 1; x 1 = 2,5 Již v páté aproximaci jsme dosáhli hodnoty x 5 = 1,109 144 182 s hodnotou funkce f(x 5 ) < 10 15.

Metody řešení nelineárních rovnic 26 1.7 Srovnání metod Porovnejme jednotlivé metody z hlediska jejich rychlosti konvergence. Při seznamování se s jednotlivými metodami jsme už uvedli jejich řád konvergence. Zjistěme nyní na našem testovacím příkladu, kolik iterací je potřeba provést k dosažení stanovené přesnosti. V tabulce 8 znovu uvedeme posloupnosti iterací {x i } k i=1 pro jednotlivé metody. Přitom, výpočet zastavíme vždy, když relativní chyba x i x i 1 x i bude menší než 10 6. řád 1 1 1,618 2 3 MP MRF MS NM RNM x 1 0,785398163 1,5 1,5 0,7 2,5 x 2 1,570796327 0,6 0,6 1,496311392 1,443507781 x 3 1,178097245 0,970330404 0,970330404 1,139476135 1,122644623 x 4 0,981747704 1,086193055 1,217693011 1,109625380 1,109145115 x 5 1,079922475 1,105878748 1,100290627 1,109144312 1,109144182 x 6 1,129009860 1,108691394 1,108664337 1,109144182 x 7 1,104466167 1,109081629 1,109146603 x 8 1,116738014 1,109135544 1,109144181 x 9 1,110602090 1,109142989 1,109144182 x 10 1,107534129 1,109144017 x 21 1,109144509 x 22 1,109143760 Tab. 8: Řešení rovnice cos(x) + x/2 1 = 0; dosažení rel. chyby < 10 6 Vidíme, že rychlost konvergence posloupností {x i } i=1 určených jednotlivými metodami pro náš testovací příklad odpovídá řádu konvergence metod. Pro získání kořene s relativní chybou menší než 10 6 jsme museli metodou půlení (MP) provést 22 iterací. U metody regula falsi (MRF) nám stačilo 10 iterací. Ještě lepších výsledků jsme dosáhli v případě použití metod s vyšším řádem konvergence. U metody sečen (MS) to bylo 9 iterací, u Newtonovy metody (NM) už jen 6, a u rozšířené Newtonovy metody (RNM) dokonce jen 5 iterací. Musíme si ovšem uvědomit, že v případě Newtonovy metody potřebujeme v každé iteraci vyčíslit hodnotu funkce a hodnotu její první derivace v bodě x i (tj. f(x i ), f (x i )), kdežto v případě rozšířené Newtonovy metody potřebujeme vyčíslit navíc i hodnotu druhé derivace v bodě x i (tj. f(x i ), f (x i ) a f (x i )).

Výpočet kořenů polynomu 27 2 Výpočet kořenů polynomu V této kapitole se zaměříme na speciální, ale velice častý, typ nelineárních rovnic, na polynomické rovnice. V dalším výkladu budeme uvažovat polynom p stupně n 2 s reálnými koeficienty tvaru p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0. (2.1) Budeme hledat kořeny polynomu (2.1), tj. hledat řešení rovnice p(x) = 0. (2.2) Je vhodné problém určení všech reálných kořenů polynomu p(x) rozdělit na dva dílčí problémy: 1. nalezení největšího kořene; 2. nalezení ostatních kořenů. 2.1 Určení největšího kořene polynomu Newtonova metoda, x i+1 = x i p(x i), i = 1, 2,..., (2.3) p (x i ) umožňuje při vhodné volbě počáteční hodnoty x 1 nalézt kořen polynomu (2.1). Následující věta ukazuje, jak pro polynom s reálnými kořeny získat jeho největší kořen. Věta 2.1 Nechť p(x) je polynom stupně n 2 s reálnými koeficienty tvaru (2.1). Jestliže všechny kořeny ξ j, j = 1, 2,..., n, polynomu p(x) jsou reálné, ξ 1 ξ 2 ξ n, pak Newtonova metoda dává ryze klesající posloupnost {x i } konvergující ke kořenu ξ i=1 1 pro každou počáteční hodnotu x 1 > ξ 1. Důkaz: Bez újmy na obecnosti můžeme předpokládat, že p(x 1 ) > 0. Protože p(x) nemění znaménko pro x > ξ 1, platí p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 > 0 x > ξ 1, a proto a n > 0. Derivace p (x) = na n x n 1 + (n 1)a n 1 x n 2 + + 2a 2 x + a 1 má n 1 kořenů α j, j = 1,..., n 1, pro něž podle Rolleovy věty platí: ξ 1 α 1 ξ 2 α 2 α n 1 ξ n.

Výpočet kořenů polynomu 28 Protože p (x) je stupně n 1 1, jsou α 1, α 2,..., α n 1 všechny jeho kořeny, a platí p (x) > 0 pro každé x > α 1, neboť a n > 0. Aplikací Rolleovy věty dále získáme neboť a n > 0, a podobně, s vědomím, že n 2, Pro x i > ξ 1 plyne, že p (x) > 0 pro x > α 1, (2.4) p (x) 0 pro x α 1. (2.5) x i+1 = x i p(x i) p (x i ) < x i, protože p(x i ) > 0, p (x i ) > 0. Zbývá ukázat, že x i+1 > ξ 1. Ze vztahů (2.4), (2.5), x i > ξ 1 α 1 a Taylorovy věty plyne, že 0 = p(ξ 1 ) = p(x i ) + (ξ 1 x i )p (x i ) + 1 2 (ξ 1 x i ) 2 p (δ) > p(x i ) + (ξ 1 x i )p (x i ), kde ξ 1 < δ < x i. Ze vztahu (2.3) platí p(x i ) = p (x i )(x i x i+1 ). Dosazením získáme 0 > p (x i )(x i x i+1 + ξ 1 x i ) = p (x i )(ξ 1 x i+1 ), a tedy x i+1 > ξ 1, protože p (x i ) > 0. Poznámka 2.2 Určit počáteční hodnotu x 1 takovou, aby byla větší než největší kořen, lze pro daný polynom poměrně snadno. Každý reálný kořen ξ j, j = 1,..., n, polynomu (2.1) totiž musí splňovat následující podmínku { } a 0 ξ j max, 1 + a 1,..., 1 + a n 1. a n Podmínek, vymezujících hranice kořenů, existuje celá řada. Další jsou uvedeny např. v knize [1]. Newtonova metoda konverguje kvadraticky (řád této iterační metody je 2). Konverguje tedy ke kořenu zpravidla rychleji než některé jednodušší metody (metoda půlení, metoda regula falsi, metoda sečen, viz kapitola 1). Přesto, jestliže je počáteční hodnota x 1 daleko od kořene, tj. x 1 ξ 1, pak posloupnost {x i } i=1 získaná Newtonovou metodou konverguje, zvláště v počátku, velmi pomalu. Skutečně, podle (2.3) je ( x i+1 = x i xn i + nx n 1 + x i 1 1 ), i = 1, 2,..., n i a n a n

Výpočet kořenů polynomu 29 takže u polynomů vyšších stupňů je rozdíl mezi x i a x i+1 malý. Tato skutečnost vede k úvaze následující dvojkrokové metody x i+1 = x i 2 p(x i), i = 1, 2,..., (2.6) p (x i ) místo Newtonovy metody (2.3). Je zde nyní nebezpečí přeskočení kořene ξ 1. Jsou možné dva případy, jak se bude chovat posloupnost {x i } i=1 definovaná dvojkrokovou metodou (2.6) pro x 1 > ξ 1 : 1. x 1 x 2 x i x i+1 ξ 1 a lim i x i = ξ 1, 2. i 0 N : p(x 1 )p(x i ) > 0 pro 1 i < i 0 a p(x 1 )p(x i0 ) < 0, tj. x 1 > x 2 > > x i0 1 > ξ 1 > x i0. V prvním případě posloupnost {x i } i=1 konverguje monotónně, a rychleji než Newtonova metoda (2.3), ke kořenu ξ 1. Ve druhém případě je i 0 -tý člen posloupnosti {x i } i=1 první, který je menší než kořen ξ 1. Lze ho užít jako počátečního bodu y 0 := x i0 Newtonovy metody (2.3) y i+1 = y i p(y i), i = 0, 1,..., p (y i ) také s předpokladem monotónní konvergence y 1 y 2 ξ 1 a lim i y i = ξ 1. Platí totiž následující věta. Věta 2.3 Nechť p(x) je reálný polynom stupně n 2 tvaru (2.1). Nechť všechny kořeny ξ 1 ξ 2 ξ n jsou reálné. Nechť α 1 je největší kořen p (x), a tedy ξ 1 α 1 ξ 2. Pro n = 2 nechť navíc ξ 1 > ξ 2. Pak pro každé z > ξ 1 jsou čísla definovaná a platí: z := z p(z) p (z), p(z) y := z 2 p (z), α 1 < y, ξ 1 y z. y := y p(y) p (y) Obrázek 12 znázorňuje geometrickou interpretaci dvojkrokové metody. Důkaz: I zde bez újmy na obecnosti předpokládejme, že a n > 0, a tedy p(z) > 0 pro z > ξ 1. Pro takové hodnoty z definujme veličiny: 0 := p(z ), 1 := p(z ) p(y) (z y)p (y).

Výpočet kořenů polynomu 30 Obr. 12: Znázornění dvojkrokové metody Obr. 13: Veličiny 0 a 1 interpretované jako plochy

Výpočet kořenů polynomu 31 Veličiny 0 a 1 mohou být též interpretovány jako příslušné plochy nad a pod grafem funkce p (x), viz obrázek 13, neboť z z [p (t) p (z)] dt = [p(t) p (z) t] z z = p(z ) p(z) p (z)(z z) = p(z ) = 0 a z y [p (t) p (y)] dt = [p(t) p (y) t] z y = p(z ) p(y) p (y)(z y) = 1. Protože z y = z z > 0 a p (x) je konvexní pro x α 1, dostáváme (viz obrázek 13) 1 0, jestliže y α 1, (2.7) přičemž 1 = 0 právě tehdy, když p (x) je lineární funkcí, tj. právě tehdy, když p je stupně 2. Nyní rozlišíme 3 případy, y > ξ 1, y = ξ 1, y < ξ 1. Pro y > ξ 1 tvrzení věty plyne z Věty 2.1. Pro y = ξ 1 ukážeme zaprvé, že ξ 1 > α 1 > ξ 2, a tedy, že ξ 1 je jednoduchý kořen polynomu p(x). Pokud by totiž ξ 1 byl násobný kořen, a tedy y = ξ 1 = ξ 2 = α 1, pak pro n 3 je 1 < 0 (plyne z (2.7)), což je ve sporu s tvrzením 1 = p(z ) p(ξ 1 ) (z ξ 1 )p (ξ 1 ) = p(z ) = 0. Tedy ξ 1 musí být jednoduchý kořen. Odtud α 1 < ξ 1 = y = y < z a tvrzení věty platí i pro tento případ. Zbývá vyšetřit případ y < ξ 1. Uvažujme, že α 1 < y (že tomu tak musí být, ukážeme v poslední části důkazu). Protože p(z) > 0 a ξ 2 < α 1 < y < ξ 1, je p(y) < 0, p (y) > 0, a tedy y je definováno. Protože p(y) = (y y )p (y) a 1 0, dostáváme 0 1 = p(y) + (z y)p (y) = p (y)(z y ) 0. Proto z y. Konečně, z Taylorovy věty plyne 0 = p(ξ 1 ) = p(y) + (ξ 1 y)p (y) + 1 2 (ξ 1 y) 2 p (δ), y < δ < ξ 1, a protože p (x) 0 pro x α 1 a p(y) = (y y )p (y), platí 0 p(y) + (ξ 1 y)p (y) = p (y)(ξ 1 y ). Protože p (y) > 0, dostáváme ξ 1 y. K dokončení důkazu stačí ukázat, že y = y(z) > α 1 pro každé z > ξ 1. (2.8)

Výpočet kořenů polynomu 32 Znovu rozlišíme dva případy: ξ 1 > α 1 > ξ 2 a ξ 1 = α 1 = ξ 2. Jestliže ξ 1 > α 1 > ξ 2, pak vztah (2.8) platí vždy, když ξ 1 < z < ξ 1 + (ξ 1 α 1 ). To proto, jelikož Věta 2.1 implikuje z > z ξ 1, a proto y = z (z z ) > ξ 1 (ξ 1 α 1 ) = α 1. Tudíž můžeme vybrat z 0 splňující y(z 0 ) > α 1. Předpokládejme, že existuje z 1 > ξ 1 s podmínkou y(z 1 ) α 1. Z věty o střední hodnotě spojitých funkcí plyne, že existuje z z 0, z 1 s podmínkou y = y(z) = α 1. Ze vztahu (2.7) pro z = z platí: 1 = p(z ) p(y) (z y)p (y) = p(z ) p(y) 0 = p(z ), (2.9) a proto p(y) = p(α 1 ) 0. Na druhou stranu p(α 1 ) < 0, protože ξ 1 je jednoduchý kořen, což je spor se změnou znaménka p(x). Vztah (2.8) tedy musí platit pro každé z > ξ 1. Jestliže ξ 1 = α 1 = ξ 2, uvažujme n 3. Předpokládejme bez újmy na obecnosti, že p(x) = x n + a n 1 x n 1 + + a 1 x + a 0. Pak Proto z = z p(z) p (z) = z z n 1 + a n 1 + + a 0 z z n a n 1 + + 1 z n 1 + n 1 n y = y(z) = z + 2(z z) = z 2z n ( 1 + O a 1 z n 1 = z z n ( 1 + O ( )) 1. z ( )) ( 1 = z 1 2 ) + O(1). z n Protože n 3, hodnota y(z) roste neomezeně s z a znovu vidíme, že z 0 > ξ 1 : y 0 = y(z 0 ) > α 1. Jestliže vztah (2.8) není splněn pro všechna z > ξ 1, pak z > ξ 1 : y = y(z) = α 1. Opět dospějeme ke sporu, neboť ze vztahu (2.9) bychom obdrželi p(y) = p(α 1 ) 0, což není možné. Takto, kombinací dvojkrokové (2.6) a Newtonovy metody (2.3), lze poměrně efektivně určit největší kořen ξ 1 polynomu (2.1). Demonstrujme si na následujícím příkladu výhodu dvojkrokové metody (2.6) proti Newtonově metodě (2.3) při určování největšího kořene. Příklad 2.1 Určete největší kořen polynomu p(x) = 8 (x i) = x 8 36x 7 + 546x 6 4536x 5 + i=1 22449x 4 67284x 3 + 118124x 2 109584x + 40320. Použijte dvojkrokovou metodu a Newtonovu metodu. Porovnejte obě metody z hlediska rychlosti konvergence. Jako počáteční aproximaci zvolte x 1 = 20.

Výpočet kořenů polynomu 33 Uvažovaný polynom má kořeny ξ 1 = 8, ξ 2 = 7,..., ξ 8 = 1, tzn. x 1 = 20 je větší, než největší kořen polynomu, a tedy užitím obou metod s touto počáteční hodnotou musíme skutečně dospět k hodnotě největšího kořene ξ 1 = 8. Jednotlivé aproximace určené Newtonovou metodou, tj. užitím vzorce (2.3), stejně jako aproximace určené dvojkrokovou metodou, tj. dané vzorcem (2.6), jsou zapsány do tabulky 9. x i Newtonova metoda dvojkroková metoda x 1 20,000 000 20,000 000 x 2 18,105 567 16,211 133 x 3 16,454 192 13,398 883 x 4 15,016 438 11,329 903 x 5 13,766 710 9,834 383 x 6 12,682 811 8,794 966 x 7 11,745 573 8,148 323 x 8 10,938 548 7,929 357 x 9 10,247 782 8,016 696 x 10 9,661 673 8,000 686 x 11 9,170 955 8,000 001 x 12 8,768 867 8,000 000 Tab. 9: Výpočet největšího kořene Newtonovou metodou a dvojkrokovou metodou Z tab. 9 je patrné, že posloupnost {x i } i=1 daná dvojkrokovou metodou klesá ke kořenu ξ 1 = 8 rychleji než Newtonova metoda, a to až do osmé iterace. U dvojkrokové metody je totiž hodnota x 8 oním přeskokem kořene ξ 1 = 8. Dál výpočet pokračuje Newtonovou metodou (y 0 = x 8 ). Můžeme si rovněž povšimnout, že pro následující aproximaci platí ξ 1 < x 9 < x 7 (viz věta 2.3). 2.2 Určení ostatních kořenů polynomu V minulém odstavci jsme ukázali, jak určit největší kořen ξ 1 polynomu (2.1). Zbývá ještě určit ostatní kořeny ξ 2, ξ 3,..., ξ n polynomu (2.1). Nabízí se dělení kořenovým činitelem x ξ 1. Uvažujme tedy polynom p 1 (x) := p(x) x ξ 1. (2.10) Největší kořen polynomu p 1 (x) je ξ 2 a může být určen výše popsaným postupem. Zde ξ 1, nebo ještě lépe y 0 = x i0, může posloužit jako počáteční aproximace. Tímto způsobem lze nakonec získat všechny kořeny. Postupně bychom vyčíslili další polynomy p j (x) := p j 1(x), j = 2, 3,..., n 1, (2.11) x ξ j a pro každý potom určili jeho největší kořen ξ j+1.

Výpočet kořenů polynomu 34 Dělení kořenovým činitelem ale není bez rizika, protože zaokrouhlení kořene ξ 1 (obecně nejsme schopni vyčíslit ξ 1 zcela přesně) znemožní přesně určit polynom p 1 (x). Polynom získaný pomocí vztahu (2.10) pro zaokrouhlený kořen ξ 1 má kořeny odlišné od ξ 2, ξ 3,..., ξ n, viz poznámka 2.5. Popsaná chyba se kumuluje a negativně ovlivňuje určování dalších kořenů, viz příklad 2.3. Poznámka 2.4 Ve zbývající části kapitoly budeme užívat označení ξ j, j = 1, 2,..., n, pro přibližné hodnoty kořenů ξ j, j = 1, 2,..., n. Poznámka 2.5 Prozkoumejme podrobněji podíl polynomu p(x) a dvojčlenu x x 0, kde x 0 je libovolné reálné číslo. Platí: p(x) = (x x 0 )q x0 (x) + R, (2.12) kde q x0 (x) = b n 1 x n 1 + b n 2 x n 2 + + b 1 x + b 0 je polynom stupně (n 1), R = R(x 0 ) je zbytek po dělení polynomu p(x) dvojčlenem x x 0. Číselně je tento zbytek roven hodnotě polynomu p(x) v bodě x 0, tj. R = p(x 0 ), což plyne přímo ze vztahu (2.12). Koeficienty b j, j = 0, 1,..., n 1 lze počítat rekurentně pomocí algoritmu známého pod názvem Hornerovo schéma: b n 1 = a n b r = b r+1 x 0 + a r+1, r = n 2, n 3,..., 2, 1, 0. (2.13) Pro zbytek R platí R = b 1 = b 0 x 0 + a 0. Při užití metody dělení kořenovým činitelem potom určujeme druhý největší kořen ξ 2 polynomu (2.1) jakožto největší kořen polynomu q ξ1 (x) p 1 (x). Tyto souvislosti jsou demonstrovány v příkladu 2.2. Při určování dalších kořenů jsou i tyto ovlivněny chybami v určení předchozích kořenů. Příklad 2.2 Uvažujme polynom p(x) = 4 (x i) = x 4 10x 3 + 35x 2 50x + 24. (2.14) i=1 Polynom (2.14) má přesné kořeny ξ 1 = 4, ξ 2 = 3, ξ 3 = 2, ξ 4 = 1. Vydělením polynomu (2.14) kořenovým činitelem x ξ 1 = x 4 dostaneme p 1 (x) = p(x) 3 x 4 = (x i) = x 3 6x 2 + 11x 6. (2.15) i=1 Předpokládejme, že největší kořen aproximujeme hodnotou ξ 1 = 4,001. Polynom (2.14) v tomto bodě nabývá hodnoty R = p(ξ 1 ) = 0,006 011 006 001. Pomocí Hornerova schematu (2.13) určíme polynom q ξ1, tj. q ξ1 (x) = x 3 5,999x 2 + 10,998 001x 5,996 997 999. (2.16) Největší kořen tohoto polynomu (s přesností 10 9 ) je ξ 2 = 2,996 989 940. Tato hodnota se významně liší od hodnoty ξ 2 = 3 druhého největšího kořene polynomu (2.14).