Vytvorte súbor [priezvisko]-4.R a naprogramujte v ňom nasledovné (použite dáta pre Vami vybraný menový kurz):
1a) Naprogramujte funkciu rootByRegulaFalsi(fun, a, b, tol=sqrt(.Machine$double.eps), niter=100, verbose=0), ktorá numericky rieši rovnicu fun(x)=0 metódou regula falsi; viď napr. https://en.wikipedia.org/wiki/Regula_falsi . V implementácii nepoužite rekurziu.
1b) Pomocou naprogramovanej funkcie nájdite koreň rovnice x^2-2=0 v intervale [0,2]. Pritom podrobne vypíšte každý krok iterácie (pridaním výpisov do funkcie rootByRegulaFalsi() ak zadaný parameter verbose je väčší ako 0). Zobrazte graf funkcie aj odhadnutý koreň; obrázok uložte.
1c) Riešte úlohu (1b) metódou bisekcie, pričom rovnako podrobne vypíšte každý krok iterácie.
1d) Zopakujte úlohy (1b) a (1c) pre rovnicu 2x^3-4x^2+3x=0 a interval [-1,1].
2a) Naprogramujte funkciu rootBySteffensen(fun, x0, tol=sqrt(.Machine$double.eps), niter=100, verbose=0), ktorá numericky rieši rovnicu fun(x)=0 Steffensenovou metódou; viď napr. https://en.wikipedia.org/wiki/Steffensen%27s_method. Steffensenova metóda má analogický vzorec ako Newtonova s tým rozdielom, že deriváciu nahradzuje diferenčným podielom:
x = x0 - f(x0) / g(x0), g(x0) = [f(x0 + f(x0)) - f(x0)] / f(x0).
2b) Pomocou naprogramovanej funkcie nájdite koreň rovnice x^3-2=0 v intervale [0,2]. Pritom podrobne vypíšte každý krok iterácie (pridaním výpisov do funkcie rootBySteffensen() ak zadaný parameter verbose je väčší ako 0).
2c) Riešte úlohu (2b) aj metódou bisekcie, regula falsi a Newtonovou metódou, pričom rovnako podrobne vypíšte každý krok iterácie. Zhodnoťte, ktorá metóda potrebovala najmenší a ktorá najväčší počet iterácií.
3) Newtonovou metódou riešte rovnicu exp(x) - 1.5 - atan(x) = 0 so začiatočnou hodnotou x0=-7 a s toleranciou tol=1e-10. Zobrazte aj graf funkcie na intervale [-40,-10] a vyznačte na ňom nájdený koreň; obrázok uložte.
Všetky výsledky uložte do R-súboru vo forme komentára, hneď za príslušným R-kódom. Pri riešení nepoužite žiadnu z externých R-knižníc okrem Rmpfr; využiť môžete funkcie z prednášok.
R-súbor spolu s PDF-súbormi obrázkov zazipujte do súboru s názvom [priezvisko]-4.zip a pošlite na email vladimir.spitalsky (doména umb.sk) do 4.4.2022.