Taylorův polynom srozumitelně

Článek jsem napsal proto, že všechny články na internetu se mi zdály příliš složité a nevysvětlovaly základní princip fungování taylorova polynomu.

Vyhýbám se přesným formalismům, mohou zde být i drobné nepřesnosti, avšak doufám, že po přečtení článků vám formalismy přijdou jasné a srozumitelné.

Předpoklady

Před tím, než začnete číst, byste měli vědět, co je to polynom, derivace a faktoriál, a umět derivovat a integrovat polynom.

Polynom je funkce, do které dosadíme hodnotu x a pomocí sčítání, odčítání, násobení a dělení spočítáme hodnotu polynomu v bodě x.

Derivace funkce v bodě a je číslo. Pokud y roste stejně rychle jako x, derivace je $=1$. Pokud y roste rychleji než x, derivace je $>1$, pokud pomaleji, derivace je $<1$. Pokud x roste, ale y stojí, derivace je $=0$.

Motivace

V každodenním životě často potřebujeme spočítat sinus, cosinus, tangens či logaritmus. Tak daleko však chodit nemusíme. Stačí, když potřebujeme spočítat odmocninu z nějakého čísla. Problém je ten, že my, lidé, umíme jenom sčítat, odčítat, násobit a dělit. Málo kdo z nás dokáže sínusit, logaritmovat či odmocňovat. Bohužel ani počítače nám s tím nepomohou. Jejich procesory většinou umí taky pouze sčítat (či přičítat opačnou hodnotu) nebo násobit (či násobit převrácenou hodnotou).

Už před stovkami let však existovaly matematické tabulky s hodnotami těchto funkcí. Stejně tak i kalkulačka při zmáčknutí SIN nám vrátí dost přesnou hodnotu. Jak to tedy ti lidé nebo stroje dělají?

Řešení je v přiblížení (aproximace) naší funkce (kterou neumíme spočítat) nějaké jiné podobné funkci (kterou umíme spočítat).

Konkrétní příklad

Řekněme, že chceme spočítat $sin(1)$, tedy sinus jednoho radiánu, který má hodnotu asi 0.841470984. O funkci sinus víme tyto 3 věci:

  • sinus nuly je nula ... $sin(0) = 0$
  • derivace sinu v nule je jedna ... $sin'(0) = 1$
  • sinus má periodu dvě pí ... $sin(x) = sin(x + 2\pi)$

Hezká vlastnost polynomů

Polynomy mají jednu hezkou vlastnost, a to:

"Pro každých N bodů v rovině existuje polynom stupně N-1 nebo menšího, který jimi prochází."


To znamená, že:

  • pro každý bod existuje vodorovná přímka, která jim prochází
  • pro každé dva body existuje přímka, která jimi prochází
  • pro každé tři body existuje parabola, která jimi prochází
  • ...

Vypadá to tedy, že polynomy mohou vypadat jakkoli a podobat se nejrůznějším funkcím.

Základní princip taylorova polynomu

Taylorův polynom je založen na jednoduchém principu, a to:

"Dvě funkce si jsou v okolí bodu X tím více podobné, čím více se podobají jejich derivace vyšších řádů v tomto bodě."


Idea byla asi takováto: funkce by se měly v okolí bodu podobat jedna druhé. Asi by tam měly mít stejnou funkční hodnotu (celkem logické). Asi by ten bod měly protínat pod stejným úhlem (neměla by tam jedna funkce růst a druhá naopak klesat). Pak by tam měly být obě stejně "křivé" (aby jedna nebyla v tomto bodě konvexní zatímco druhá konkávní). A pak si náhodou všimneme, že jsme právě mluvili o nulté, prví a druhé derivaci :)

Vypadá to, že by mohlo platit něco takového:

  • funkce by měly mít stejnou 0. derivaci, tj. funkční hodnotu v daném bodě.
  • když mají stejnou 1. derivaci (stejnou směrnici tečny v daném bodě), jsou si víc podobné
  • když mají stejnou 2. derivaci, jsou si podobné ještě víc
  • ...

Přiblížení polynomem obecně

Přibližujeme polynomem právě proto, že ho umíme spočítat (stačí nám sčítání, odčítání, násobení a dělení).

Příklad: $sin(x)$ v bodě 0 má nultou derivaci 0, první derivaci 1, druhou derivaci 0, třetí -1 a dál se to opakuje. Pokud bychom našli polynom, který bude mít v nule stejné derivace do nějakého řádu, můžeme místo sinu počítat hodnotu polynomu a věřit, že se to skoro rovná hodnotě sinu.

Příklad: hledání polynomu pro sinus

Zkusme najít polynom $p$, který bude podobný funkci sinus v okolí nuly. Nejdříve chtějme, aby měl stejnou 0. derivaci, potom 1., 2. ... a postupně zvyšujme nároky. Přitom si všímejme, jak se graf polynomu více a více podobá grafu sinu a zároveň hodnota v jedničce, $p(1)$, se víc a víc blíží $sin(1)$.

Polynom nultého stupně, co má v 0 stejnou hodnotu, jako sinus, je $p(x) = 0$ (stejná 0. derivace), p(1)= 0

  1. Sinus má první derivaci rovnou 1, odpovídá tomu polynom $p(x) = x$ (stejná 0. a 1. derivace), p(1)= 1

  2. Funkce $p(x) = x$ má v bodě 0 druhou derivaci 0, nepotřebujeme ji nijak měnit.
  3. Třetí derivace našeho polynomu v nule má být -1, zkusme tedy trochu integrovat a podle potřeby přičítat konstantu.
    • $p'''(x) = -1$ - v nule má být -1 (třetí derivace)
    • $p''(x) = -x$ - v nule má být 0 (druhá derivace), což odpovídá
    • $p'(x) = 1 - \frac{x^2}{2}$ , v nule má být 1 (první derivace), proto + 1
    • $p(x) = x - \frac{x^3}{6}$ v nule má být 0 (nultá derivace), což odpovídá
    a skutečně, polynom $p(x) = x - \frac{x^3}{6}$ se už víc podobá sinu (stejná 0. až 3. derivace), p(1)= 0.833333

  4. Čtvrtá derivace našeho polynomu v nule má být 0, tomu už ale vyhovuje předchozí polynom.
  5. Pátá derivace našeho polynomu má být 1, a tedy:
    • $p''''(x) = x$ - v nule má být 0 (čtvrtá derivace), což odpovídá
    • $p'''(x) = -1 + \frac{x^2}{2}$ , v nule má být -1 (třetí derivace), proto - 1
    • $p''(x) = -x + \frac{x^3}{6}$ v nule má být 0 (druhá derivace), což odpovídá
    • $p'(x) = 1 - \frac{x^2}{2} + \frac{x^4}{24} $ v nule má být 1 (první derivace), proto + 1
    • $p(x) = x - \frac{x^3}{6} + \frac{x^5}{120}$ v nule má být 0 (nultá derivace), což odpovídá
    a skutečně, polynom $p(x) = x - \frac{x^3}{6} + \frac{x^5}{120}$ se už víc podobá sinu (stejná 0. až 5. derivace), p(1)= 0.841666

  6. Šestá derivace našeho polynomu v nule má být 0, tomu už ale vyhovuje předchozí polynom.
  7. Podobným způsobem odvodíme nebo odhadneme další, přesnější polynom, a to $p(x) = x - \frac{x^3}{6} + \frac{x^5}{120} - \frac{x^7}{5040}$. (stejná 0. až 7. derivace), p(1)= 0.841468

Došli jsme tedy k funkci $p(x) = x - \frac{x^3}{6} + \frac{x^5}{120} - \frac{x^7}{5040}$, která je v okolí 0 velmi podobná funkci $sin(x)$.

Jak jsme si všimli, $sin(x)$ má v bodě nula derivace sudého řádu vždy nulové, taylorův polynom se mění pouze u přesnosti do liché derivace, stejně tak $x$ má v polynomu pouze liché exponenty. Teď možná mnozí tuší, kde se vzal výraz "lichá funkce" (funkce souměrná dle počátku).

Taylorův polynom pro obecnou funkci

Pro obecnou funkci f hledáme taylorův polynom p, který bude funkci f podobný v okolí bodu a. O funkci f známe několik úrovní derivací v bodě a. Polynom p musí v bodě a nabývat stejných derivací, jako f. Tedy $p^{(i)}(a) = f^{(i)}(a)$. To je vše, co od funkce p vyžadujeme.

Pokud do i-krát zderivovaného polynomu p dosadíme a, všechny členy by se měly vynulovat a zůstane tam pouze číslo $f^{(i)}(a)$. Polynom p tedy musí obsahovat hodnoty těchto derivací, navíc členy musí obsahovat (x-a), aby se vynulovaly po dosazení a. Členy polynomu musí také mít jmenovatele, který se při derivování bude krátit s exponenty, které se derivováním snižují o 1. Ve jmenovateli by měl být součin těchto exponentů, tedy faktoriál.

Vyhovuje tomu tento zápis:

$p(x) = f(a) + \frac{f'(a) * (x-a) }{ 1! } + \frac{f''(a) * (x-a)^2 }{ 2! }+ \frac{f'''(a) * (x-a)^3 }{ 3! } + ...$

Po dosazení a se polynom rovná $f(a)$ (ostatní členy se vynulovaly). Zkusme polynom zderivovat.

$p'(x) = 0 + f'(a) + \frac{f''(a) * (x-a)^1 }{ 1! }+ \frac{f'''(a) * (x-a)^2 }{ 2! } + ...$

Po dosazení a se polynom rovná $f'(a)$ (ostatní členy se vynulovaly). To platí i pro další úrovně derivování.

Polynom pro naši funkci sinus (a=0, nultá derivace 0, první 1, druhá 0, třetí -1, čtvrtá 0, ...) by vypadal takto:

$p(x) = 0 + \frac{1 * (x-0) }{ 1! } + \frac{0 * (x-0)^2 }{ 2! }+ \frac{-1 * (x-0)^3 }{ 3! } + \frac{0* (x-0)^4 }{ 4! } + \frac{1 * (x-0)^5 }{ 5! } +... $

Taylorova řada

Pokud pro nějakou funkci známe všechny její derivace do nekonečna (např. pro sinus, kde se tyto derivace opakují), můžeme ji vyjádřit nekonečným taylorovým polynomem. Hodnotu této funkce v nějakém bodě můžeme vyjádřit jako součet řady (nekonečně mnoha čísel).

Příklad:

O funkci $y=e^x$ víme, že v nule má hodnotu 1, první a všechny další derivace také 1. Vyjádříme si pro tuto funkci taylorův polynom

$p(x) = 1 + \frac{1 * (x-0) }{ 1! } + \frac{1* (x-0)^2 }{ 2! }+ \frac{1* (x-0)^3 }{ 3! } + ...$

Teď si můžeme spočítat hodnotu čísla $e$ (tj. $e^1$) libovolně přesně. Je to totiž:

$e = 1 + 1 + \frac{1}{2}+ \frac{1}{6} + \frac{1}{24} + \frac{1}{120} + ...$

43 komentářů:

  1. Anonymní ... (8. listopadu 2010 15:02)

    Skvělý ... po lopatě ... paráda.

  2. drvo ... (16. listopadu 2010 4:06)

    Dik moc, vdaka tomuto aspon troska uz chapem, co to mam vlastne naprogramovat :D

  3. Anonymní ... (18. listopadu 2010 22:46)

    Z matematiky za 1, z češtiny (mateřského jazyka!)
    nic moc:

    členy (neživotné podst. jméno) se vynulovaly!!!
    členové (životné) se vynulovali!!!

  4. Anonymní ... (19. listopadu 2010 6:38)

    Parada, skvele vysvetlene.. ale trochu jsem doufal vykreslovani taylerovych polynomu ve flashi;)

  5. Ivan ... (19. listopadu 2010 9:11)

    Ička jsem už opravil.. no jéje, to by mi moje češtinářka dala :)
    Jinak jsem rád, že se vám to líbí. Psal jsem to do podoby, jak bych to pochopil i já.
    BTW. Ty grafy teď vykresluje PHP při každém načtení stránky.

  6. Anonymní ... (29. prosince 2010 2:42)

    Je to super a pomohlo mi to :-) Děkuji.
    ... a jestli nevadí, tak tu http://developer.wolframalpha.com/widgets/gallery/view.jsp?id=61cfc044362973aac03013ad9db2bc4e je můj widget pro výpočet Taylorova polynomu přes WolframAlpha :-)

  7. Anonymní ... (30. prosince 2010 10:33)

    oceňuji:
    základní princip Taylorova polynomu (asi jsem to jen mlhavě tušil)

    motivaci

    a i praktické ukázky grafů, celé jsem to ale nečet- řek bych že to nebylo zbytečný sepisování :-)

  8. Anonymní ... (4. ledna 2011 13:00)

    žehnám ti...naprosto nekriticky a zbožně...

  9. Anonymní ... (6. ledna 2011 10:00)

    Krásná práce, děkuji.

  10. Anonymní ... (12. ledna 2011 11:27)

    Super :-)

  11. Anonymní ... (26. ledna 2011 14:37)

    Též děkuji, zítra jdu na zkoušku tak uvidíme =)

  12. Anonymní ... (8. února 2011 13:03)

    Wow, drsný! Tak teď jen přemejšlim, proč nám to Standa Hencl nevysvětlil takhle hezky - anebo jestli to udělal ale já jsem si to nenapsal a zapomněl… Pozítří mám státnice, třeba se to bude hodit :-)

  13. Ivan ... (12. února 2011 9:23)

    Díky, snad vám to pomůže :)
    Mě a možná i spoustě dalších lidí se ve škole často stává, že učitel při přednášce používá pro mě neznámé koncepty a výrazy, nebo je naopak příliš rychlý a já nestíhám všechno pobírat. Ze spousty přednášek si tak odnáším jen "tipy" na domácí samostudium :(

  14. Anonymní ... (13. března 2011 13:50)

    gre8

  15. Anonymní ... (31. května 2011 3:16)

    Skvely clanok, velka vdaka :)

  16. Anonymní ... (5. června 2011 0:58)

    Zrovna se učím na zkoušku z analýzy a dost jsi mi helpnul :o). Díky moc :o)

  17. Anonymní ... (25. srpna 2011 13:56)

    Super, díky :-)

  18. Anonymní ... (7. září 2011 10:13)

    Suprově vysvětleno, díky moc..

  19. Anonymní ... (7. října 2011 3:02)

    Pomohlo moc díky !

  20. Anonymní ... (25. října 2011 14:24)

    Díky, pomohlo mi to.

  21. Tomáš ... (15. prosince 2011 16:50)

    Díky moc :) na přednášce jsem to moc nepochopil, po přečtení článku už v tom mám jasno.

  22. Anonymní ... (17. prosince 2011 6:28)

    ehm,
    stále nechápu jednu věc. píšeš tady "Dvě funkce si jsou v okolí bodu X tím více podobné, čím více se podobají jejich derivace vyšších řádů v tomto bodě." a nazýváš to jednoduchým principem. Mohl bys mi napsat, jak na tohle mohl Taylor přijít?

  23. Ivan ... (5. ledna 2012 5:44)

    Ahoj, trochu jsem to tam rozepsal, snad je to teď jasnější.

  24. Irena ... (8. ledna 2012 3:53)

    Díky, moc pěkné, ale bojím se, že mě to zítra při zkoušce nezachrání ;). Hezký den všem matematikům!

  25. Anonymní ... (24. ledna 2012 9:40)

    Skvělé. Díky.

  26. Anonymní ... (31. ledna 2012 2:07)

    Grafy super, to jsem přesně potřeboval. Díky !

  27. Anonymní ... (3. února 2012 4:04)

    Toto je jasný příklad toho, že se všechny krásné myšlenky dají vyjádřit tak, že je pochopí každý. Občas mám pocit, že matematici dělají ty knihy plné hnusných vzorců proto, aby odradili masy a aby si připadali lepší než ostatní, když těm vzorcům rozumí :D:D

    Každopádně chci velice poděkovat autorovi za jeho iniciativu, protože ne každý by si dal tu práci. Po pročtení článku se z podivné věty, kterou raději nechci ani pochopit, stala věta, která dává smysl, pomůže v budoucnu s výpočty a není na ní nic složitého :D

    Ještě jednou díky moc :)

  28. Anonymní ... (14. února 2012 12:06)

    Díky moc, prisel jsem, videl jsem, pochopil jsem :D kez by to tak bylo na vsech matematickych prednaskach

  29. Anonymní ... (15. února 2012 14:15)

    Vyborne, bodaj by bolo viac takyhto clankov na internete, resp aby ich google umiestnoval do prvej 10 :)

  30. Anonymní ... (12. března 2012 15:00)

    Super... díky ;)

  31. Anonymní ... (2. května 2012 23:27)

    Super, děkuju moc! Krásné grafy, krásný TeX, krásný text!:)

  32. Dušan Rechtig ... (31. prosince 2012 3:21)

    Výborný článek, moc děkuju, už to jsem si v tom udělal pořádek.

  33. Anonymní ... (6. ledna 2013 6:43)

    Děkuju. Pochopil jsem to z výkladu hned po prvním přečtení a začal mi celý Taylorův polynom dávat smysl.

  34. Anonymní ... (15. ledna 2013 9:44)

    Po 25 letech jsem potřeboval vysvětlit rozvoje kolegovi z práce a už jsem si je pamatoval jen mlhavě, zápisky a skripta dávno v tahu, jeho zápisy dálkového studia k ničemu.
    Velmi dobrá práce autora, děkuji.
    Pavel Rys

  35. sojkaware ... (28. května 2013 9:32)

    Tomuhle se říká rozumět matematice. A ne zběsile chrllit definice a psát vzorce bez sebemenšího komentáře-jak to občas na vysokých školách bývá. Autor má můj obdiv.

  36. Anonymní ... (19. srpna 2013 9:25)

    Super výklad. Díky

  37. Petr Houška ... (13. listopadu 2013 13:38)

    Děkuji.

  38. Anonymní ... (18. ledna 2014 9:19)

    Díky, hezky vysvětleno

  39. Anonymní ... (31. ledna 2014 3:24)

    Skvělé, moc mi to pomohlo ;-)

  40. Anonymní ... (20. srpna 2014 10:05)

    Jsem moc vděčnej za nesmírně vystihující popis problému. Díky! :)

  41. Anonymní ... (23. června 2015 3:35)

    Takhle by se měla učit ve škole matematika !!!!!!! Parádní ukázka!!!!!

  42. Anonymní ... (14. listopadu 2015 4:14)

    Konečně mi to dává smysl. VDĚK A OBDIV AUTOROVI!!

  43. Lukáš ... (20. února 2016 7:38)

    Moc hezky vysvětlené! :) Je ve mně touha umět si rychle spočítat sinus, cosinus, tangens a cotangens běžných úhlů (do 2π) jen s pomocí základní kalkulačky. (Občas tyto funkce používám v praxi, v zaměstnání, a je zábavné obejít se někdy bez vědecké kalkulačky, poradit si jen vlastními silami :D) A díky tomuto článku je mi Taylorův polynom krásně srozumitelný. Palec nahoru autorovi! :)

Okomentovat