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

Podobné dokumenty
metoda Regula Falsi 23. října 2012

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

Newtonova metoda. 23. října 2012

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

DRN: Kořeny funkce numericky

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

Numerická matematika 1

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

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

Zdroje chyb. Absolutní a relativní chyba. Absolutní chyba. Absolutní chyba přibližného čísla a se nazývá absolutní hodnota rozdílu přesného

Nelineární rovnice. Numerické metody 6. května FJFI ČVUT v Praze

Základy matematické analýzy

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

Kombinatorická minimalizace

MATLAB a numerické metody

Numerické metody a programování. Lekce 7

Iterační metody řešení soustav lineárních rovnic. 27. prosince 2011

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

Řešení nelineárních rovnic

Numerické metody 6. května FJFI ČVUT v Praze

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

Libovolnou z probraných metod najděte s přesností na 3 desetinná místa kladný kořen rovnice. sin x + x 2 2 = 0.

Čebyševovy aproximace

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

Algebraické rovnice. Obsah. Aplikovaná matematika I. Ohraničenost kořenů a jejich. Aproximace kořenů metodou půlení intervalu.

Numerické řešení diferenciálních rovnic

ODR metody Runge-Kutta

1 Extrémy funkcí - slovní úlohy

Diferenciální počet funkcí jedné proměnné

Příklad. Řešte v : takže rovnice v zadání má v tomto případě jedno řešení. Pro má rovnice tvar

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

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

Hledání extrémů funkcí

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

Lokální definice (1) plocha-kruhu

3. Reálná čísla. většinou racionálních čísel. V analytických úvahách, které praktickým výpočtům

Aplikovaná numerická matematika - ANM

A 9. Počítejte v radiánech, ne ve stupních!

Funkce pro studijní obory

Lineární funkce, rovnice a nerovnice 4 lineární nerovnice


Typy příkladů na písemnou část zkoušky 2NU a vzorová řešení (doc. Martišek 2017)

- funkce, které integrujete aproximujte jejich Taylorovými řadami a ty následně zintegrujte. V obou případech vyzkoušejte Taylorovy řady

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

12. Lineární programování

4.3.2 Goniometrické nerovnice

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

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

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

Extrémy funkce dvou proměnných

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Břetislav Fajmon, UMAT FEKT, VUT Brno. Poznámka 1.1. A) první část hodiny (cca 50 minut): představení všech tří metod při řešení jednoho příkladu.

I. 7. Diferenciál funkce a Taylorova věta

Spojitost funkce. Kapitola 8. ale kromě toho zajímá, jestli daný experiment probíhal kontinuálně, nebo nastaly. Intuitivní představy o pojmu spojitost

x 0; x = x (s kladným číslem nic nedělá)

Numerická matematika Banka řešených příkladů

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

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

Aplikovaná matematika I

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC

( ) ( ) Logaritmické nerovnice II. Předpoklady: 2924

UMÍ POČÍTAČE POČÍTAT?

Semestrální písemka BMA3 - termín varianta A13 vzorové řešení

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

Zimní semestr akademického roku 2015/ ledna 2016

4EK213 Lineární modely. 10. Celočíselné programování

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

Moderní numerické metody

Co je obsahem numerických metod?

Matematická analýza III.

Soustavy lineárních rovnic-numerické řešení. October 2, 2008

8 Střední hodnota a rozptyl

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

CVIČNÝ TEST 36. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

Definice globální minimum (absolutní minimum) v bodě A D f, jestliže X D f

4 všechny koeficienty jsou záporné, nedochází k žádné změně. Rovnice tedy záporné reálné kořeny nemá.

4EK213 LINEÁRNÍ MODELY

Připomenutí co je to soustava lineárních rovnic

Numerická stabilita algoritmů

+ 2y. a y = 1 x 2. du x = nxn 1 f(u) 2x n 3 yf (u)

Přijímací zkouška na navazující magisterské studium 2017

Podobnostní transformace

Lineární funkce, rovnice a nerovnice

OPTIMALIZACE. (přehled metod)

2. Schurova věta. Petr Tichý. 3. října 2012

Hledáme lokální extrémy funkce vzhledem k množině, která je popsána jednou či několika rovnicemi, vazebními podmínkami. Pokud jsou podmínky

1. Chyby vstupních dat metody převedení úlohy na numerickou (řád použité metody) zaokrouhlovací reprezentace čísel v počítači

Numerické metody a programování. Lekce 4

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

Soustavy lineárních rovnic-numerické řešení

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

Funkce a lineární funkce pro studijní obory

Exponenciální rovnice. Metoda převedení na stejný základ. Cvičení 1. Příklad 1.

Konvergence kuncova/

Přijímací zkouška z matematiky 2017

Funkce. Limita a spojitost

Matematika 3. Sbírka příkladů z numerických metod. RNDr. Michal Novák, Ph.D. ÚSTAV MATEMATIKY

4.3. GONIOMETRICKÉ ROVNICE A NEROVNICE

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Logaritmus, logaritmická funkce, log. Rovnice a nerovnice. 3 d) je roven číslu: c) -1 d) 0 e) 3 c) je roven číslu: b) -1 c) 0 d) 1 e)

Transkript:

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

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden z nejstarších problémů například Babylonské hliněné destičky z období 1700 před n. l. uvádějí přibližnou hodnotu jednoho z kořenů rovnice x 2 2 = 0 v šedesátkové soustavě v dnešní zápisu po převedení do desítkové soustavy se jedná o hodnotu 1,414 222 shoda se skutečnou hodnotou čísla 2 je na desetitisíciny výzkum v této oblasti pokračuje i dnes

Metoda půlení intervalů nejjednodušší metoda s její pomocí můžeme nalézt řešení rovnice f(x) = 0 na intervalu a, b v podstatě s libovolnou přesností (kterou umožňuje náš počítač) předpokladem ale je, že funkce f(x) je na intervalu a, b spojitá a f(a) a f(b) mají rozdílná znaménka pro jednoduchost budeme předpokládat, že rovnice má na intervalu a, b jeden kořen tato metoda však funguje i pro případ, že na intervalu a, b má rovnice více než jeden kořen

Metoda půlení intervalů nejjednodušší metoda s její pomocí můžeme nalézt řešení rovnice f(x) = 0 na intervalu a, b v podstatě s libovolnou přesností (kterou umožňuje náš počítač) předpokladem ale je, že funkce f(x) je na intervalu a, b spojitá a f(a) a f(b) mají rozdílná znaménka pro jednoduchost budeme předpokládat, že rovnice má na intervalu a, b jeden kořen tato metoda však funguje i pro případ, že na intervalu a, b má rovnice více než jeden kořen

Metoda půlení intervalů nejjednodušší metoda s její pomocí můžeme nalézt řešení rovnice f(x) = 0 na intervalu a, b v podstatě s libovolnou přesností (kterou umožňuje náš počítač) předpokladem ale je, že funkce f(x) je na intervalu a, b spojitá a f(a) a f(b) mají rozdílná znaménka pro jednoduchost budeme předpokládat, že rovnice má na intervalu a, b jeden kořen tato metoda však funguje i pro případ, že na intervalu a, b má rovnice více než jeden kořen

Metoda půlení intervalů nejjednodušší metoda s její pomocí můžeme nalézt řešení rovnice f(x) = 0 na intervalu a, b v podstatě s libovolnou přesností (kterou umožňuje náš počítač) předpokladem ale je, že funkce f(x) je na intervalu a, b spojitá a f(a) a f(b) mají rozdílná znaménka pro jednoduchost budeme předpokládat, že rovnice má na intervalu a, b jeden kořen tato metoda však funguje i pro případ, že na intervalu a, b má rovnice více než jeden kořen

Metoda půlení intervalů nejjednodušší metoda s její pomocí můžeme nalézt řešení rovnice f(x) = 0 na intervalu a, b v podstatě s libovolnou přesností (kterou umožňuje náš počítač) předpokladem ale je, že funkce f(x) je na intervalu a, b spojitá a f(a) a f(b) mají rozdílná znaménka pro jednoduchost budeme předpokládat, že rovnice má na intervalu a, b jeden kořen tato metoda však funguje i pro případ, že na intervalu a, b má rovnice více než jeden kořen

Algoritmus metody půlení intervalů na začátku položíme a 1 = a, b 1 = b a najdeme střed intervalu a 1, b 1 pomocí vztahu p 1 = a 1 + b 1 a 1 2

Algoritmus metody půlení intervalů pokud je f(p 1 ) = 0, pak je p 1 hledaným kořenem rovnice

Algoritmus metody půlení intervalů v opačném případě má f(p 1 ) stejné znaménko buď jako f(a 1 ), nebo jako f(b 1 )

Algoritmus metody půlení intervalů pokud má f(p 1 ) stejné znaménko jako f(a 1 ) stejná znaménka, pak hledaný kořen rovnice leží v intervalu p 1, b 1 a položíme a 2 = p 1, b 2 = b 1

Algoritmus metody půlení intervalů pokud má f(p 1 ) stejné znaménko jako f(b 1 ), pak hledaný kořen rovnice leží v intervalu a 1, p 1 a položíme a 2 = a 1, b 2 = p 1

Algoritmus metody půlení intervalů nyní opakujeme stejný proces na interval a 2, b 2, poté na interval a 3, b 3, atd.

Algoritmus metody půlení intervalů každý nově vzniklý interval obsahuje hledaný kořen a jeho délka je poloviční oproti předchozímu intervalu odtud název metody

Algoritmus metody půlení intervalů shrnutí Interval a n+1, b n+1, kde n > 0, obsahující kořen rovnice f(x) = 0 získáme z intervalu a n, b n tak, že nejprve určíme střed intervalu a n, b n pomocí vztahu p n = a n + b n a n. 2 Poté položíme a n+1 = a n a b n+1 = p n, pokud je f(a n ) f(p n ) < 0, nebo a n+1 = p n a b n+1 = b n, pokud je f(a n ) f(p n ) > 0.

Metoda půlení intervalů Existují 3 základní kritéria pro ukončení algoritmu metody půlení intervalu: 1. některý střed intervalu je přímo kořenem rovnice 2. délka intervalu a n, b n klesne pod nějakou předem danou toleranci označme ji T OL 3. počet iterací algoritmu překročí předem danou mez N 0

Metoda půlení intervalů Existují 3 základní kritéria pro ukončení algoritmu metody půlení intervalu: 1. některý střed intervalu je přímo kořenem rovnice 2. délka intervalu a n, b n klesne pod nějakou předem danou toleranci označme ji T OL 3. počet iterací algoritmu překročí předem danou mez N 0

Metoda půlení intervalů Existují 3 základní kritéria pro ukončení algoritmu metody půlení intervalu: 1. některý střed intervalu je přímo kořenem rovnice 2. délka intervalu a n, b n klesne pod nějakou předem danou toleranci označme ji T OL 3. počet iterací algoritmu překročí předem danou mez N 0

Odhad počtu iterací Pro zahájení metody půlení intervalů musíme nejprve nalézt interval a, b tak, aby platilo f(a) f(b) < 0.

Odhad počtu iterací Pro zahájení metody půlení intervalů musíme nejprve nalézt interval a, b tak, aby platilo f(a) f(b) < 0. Pro vzdálenost středu p 1 intervalu a, b od kořene p ležícího v tomto intervalu platí p 1 p b a 2.

Odhad počtu iterací Pro zahájení metody půlení intervalů musíme nejprve nalézt interval a, b tak, aby platilo f(a) f(b) < 0. Pro vzdálenost středu p 1 intervalu a, b od kořene p ležícího v tomto intervalu platí p 1 p b a 2. Každá následující iterace zmenší délku uvažovaného intervalu na polovinu a tedy obecně platí p n p b a 2 n.

Odhad počtu iterací Pro zahájení metody půlení intervalů musíme nejprve nalézt interval a, b tak, aby platilo f(a) f(b) < 0. Pro vzdálenost středu p 1 intervalu a, b od kořene p ležícího v tomto intervalu platí p 1 p b a 2. Každá následující iterace zmenší délku uvažovaného intervalu na polovinu a tedy obecně platí p n p b a 2 n. Pokud zajistíme, aby b a 2 n < T OL, potom máme zaručeno, že absolutní chyba aproximace kořene nepřekročí předem danou hodnotu T OL.

Odhad počtu iterací Pro zahájení metody půlení intervalů musíme nejprve nalézt interval a, b tak, aby platilo f(a) f(b) < 0. Pro vzdálenost středu p 1 intervalu a, b od kořene p ležícího v tomto intervalu platí p 1 p b a 2. Každá následující iterace zmenší délku uvažovaného intervalu na polovinu a tedy obecně platí p n p b a 2 n. Pokud zajistíme, aby b a 2 n < T OL, potom máme zaručeno, že absolutní chyba aproximace kořene nepřekročí předem danou hodnotu T OL. Z předchozí nerovnice můžeme určit počet iterací potřebný k dosažení předem dané přesnosti b a T OL < 2n n > log 2 ( b a T OL ).

Volba výchozího intervalu Protože odhad počtu iterací závisí na délce výchozího intervalu a, b, snažíme se jej volit co nejkratší. Například pro f(x) = 2x 3 x 2 + x 1 = 0 můžeme použít výchozí interval 4, 4, protože f( 4) f(4) < 0, nebo výchozí interval 0, 1, protože f(0) f(1) < 0. Pokud použijeme druhý z intervalů namísto prvního, počet iterací se třikrát sníží.

Volba výchozího intervalu Protože odhad počtu iterací závisí na délce výchozího intervalu a, b, snažíme se jej volit co nejkratší. Například pro f(x) = 2x 3 x 2 + x 1 = 0 můžeme použít výchozí interval 4, 4, protože f( 4) f(4) < 0, nebo výchozí interval 0, 1, protože f(0) f(1) < 0. Pokud použijeme druhý z intervalů namísto prvního, počet iterací se třikrát sníží.

Příklad Zadání: Najděte kořen rovnice x 3 + 4x 2 10 = 0 v intervalu 1, 2 s tolerancí 0,0005.

Příklad Zadání: Najděte kořen rovnice x 3 + 4x 2 10 = 0 v intervalu 1, 2 s tolerancí 0,0005. Řešení: Nejprve určíme počet iterací potřebný k dosažení předem dané přesnosti ( ) 2 1.= n > log 2 10,96. 0,0005

Příklad Zadání: Najděte kořen rovnice x 3 + 4x 2 10 = 0 v intervalu 1, 2 s tolerancí 0,0005. Řešení: Nejprve určíme počet iterací potřebný k dosažení předem dané přesnosti ( ) 2 1.= n > log 2 10,96. 0,0005 Měli bychom tedy provést alespoň 11 iterací algoritmu půlení intervalu. Výsledky jsou shrnuty v tabulce:

Výhody metody půlení intervalů jednoduchý princip a snadná implementace (naprogramování algoritmu v konkrétním programovacím jazyce) jsou-li dodrženy předpoklady metody, pak metoda vždy konverguje k některému z kořenů v daném intervalu je k dispozici jednoduché kritérium pro stanovení počtu iterací potřebného pro dosažení dané přesnosti

Výhody metody půlení intervalů jednoduchý princip a snadná implementace (naprogramování algoritmu v konkrétním programovacím jazyce) jsou-li dodrženy předpoklady metody, pak metoda vždy konverguje k některému z kořenů v daném intervalu je k dispozici jednoduché kritérium pro stanovení počtu iterací potřebného pro dosažení dané přesnosti

Výhody metody půlení intervalů jednoduchý princip a snadná implementace (naprogramování algoritmu v konkrétním programovacím jazyce) jsou-li dodrženy předpoklady metody, pak metoda vždy konverguje k některému z kořenů v daném intervalu je k dispozici jednoduché kritérium pro stanovení počtu iterací potřebného pro dosažení dané přesnosti

Nevýhody metody půlení intervalů oproti jiným metodám je konvergence pomalá ačkoliv se v průběhu algoritmu k přesné hodnotě kořenu někdy velmi přiblížíme, v následujícím kroku se můžeme zase od kořenu vzdálit - viz hodnoty p 9 a p 10 v tabulce u předchozího příkladu

Nevýhody metody půlení intervalů oproti jiným metodám je konvergence pomalá ačkoliv se v průběhu algoritmu k přesné hodnotě kořenu někdy velmi přiblížíme, v následujícím kroku se můžeme zase od kořenu vzdálit - viz hodnoty p 9 a p 10 v tabulce u předchozího příkladu

Rizika implementace metody na počítači při výpočtech musíme vzít v úvahu riziko ztráty přesnosti v důsledku zaokrouhlovacích chyb proto například používáme vztah p n = a n + bn an 2 namísto matematicky ekvivalentního vztahu p n = an+bn 2 při výpočtu součinu v kritériu f(a n ) f(p n ) < 0 by se mohlo stát, že absolutní hodnota výsledku bude menší než nejmenší kladné číslo, které lze uložit v daném číselném formátu v počítači (nebo naopak tato hodnota překročí maximální hodnotu daného číselného formátu) proto raději používáme kritérium sgn(f(a n )) sgn(f(p n )) < 0, kde sgn je tzv. znaménková funkce.

Rizika implementace metody na počítači při výpočtech musíme vzít v úvahu riziko ztráty přesnosti v důsledku zaokrouhlovacích chyb proto například používáme vztah p n = a n + bn an 2 namísto matematicky ekvivalentního vztahu p n = an+bn 2 při výpočtu součinu v kritériu f(a n ) f(p n ) < 0 by se mohlo stát, že absolutní hodnota výsledku bude menší než nejmenší kladné číslo, které lze uložit v daném číselném formátu v počítači (nebo naopak tato hodnota překročí maximální hodnotu daného číselného formátu) proto raději používáme kritérium sgn(f(a n )) sgn(f(p n )) < 0, kde sgn je tzv. znaménková funkce.