Metoda tětiv (regula falsi)

Předpokládáme, že funkce f(x) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWG4bGaaiykaaaa@394E@  je v intervalu a,b MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeyykJeUaamyyaiaacYcacaWGIbGaeyOkJepaaa@3C0D@  spojitá; dále v koncových bodech intervalu a,b MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeyykJeUaamyyaiaacYcacaWGIbGaeyOkJepaaa@3C0D@  platí f(a)f(b)<0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGHbGaaiykaiabgwSixlaadAgacaGGOaGaamOyaiaacMcacqGH8aapcaaIWaaaaa@406A@  a rovnice f(x)=0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWG4bGaaiykaiabg2da9iaaicdaaaa@3B0E@  má v intervalu a,b MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeyykJeUaamyyaiaacYcacaWGIbGaeyOkJepaaa@3C0D@  právě jeden kořen.

Křivka se nahradíme tětivou AB procházející dvěma krajními body A,B MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyqaiaacYcacaWGcbaaaa@384A@  na křivce. Tětiva je úsečka (část přímky) spojující oba body křivky. Body A=[a,f(a)] MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyqaiabg2da9iaacUfacaWGHbGaaiilaiaadAgacaGGOaGaamyyaiaacMcacaGGDbaaaa@3E59@   B=[b,f(b)] MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOqaiabg2da9iaacUfacaWGIbGaaiilaiaadAgacaGGOaGaamOyaiaacMcacaGGDbaaaa@3E5C@  jsou voleny, jak již bylo uvedeno, tak, aby f(a)f(b)<0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGHbGaaiykaiabgwSixlaadAgacaGGOaGaamOyaiaacMcacqGH8aapcaaIWaaaaa@406A@ . Uvedený postup představuje nahrazení funkce y=f(x) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyEaiabg2da9iaadAgacaGGOaGaamiEaiaacMcaaaa@3B52@  v intervalu a,b MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeyykJeUaamyyaiaacYcacaWGIbGaeyOkJepaaa@3C0D@  lineárním interpolačním mnohočlenem:

P 1 (x)=f(a)+ f(b)f(a) ba (xa) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiuamaaBaaaleaacaaIXaaabeaakiaacIcacaWG4bGaaiykaiabg2da9iaadAgacaGGOaGaamyyaiaacMcacqGHRaWkdaWcaaqaaiaadAgacaGGOaGaamOyaiaacMcacqGHsislcaWGMbGaaiikaiaadggacaGGPaaabaGaamOyaiabgkHiTiaadggaaaGaaiikaiaadIhacqGHsislcaWGHbGaaiykaaaa@4D70@ ; ba MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOyaiabgcMi5kaadggaaaa@39A1@

Průsečík přímky AB s osou x je zpřesnění kořene. Metoda regula falsi je konvergentní pro všechny spojité funkce. Metoda konverguje nejvýše lineárně. Obecně se jedná o nestacionární metodu, mnohdy (např. u konvexních funkcí, kdy je druhá derivace kladná) je stacionární - jeden krajní bod intervalu je vždy jedním ze dvou bodů užitých v následující iteraci. Tato metoda je velmi vhodná v případě, že nejsou známy výchozí údaje o poloze kořenu; konverguje však relativně pomalu. Stačí ale nalézt pouze dva body, ve kterých má hodnota funkce opačné znaménko a pak tuto metodu lze aplikovat na zadaný interval. Princip metody je znázorněn na následujícím obrázku.

Obr. 1

Pro výpočet aproximace kořene s použijeme vztah:

s= af(b)bf(a) f(b)f(a) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caiabg2da9maalaaabaGaamyyaiabgwSixlaadAgacaGGOaGaamOyaiaacMcacqGHsislcaWGIbGaeyyXICTaamOzaiaacIcacaWGHbGaaiykaaqaaiaadAgacaGGOaGaamOyaiaacMcacqGHsislcaWGMbGaaiikaiaadggacaGGPaaaaaaa@4D00@

(1)

nebo v jiné formě:

s=a f(a) f(b)f(a) (ba) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caiabg2da9iaadggacqGHsisldaWcaaqaaiaadAgacaGGOaGaamyyaiaacMcaaeaacaWGMbGaaiikaiaadkgacaGGPaGaeyOeI0IaamOzaiaacIcacaWGHbGaaiykaaaacqGHflY1caGGOaGaamOyaiabgkHiTiaadggacaGGPaaaaa@4AB7@

(2)

 

Při f(s) = 0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGZbGaaiykaiaabccacqGH9aqpcaqGGaGaaGimaaaa@3C4F@  nebo f(s)  0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGZbGaaiykaiaabccacqGHijYUcaqGGaGaaGimaaaa@3CFA@  výpočet končí. V opačném případě ( f(s)  0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGZbGaaiykaiaabccacqGHGjsUcaqGGaGaaGimaaaa@3D10@  nebo f(s) > ε MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGZbGaaiykaiaabccatCvAUfKttLearyqr1ngBPrgaiuaacqWF+aGpcqWFGaairmqr1ngBPrgitLxBI9gBaGGbaiab+v7aLbaa@4747@ , kde ε MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqeduuDJXwAKbYu51MyVXgaiuaacqWF1oqzaaa@3CBC@  je „malé“ číslo) postupujeme takto:

bude-li f(s) f(b) < 0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWGZbGaaiykaiaabccacaWGMbGaaiikaiaadkgacaGGPaGaaeiiaiabgYda8iaabccacaaIWaaaaa@401B@ , přeznačíme s MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caaaa@3705@  na a MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyyaaaa@36F3@  a s MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caaaa@3705@  počítáme podle stejného vztahu jako předtím, tedy s užitím (1) nebo (2). V opačném případě přeznačíme s MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caaaa@3705@  na b MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOyaaaa@36F4@  a s MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4Caaaa@3705@  počítáme opět podle jednoho z výše uváděných vztahů.

Pro funkce, pro které je metoda regula falsi stacionární (tj. nemění-li funkce v intervalu svůj charakter, což znamená, že v tomto intervalu je první derivace jen kladná nebo jen záporná ( f (x)0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGabmOzayaafaGaaiikaiaadIhacaGGPaGaeyiyIKRaaGimaaaa@3BDB@  ) a pro druhou derivaci a funkční hodnoty platí jeden ze čtyř následujících vztahů):

Obr. 2

Obr.3

Obr.4

Obr.5

Pak platí jeden ze dvou vzorců:

 

x i+1 = x i f(b)bf( x i ) f(b)f( x i ) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiEamaaBaaaleaacaWGPbGaey4kaSIaaGymaaqabaGccqGH9aqpdaWcaaqaaiaadIhadaWgaaWcbaGaamyAaaqabaGccaWGMbGaaiikaiaadkgacaGGPaGaeyOeI0IaamOyaiaadAgacaGGOaGaamiEamaaBaaaleaacaWGPbaabeaakiaacMcaaeaacaWGMbGaaiikaiaadkgacaGGPaGaeyOeI0IaamOzaiaacIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaiykaaaaaaa@4EE3@

x i +1= x i f(a)af( x i ) f(a)f( x i ) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiEamaaBaaaleaacaWGPbaabeaakiabgUcaRiaaigdacqGH9aqpdaWcaaqaaiaadIhadaWgaaWcbaGaamyAaaqabaGccaWGMbGaaiikaiaadggacaGGPaGaeyOeI0IaamyyaiaadAgacaGGOaGaamiEamaaBaaaleaacaWGPbaabeaakiaacMcaaeaacaWGMbGaaiikaiaadggacaGGPaGaeyOeI0IaamOzaiaacIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaiykaaaaaaa@4EE0@

platí pro Obr. 2 a Obr. 4

platí pro Obr. 3 a Obr. 5

nebo v jiném tvaru:

x i+1 = x i f( x i ) f(b)f( x i ) (b x i ) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiEamaaBaaaleaacaWGPbGaey4kaSIaaGymaaqabaGccqGH9aqpcaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0YaaSaaaeaacaWGMbGaaiikaiaadIhadaWgaaWcbaGaamyAaaqabaGccaGGPaaabaGaamOzaiaacIcacaWGIbGaaiykaiabgkHiTiaadAgacaGGOaGaamiEamaaBaaaleaacaWGPbaabeaakiaacMcaaaGaaiikaiaadkgacqGHsislcaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaiykaaaa@501F@

x i+1 = x i f( x i ) f(a)f( x i ) (a x i ) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiEamaaBaaaleaacaWGPbGaey4kaSIaaGymaaqabaGccqGH9aqpcaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0YaaSaaaeaacaWGMbGaaiikaiaadIhadaWgaaWcbaGaamyAaaqabaGccaGGPaaabaGaamOzaiaacIcacaWGHbGaaiykaiabgkHiTiaadAgacaGGOaGaamiEamaaBaaaleaacaWGPbaabeaakiaacMcaaaGaaiikaiaadggacqGHsislcaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaiykaaaa@501D@

platí pro Obr. 2 a Obr. 4

platí pro Obr. 3 a Obr. 5

 

Pravým nebo levým krajním bodem intervalu je po celou dobu výpočtu bod (b,f(b)) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaiikaiaadkgacaGGSaGaamOzaiaacIcacaWGIbGaaiykaiaacMcaaaa@3C28@  resp. (a,f(a)) MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaiikaiaadggacaGGSaGaamOzaiaacIcacaWGHbGaaiykaiaacMcaaaa@3C26@ .

Pro odhad chyby lze s využitím věty o střední hodnotě získat vztah:

| x i ξ | | f( x i ) | m MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaqWaaeaacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0IaeqOVdGhacaGLhWUaayjcSdGaeyizIm6aaSaaaeaadaabdaqaaiaadAgacaGGOaGaamiEamaaBaaaleaacaWGPbaabeaakiaacMcaaiaawEa7caGLiWoaaeaacaWGTbaaaaaa@483E@ , kde m= min x a,b | f (x) | MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyBaiabg2da9maaxababaGaciyBaiaacMgacaGGUbaaleaacaWG4bGaeyicI48aaaWaaeaacaWGHbGaaiilaiaadkgaaiaawMYicaGLQmcaaeqaaOWaaqWaaeaaceWGMbGbauaacaGGOaGaamiEaiaacMcaaiaawEa7caGLiWoaaaa@4857@

Pro zastavení výpočtu můžeme používat též podmínku f( x i )<ε MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOzaiaacIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaiykaiabgYda8iabew7aLbaa@3D1D@

Příklad 1. ( x 2 ) 2 sinx=0 MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqipv0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaadaWcaaqaaiaadIhaaeaacaaIYaaaaaGaayjkaiaawMcaamaaCaaaleqabaGaaGOmaaaakiabgkHiTiGacohacaGGPbGaaiOBaiaadIhacqGH9aqpcaaIWaaaaa@40D4@ :

Algoritmus:

function TForm1.F(X:extended): extended;

begin

F:=(x/2)*(x/2)-Sin(x);

end;

 

procedure TForm1.Button1Click(Sender: TObject);

var A,B,C,EPS,FA,FB,FC: extended;

k:integer;

begin

  A:=StrToFloat(edit1.text);

  B:=StrToFloat(edit2.text);

  EPS:=StrToFloat(edit3.text);

  FA:=F(A);

  FB:=F(B);

  k:=0;

  repeat

 

   C:=(A*FB-B*FA)/(FB-FA);

   FC:=F(C);

   inc(k);

    if FC*FB<0 then

                begin

                A:=C;

                FA:=FC

                end

                else

                begin

                B:=C;

                FB:=FC

                end

  until (abs(FC)<EPS);

  edit4.text:=FloatToStr(C);

  Button1.Caption:='Spočteno';

  Edit5.text :=IntToStr(k);

end;