"

Funktion polynomiapproksimaatio

Taylorin kaava on tärkeä työkalu funktion approksimoinnissa. Funktiota \(f(x)\) arvioidaan Taylorin polynomilla \(P_n(x)\) ja arviossa tehdyn virheen suuruutta virhetermin \(R_n(x)\) avulla.

Huomautus.

Jatkossa sanonnalla ”kahden desimaalin tarkkuudella” tarkoitetaan sitä, että virhe on korkeintaan \(0{,}005\). Tämä ei tarkoita välttämättä sitä, että saataisiin oikea kaksidesimaalinen likiarvo (tästä on esimerkki), mutta likiarvon toinen desimaali on kuitenkin korkeintaan ykkösen verran väärä. Vastaavasti määritellään yleisesti ilmaus ”\(n\):n desimaalin tarkkuudella” tarkoittamaan sitä, että virhe on korkeintaan \(0{,}5 \cdot 10^{-n}\).

Esimerkki.

Laske \(e\) neljän desimaalin tarkkuudella.

Ratkaisu.

Käytetään Taylorin kaavaa. Funktiolle \(e^x\) pisteessä \(1\) on

\[e=e^1=1+1+\frac{1}{2!}+\frac{1}{3!}+\cdots+\frac{1}{n!}+R_n(1)=P_n(1)+R_n(1).\]

Koska \(f^{(n+1)}(z)=e^z\le e\), kun \(0<z<1\), niin virhetermille on voimassa

\[|R_n(1)|=\left|\frac{f^{(n+1)}(z)}{(n+1)!}\right|1^{n+1} \le\frac{e}{(n+1)!}\le\frac{3}{(n+1)!}.\]

On löydettävä \(n\) siten, että \(|R_n(1)|<0{,}5 \cdot 10^{-4} = \frac{1}{20~000}\). Esimerkiksi riittää valita niin suuri \(n\), että

\[\frac{3}{(n+1)!}<\frac{1}{20~000}\Leftrightarrow(n+1)!>60~000.\]

Kokeilemalla havaitaan, että pienin epäyhtälön toteuttava \(n\) on \(n=8\). Täten luvun \(e\) arvo kysytyllä tarkkuudella on

\[e\approx1+1+\frac{1}{2!}+\frac{1}{3!}+\cdots+\frac{1}{8!}\approx2{,}7183.\]

Esimerkki.

Hae polynomi, joka approksimoi funktiota \(\sin x\) yhden desimaalin tarkkuudella välillä

  1. \(\left[-\frac{\pi}{4},\frac{\pi}{4}\right]\),
  2. \(\left[-\frac{\pi}{2},\frac{\pi}{2}\right]\).
  3. Minkälainen tarkkuus saavutetaan, kun sinifunktiota approksimoidaan \(7\). asteen Taylorin polynomilla välillä \([-\pi,\pi]\)?
Ratkaisu.

Koska \(|\sin z| \leq 1\) ja \(|\cos z| \leq 1\), Taylorin kaavan

\[\sin x=x-\frac{x^3}{3!}+\frac{x^5}{5!}-\cdots+\frac{(-1)^nx^{2n+1}}{(2n+1)!}+R_{2n+1}(x)=P_{2n+1}(x)+R_{2n+1}(x)\]

virhetermiä voidaan arvioida

\[|R_{2n+1}(x)|=\frac{|f^{(2n+2)}(z)||x|^{2n+2}}{(2n+2)!} \le\frac{|x|^{2n+2}}{(2n+2)!}.\]
  1. Nyt \(|x|<\frac{\pi}{4}<1\), joten \(|R_{2n+1}(x)|\le\dfrac{1}{(2n+2)!}\). Vaaditaan, että

    \[\frac{1}{(2n+2)!}<0{,}05=\frac{1}{20}\Leftrightarrow(2n+2)!>20.\]

    Riittää valita \(n=1\), jolloin sinifunktion Taylorin polynomi on astetta \(2n + 1 = 3\). Siis

    \[\sin x\approx P_3(x)=x-\frac{x^3}{3!}\]

    yhden desimaalin tarkkuudella välillä \(\left[-\frac{\pi}{4},\frac{\pi}{4}\right]\).

  2. Nyt \(|x|<\frac{\pi}{2}<2\), joten \(|R_{2n+1}(x)|\le\dfrac{2^{2n+2}}{(2n+2)!}\). Vaaditaan, että

    \[\frac{2^{2n+2}}{(2n+2)!}<0{,}05.\]

    Kokeilemalla havaitaan, että riittää valita \(n=3\), jolloin sinifunktion Taylorin polynomi on astetta \(2n + 1 = 7\). Siis

    \[\sin x\approx P_7(x)=x-\frac{x^3}{3!}+\frac{x^5}{5!}-\frac{x^7}{7!}\]

    yhden desimaalin tarkkuudella välillä \(\left[-\frac{\pi}{2},\frac{\pi}{2}\right]\).

  3. Seitsemännen asteen Taylorin polynomia vastaa indeksin arvo \(n=3\), joten

    \[|R_7(x)|\le\frac{\pi^8}{8!}=0{,}235\cdots.\]

    Approksimoitaessa funktiota \(\sin x\) välillä \([-\pi,\pi]\) polynomilla

    \[P_7(x)=x-\frac{x^3}{3!}+\frac{x^5}{5!}-\frac{x^7}{7!}\]

    tehdään siis korkeintaan noin \(0{,}24\) yksikön suuruinen virhe.

Seuraavassa kuvassa havainnollistetaan edellisen esimerkin approksimaatioita. Ensimmäisen asteen Taylorin polynomi

\[P_1(x)=f(c)+f'(c)(x-c)\]

on lineaarinen approksimaatio, joka tässä esimerkissä on

\[\sin x\approx P_1(x)=x.\]

Korkeamman asteen termien mukaan ottaminen parantaa arviota, kuten kuvastakin selvästi nähdään.

../_images/sarjateoriataylorinpolynomi.svg

Esimerkki.

Tarkastellaan kuvan mukaista mallia heilurista, jossa massattoman langan (pituus \(L\)) päässä oleva punnus (massa \(m\)) vapautetaan kulmasta \(\theta_0\in[0,\pi]\) (jolloin \(-\theta_0\le\theta\le\theta_0\)). Arvioidaan heilurin heilahdusaikaa eli jaksoa \(T\).

../_images/sarjateoriahailurinheilahdus.svg

Jätetään ilmanvastus huomiotta, jolloin punnukseen vaikuttaa liikkeen suunnassa ainoastaan painovoiman \(\mathbf{F}=m\mathbf{g}\) liikkeen suuntainen komponentti \(\mathbf{F}_\theta\), jonka suuruus on

\[F_\theta=mg\sin\theta.\]

Käytetään sinille Maclaurinin kehitelmää eli

\[\sin\theta=\theta-\frac{\theta^3}{3!}+\frac{\theta^5}{5!}-\cdots\]

ja tehdään ensimmäisen asteen arvio \(\sin\theta\approx\theta\). Kyseessä on vuorotteleva sarja, joten arviossa tehdään virhe, joka on korkeintaan \(\left|\frac{\theta^3}{3!}\right|\) (katso Leibnizin testi). Jos esimerkiksi \(|\theta|\le10^\circ\approx0{,}17\) rad, niin suhteellisen virheen maksimiksi voidaan arvioida \((0{,}{17}^3/6)/0{,}{17}\approx0{,}5~\%\). Merkitään kijaimella \(x\) punnuksen kulkemaa matkaa tasapainotilasta (\(\theta=0\)) kulmaan \(\theta\), eli \(x=L\theta\). Nyt

\[F_\theta\approx mg\theta=\frac{mg}{L}x,\]

eli \(F_\theta\) on likimain suoraan verrannollinen poikkeamaan \(x\) tasapainoasemasta, verrannollisuuskertoimena (”jousivakiona”) \(k=mg/L\). Pienillä kulmilla heiluri siis käyttäytyy kuten vaimentamaton vapaa värähtelijä, jonka kulmanopeus on \(\omega=\sqrt{\frac{k}{m}}=\sqrt{\frac{g}{L}}\). Jaksolle \(T=\frac{2\pi}{\omega}\) saadaan siten arvio

\[T\approx2\pi\sqrt{\frac{L}{g}},\]

kun \(\theta_0\) on pieni. Erityisesti nähdään, että pienillä \(\theta_0\) jakso ei riipu heilahduksen amplitudista \(\theta_0\), vaan ainoastaan heilurin pituudesta \(L\). Tämän vuoksi heilurikello näyttää hyvin tarkasti oikeaa aikaa, vaikka heiluriliikkeen amplitudi pienenisi ajan kuluessa.

Joskus sarjoja voidaan hyödyntää muotoa \(\frac00\) tai \(\frac\infty\infty\) olevien raja-arvojen laskemisessa esimerkiksi tapauksissa, joissa l’Hôpital’n sääntö ei tuota tulosta.

Esimerkki.

Laske \(\displaystyle\lim_{x\to0}\frac{(e^x-1-x)^2}{x^2-\ln(1+x^2)}\).

Ratkaisu.

Kyseessä on muotoa \(\frac00\) oleva raja-arvo. Funktioiden \(e^x\) ja \(\ln(1+x^2)\) sarjakehitelmiä hyödyntäen nähdään, että

\[\begin{split}\begin{aligned} \frac{(e^x-1-x)^2}{x^2-\ln(1+x^2)} &=\frac{\left(1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\cdots-1-x\right)^2}{x^2-\left(x^2-\frac{x^4}{2}+\frac{x^6}{3}-\cdots\right)}\\ &=\frac{\left(\frac{x^2}{2}+\frac{x^3}{6}+\cdots\right)^2}{\frac{x^4}{2}-\frac{x^6}{3}+\cdots} \\ &=\frac{\frac{x^4}{4}\left(1+\frac{x}{3}+\cdots\right)^2}{\frac{x^4}{2}\left(1-\frac{2x^2}{3}+\cdots\right)} \\ &\to\frac{\frac14}{\frac12}=\frac12,\end{aligned}\end{split}\]

kun \(x\to0\).

Taylorin kaavalla voidaan myös arvioida monia hankalia integraaleja.

Esimerkki.

Arvioi integraalia \(\displaystyle\int_0^1\sin(x^2)\,\mathrm{d}x\) kolmen desimaalin tarkkuudella.

Ratkaisu.

Funktion \(\sin x\) sarjakehitelmästä saadaan

\[\sin(x^2)=x^2-\frac{x^6}{3!}+\frac{x^{10}}{5!}-\cdots+\frac{(-1)^nx^{4n+2}}{(2n+1)!}+\cdots.\]

Integroidaan termeittäin pitkin väliä \([0,1]\), jolloin

\[\int_0^1\sin(x^2)\,\mathrm{d}x=\frac13-\frac{1}{7\cdot3!}+\frac{1}{11\cdot5!}-\cdots+\frac{(-1)^n}{(4n+3)(2n+1)!}+\cdots.\]

Funktion \(\sin x\) Taylorin sarjaa on jo käsitelty aiemmassa esimerkissä. Nyt voitaisiinkin soveltaa tämän esimerkin virhearviota funktiolle \(\sin(x^2)\) ja arvioida sillä integraalin virhettä, mutta koska integraalin sarjakehitelmä on vuorotteleva sarja ja toteuttaa Leibnizin testin oletukset, niin on yksinkertaisempaa käyttää Leibnizin testiä. Pienin \(n\), joka toteuttaa epäyhtälön

\[\frac{1}{(4n+3)(2n+1)!}<0{,}0005\]

on \(n=3\). Haluttuun tarkkuuteen riittää siis ottaa termit indeksiin \(n=2\) saakka, eli

\[\int_0^1\sin(x^2)\,\mathrm{d}x\approx\frac13-\frac{1}{7\cdot3!}+\frac{1}{11\cdot5!}\approx0{,}310.\]

Tämä keino on huomattavasti tehokkaampi kuin ”numeronmurskaaminen” esimerkiksi jollakin numeerisen integroinnin menetelmällä, jossa jouduttaisiin ottamaan kymmeniä tai satoja osavälejä samaan tarkkuuteen pääsemiseksi.