5. Taylor-polynomi

Sisältö

Taylor-polynomi


Esimerkki

Verrataan funktion \sin x kuvaajaa (punainen) polynomien 
	x-\frac{x^3}{3!}+\frac{x^5}{5!}-\dots + \frac{(-1)^nx^{2n+1}}{(2n+1)!}
	kuvaajiin (sininen) arvoilla n=1,2,3,\dots,12.

Kokeile. Funktio sin ja polynomi

\displaystyle\sum_{k=0}^{n}\frac{(-1)^{k}x^{2k+1}}{(2k+1)!}

Määritelmä: Taylor-polynomi

Olkoon f funktio, joka on k kertaa derivoituva pisteessä x_{0}. Tällöin Taylor-polynomi \begin{align} P_n(x)&=P_n(x;x_0)\\\ &=f(x_0)+f'(x_0)(x-x_0)+\frac{f''(x_0)}{2!}(x-x_0)^2+ \\ & \dots +\frac{f^{(n)}(x_0)}{n!}(x-x_0)^n\\ &=\sum_{k=0}^n\frac{f^{(k)}(x_0)}{k!}(x-x_0)^k\\ \end{align} on (derivaattojen suhteen) paras n-asteinen polynomiapproksimaatio funktiolle f pisteen x_0 lähellä.

Huom. Tapauksessa x_0=0 käytetään usein nimeä Maclaurin-polynomi.


Jos f on n kertaa derivoituva pisteessä x_0, niin Taylor-polynomilla on pisteessä x_0 samat derivaatat kuin funktiolla f, aina (derivaatan) kertalukuun n saakka.

Syy (tapaus x_0=0): Olkoon 
		P_n(x)=c_0+c_1x+c_2x^2+c_3x^3+\dots +c_nx^n,
	jolloin \begin{align} P_n'(x)&=c_1+2c_2x+3c_3x^2+\dots +nc_nx^{n-1}, \\ P_n''(x)&=2c_2+3\cdot 2 c_3x\dots +n(n-1)c_nx^{n-2} \\ P_n'''(x)&=3\cdot 2 c_3\dots +n(n-1)(n-2)c_nx^{n-3} \\ \dots && \\ P^{(k)}(x)&=k!c_k + x\text{ termejä} \\ \dots & \\ P^{(n)}(x)&=n!c_n \\ P^{(n+1)}(x)&=0. \end{align}

Tämän avulla kertoimet voidaan ratkaista yksi kerrallaan: \begin{align} c_0= P_n(0)=f(0) &\Rightarrow c_0=f(0) \\ c_1=P_n'(0)=f'(0) &\Rightarrow c_1=f'(0) \\ 2c_2=P_n''(0)=f''(0) &\Rightarrow c_2=\frac{1}{2}f''(0) \\ \vdots & \\ k!c_k=P_n^{(k)}(0)=f^{(k)}(0) &\Rightarrow c_k=\frac{1}{k!}f^{(k)}(0). \\ \vdots &\\ n!c_n=P_n^{(n)}(0)=f^{(n)}(0) &\Rightarrow c_k=\frac{1}{n!}f^{(n)}(0). \end{align} Kertaluvusta k=n+1 alkaen lisäehtoja ei voi enää asettaa, koska P^{(n+1)}(x)=0.

Taylorin kaava

Jos derivaatta f^{(n+1)} on olemassa ja jatkuva jollakin välillä I=\, ]x_0-\delta,x_0+\delta[, niin f(x)=P_n(x;x_0)+E_n(x) ja virhetermille E_n(x) pätee 
		E_n(x)=\frac{f^{(n+1)}(c)}{(n+1)!}(x-x_0)^{n+1}
	jollakin c\in [x_0,x]\subset I. Jos on olemassa sellainen vakio M (indeksistä n riippumaton), että |f^{(n+1)}(x)|\le M kaikilla x\in I, niin 
		|E_n(x)|\le \frac{M}{(n+1)!}|x-x_0|^{n+1} \to 0,
	kun n\to\infty.


Todistus sivuutetaan (mathemaattinen induktio tai osittaisintegrointi).


Examples of Maclaurin polynomial approximations: \begin{align} \frac{1}{1-x} &\approx 1+x+x^2+\dots +x^n =\sum_{k=0}^{n}x^k\\ e^x&\approx 1+x+\frac{1}{2!}x^2+\frac{1}{3!}x^3+\dots + \frac{1}{n!}x^n =\sum_{k=0}^{n}\frac{x^k}{k!}\\ \ln (1+x)&\approx x-\frac{1}{2}x^2+\frac{1}{3}x^3-\dots + \frac{(-1)^{n-1}}{n}x^n =\sum_{k=1}^{n}\frac{(-1)^{k-1}}{k}x^k\\ \sin x &\approx x-\frac{1}{3!}x^3+\frac{1}{5!}x^5-\dots +\frac{(-1)^n}{(2n+1)!}x^{2n+1} =\sum_{k=0}^{n}\frac{(-1)^k}{(2k+1)!}x^{2k+1}\\ \cos x &\approx 1-\frac{1}{2!}x^2+\frac{1}{4!}x^4-\dots +\frac{(-1)^n}{(2n)!}x^{2n} =\sum_{k=0}^{n}\frac{(-1)^k}{(2k)!}x^{2k} \end{align}

Esimerkki

Kuinka mones Taylor-polynomi P_n(x) approksimoi funktiota \sin x välillä [-\pi,\pi] niin hyvin, että virheen itseisarvo on alle  10^{-6}?

Käytetään Taylorin kaavaa funktiolle f(x)=\sin x pisteen x_0=0 suhteen. Tällöin |f^{(n+1)}(c)|\le 1 riippumatta luvusta n ja pisteestä c. Lisäksi kyseisellä välillä on |x-x_0|=|x|\le \pi. Ehto toteutuu (ainakin silloin) kun 
		|E_n(x)|\le \frac{1}{(n+1)!}\pi^{n+1} < 10^{-6}.
	Tämä epäyhtälö täytyy ratkaista kokeilemalla luvun n eri arvoja; ratkaisuksi saadaan n\ge 16.

Vaadittu tarkkuus saadaan siis polynomilla P_{16}(x), joka on sinifunktion tapauksessa sama kuin P_{15}(x).

Kuvaajista tms. voi tarkistaa, ettei P_{13}(x) riitä vaadittuun tarkkuteen, joten teoreettinen raja on tarkka!

Taylorin polynomi ja ääriarvot


Jos f'(x_0)=0, niin myös osa korkeamman kertaluvun derivaatoista voi olla nollia: 
		f'(x_0)=f''(x_0)= \dots = f^{(n-1)}(x_0) =0,\ f^{(n)}(x_0) \neq 0.
	Tällöin funktion f käyttäytyminen pisteen x=x_0 lähellä määräytyy (vakiotermi f(x_0) ei vaikuta) Taylor-polynomin johtavasta termistä 
		\frac{f^{(n)}(x_0)}{n!}(x-x_0)^{n}.
	.

Tämä johtaa seuraavaan tulokseen:

Ääriarvot
  • Jos n on pariton, niin x_0 ei ole funktion f paikallinen ääriarvokohta.
  • Jos n on parillinen ja f^{(n)}(x_0)>0, niin funktiolla f on paikallinen minimi pisteessä x_0.
  • Jos n parillinen ja f^{(n)}(x_0), niin funktiolla f on paikallinen maksimi pisteessä x_0.

Newtonin menetelmä


The first Taylor polynomial P_1(x)=f(x_0)+f'(x_0)(x-x_0) is the same as the linearization of f at the point x_0. This can be used in some simple approximations and numerical methods.

Newtonin menetelmä

Yhtälö f(x)=0 voidaan ratkaista likimääräisesti valitsemalla jokin alkupiste x_0 (esimerkiksi kuvaajan perusteella) ja määrittelemällä lukujono palautuskaavalla 
	x_{n+1}=x_n-\frac{f(x_n)}{f'(x_n)}
	for n=0,1,2,\dots Tämä johtaa jonoon (x_0,x_1,x_2,\dots ), jonka termit approksimoivat yleensä funktion f nollakohtaa yhä paremmin indeksin n kasvaessa.


Palautuskaava perustuu geometriseen ideaan, jossa funktion nollakohtaa approksimoidaan sen tangenttisuoran nollakohdan avulla. Kyseessä on funktion linearisointi eli 1. asteen Taylor-polynomi edellisen pisteen x_n suhteen.

Esimerkki

Määritä luvun \sqrt{2} likiarvo Newtonin menetelmän avulla.

Käytetään Newtonin menetelmää funktiolle f(x)=x^2-2 ja alkuarvoa x_0=2. Palautuskaava tulee muotoon 
	x_{n+1}= x_n-\frac{x_n^2-2}{2x_n} = \frac{1}{2}\left(x_n+\frac{2}{x_n}\right),
	josta saadaan x_1=1{,}5, x_2\approx 1{,}41667, x_3\approx 1{,}4142157 jne.

Kokeilemalla huomataan (esim. Maple), että oikeiden desimaalien lukumäärä suunnilleen kaksinkertaistuu jokaisella askeleella, ja x_7 tuottaa yli 100 oikeaa desimaalia, kunhan välivaiheet lasketaan riittävällä tarkkuudella.

Taylor-sarja


Taylor-sarja

Jos Taylorin kaavan virhetermi E_n(x) lähestyy nollaa, kun n kasvaa, niin Taylor-polynomin raja-arvona saadaan Taylor-sarja f (= Maclaurin-sarja tapauksessa x_0=0).

Funktion f Taylor-sarja on muotoa 
		\sum_{k=0}^{\infty}\frac{f^{(k)}(x_0)}{k!}(x-x_0)^k 
		= \lim_{n\to\infty} \sum_{k=0}^{n}\frac{f^{(k)}(x_0)}{k!}(x-x_0)^k .
	Tämä on esimerkki potenssisarjasta.


Taylor-sarja voidaan muodostaa aina, kun funktiolla f on kaikkien kertalukujen derivaatat pisteessä x_0 ja nämä sijoitetaan ym. kaavaan. Tähän liittyy kuitenkin kaksi ongelmaa: 1. Suppeneeko Taylor-sarja kaikilla muuttujan arvoilla x?

Vastaus: Ei aina; esimerkiksi funktion 
	f(x)=\frac{1}{1-x}
	Maclaurin-sarja (= geometrinen sarja) suppenee vain arvoilla -1 < x < 1, vaikka alkuperäinen funktio on derivoituva  pisteissä x\neq 1: 
	f(x)=\frac{1}{1-x} = 1+x+x^2+x^3+x^4+\dots

Kokeile. Newtonin menetelmä. Valitse alkukohta x_{0} ja iteroi (monta kertaa) funktion nollakohdan likiarvon selvittämiseksi.
x_{0}=~

2. Jos sarja suppenee jollakin arvolla x, niin onko sarjan summa sama kuin f(x)? Vastaus: Ei aina; esimerkiksi funktiolle 
	f(x)=\begin{cases}
	e^{-1/x^2}, & x\neq 0,\\
	0, & x=0,\\
	\end{cases}
	pätee f^{(k)}(0)=0 kaikilla k\in \mathbf{N} (alkeellinen, mutta teknisesti hieman hankala lasku). Näin ollen sen Maclaurin-sarja on identtisesti nolla ja suppenee kohti arvoa f(x) vain kohdassa x=0.

Johtopäätös: Taylor-sarjoja pitäisi aina tutkia huolellisesti analysoimalla virhetermejä. Käytännössä voidaan kuitenkin usein käyttää tunnettuja sarjakehitelmiä apuna.

 
Funktion e^{-1/x^2} kuvaaja.
Esimerkkejä

\begin{align} \frac{1}{1-x} &= \sum_{k=0}^{\infty} x^k,\ \ |x|< 1 \\ e^x &= \sum_{k=0}^{\infty} \frac{1}{k!}x^k, \ \ x\in \mathbb{R} \\ \sin x &= \sum_{k=0}^{\infty} \frac{(-1)^{k}}{(2k+1)!} x^{2k+1}, \ \ x\in \mathbb{R} \\ \cos x &= \sum_{k=0}^{\infty} \frac{(-1)^{k}}{(2k)!} x^{2k},\ \ x\in \mathbb{R} \\ (1+x)^r &= 1+\sum_{k=1}^{\infty} \frac{r(r-1)(r-2)\dots (r-k+1)}{k!}x^k, |x|<1 \end{align} Viimeinen on nimeltään binomisarja ja se  voidaan muodostaa kaikilla r\in \mathbb{R}. Jos r=n \in \mathbb{N}, niin indeksistä k=n+1 alkaen kaikki kertoimet ovat nollia, ja alkuosassa 
	\binom{n}{k} =\frac{n!}{k!(n-k)!} = \frac{n(n-1)(n-2)\dots (n-k+1)}{k!}.

Vertaa binomikaavaan: 
	(a+b)^n=\sum_{k=0}^n\binom{n}{k} a^{n-k}b^k
	=a^n +na^{n-1}b+\dots +b^n,
	kun n\in\mathbb{N}.

Potenssisarja


Määritelmä: Potenssisarja

Potenssisarja on muotoa 
	\sum_{k=0}^{\infty} c_k(x-x_0)^k 
	= \lim_{n\to\infty} \sum_{k=0}^{n}c_k(x-x_0)^k.
	Piste x_0 on sarjan keskus luvut c_k ovat potenssisarjan kertoimet.

Sarja suppenee pisteessä x, jos ym. raja-arvo on olemassa ja äärellinen.

Suppenemisen suhteen on vain kolme olennaisesti erilaista tapausta:

Abelin lause.
  •  Sarja suppenee vain arvolla x=x_0 (jolloin siinä esiintyy pelkästään vakio c_0)
  •  Sarja suppenee kaikilla x\in \mathbb{R}
  •  Sarja supppenee jollakin välillä ]x_0-R,x_0+R[ (ja mahdollisesti yhdessä tai molemmissa päätepisteissä), ja hajaantuu muilla muuttujan x arvoilla.

Luku R on potenssisarjan suppenemissäde. Kahdessa ensimmäisessä tapauksessa merkitään R=0 tai R=\infty.

Esimerkki

Millä muuttujan x arvoilla potenssisarja \sum_{k=1}^{\infty} \frac{k}{2^k}x^k suppenee?

Käytetään suhdetestiä lausekkeelle a_k=kx^k/2^k. Silloin 
	\left| \frac{a_{k+1}}{a_k} \right| = 
	\left| \frac{(k+1)x^{k+1}/2^{k+1}}{kx^k/2^k} \right|
	= \frac{k+1}{2k}|x| \to \frac{|x|}{2},
	kun k\to\infty. Suhdetestin perusteella sarja suppenee, kun |x|/2, ja hajaantuu arvoilla |x|/2>1. Rajatapauksissa |x|/2= 1\Leftrightarrow x=\pm 2 sarjan yleinen termi ei lähesty nollaa, joten sarja hajaantuu.

Tulos: Sarja suppenee arvoilla -2< x< 2, ja hajaantuu muuten.

Määritelmä: Summafunktio

Sarjan suppenemisvälillä I voidaan määritellä funktio f\colon I\to \mathbb{R} asettamalla \begin{equation} \label{summafunktio} f(x) = \sum_{k=0}^{\infty} c_k(x-x_0)^k, \tag{1} \end{equation} jota kutsutaan potenssisarjan summafunktioksi.

Summafunktio f on jatkuva ja derivoituva avoimella välillä ]x_0-R,x_0+R[. Lisäksi derivaatta f'(x) voidaan laskea derivoimalla potenssisarja termeittäin: 
	f'(x)=\sum_{k=1}^{\infty}kc_k(x-x_0)^{k-1}.
	Huom. Vakiotermi c_0 häviää derivoinnissa, joten summaus alkaa kohdasta k=1. Derivoitu sarja suppenee samalla välillä x\in \, ]x_0-R,x_0+R[ kuin alkuperäinen potenssisarja; tämä voi tuntua hieman yllättävältä kertoimen k vuoksi.

Esimerkki

Määritä potenssisarjan 1+2x+3x^2+4x^3+\dots summafunktio.

Tämä sarja saadaan derivoimalla termeittäin geometrinen sarja (kun q=x). Näin ollen \begin{align} 1+2x+3x^2+4x^3+\dots &= D(1+x+x^2+x^3+x^4+\dots ) \\ &= \frac{d}{dx}\left( \frac{1}{1-x}\right) = \frac{1}{(1-x)^2}. \end{align} Kerrotaan molemmat puolet termillä x, jolloin saadaan 
	\sum_{k=1}^{\infty}kx^{k} = x+2x^2+3x^3+4x^4+\dots = \frac{x}{(1-x)^2},
	joka on voimassa arvoilla |x|.

Tapauksessa [a,b]\subset\ ]x_0-R,x_0+R[ sarjan voi myös integroida termeittäin: 
	\int_a^b f(x)\, dx = \sum_{k=0}^{\infty}c_k\int_a^b (x-x_0)^k\, dx.
	Usein integroinnin voi ulottaa myös sarjan suppenemisvälin päätepisteeseen saakka, mutta tämä ei pidä paikkaansa yleisesti.

Esimerkki

Lasketaan vuorottelevan harmonisen sarjan summa.

 Sijoitetaan aluksi q=-x geometrisen sarjan summakaavaan. Näin saadaan 
	1-x+x^2-x^3+x^4-\dots =\frac{1}{1-(-x)} = \frac{1}{1+x}.
	Integroidaan yhtälön molemmat puolet pisteestä x=0 pisteeseen x=1, jolloin saadaan 
	1-\frac{1}{2}+\frac{1}{3}-\frac{1}{4}+\dots =\int_0^1\frac{1}{1+x} =\ln 2.
	Huom. Integroinnin ulottaminen pisteeseen x=1 saakka pitäisi perustella tarkemmin. Integrointiin palataan myöhemmin tällä kurssilla.

'; } else { return ''; } } ], { useMathJax : true, fontSize : 14 }); function iterate(){ var x = 0; if(i>10){ return; } if(i==0){ x = document.getElementById("x0").value; if(isNaN(x) || x==""){ alert("Invalid input"); return; } x = Number(x); document.getElementById("x0").disabled = true; } else{ x = points[i-1].X(); } var fx = f(x); slope = derivative(x); var intersection = fx - slope*x; segments[i] = board.create('segment',[[x,0],[x,fx]],{ dash : 1, highlight : false, strokeOpacity : .6, strokeWidth : 1.5, strokeColor : '#32a889' }); tangents[i] = board.create('line',[[x, fx],[x+1, slope+fx]],{ fixed : true, highlight : false, strokeOpacity : .6, strokeWidth : 1.5, strokeColor : '#32a889' }); points[i] = board.create('point',[-intersection/slope,0],{ fixed : true, highlight : false, showInfobox : false, strokeWidth : 1, strokeColor : 'black', fillColor : '#7732a8', name : 'x_{' + (i+1) + '}', label : { useMathJax : true } }); board.update(); i++; } function reset(){ i = 0; document.getElementById("x0").disabled = false; document.getElementById("x0").value = ""; board.removeObject(points), board.removeObject(segments), board.removeObject(tangents); points = [], segments = [], tangents = []; board.fullUpdate(); } document.getElementById("iterate").onclick = iterate; document.getElementById("reset").onclick = reset; board.fullUpdate(); })();