• 沒有找到結果。

1泰勒展開:多項式逼近函數

N/A
N/A
Protected

Academic year: 2021

Share "1泰勒展開:多項式逼近函數"

Copied!
21
0
0

加載中.... (立即查看全文)

全文

(1)

1 泰勒展開:多項式逼近函數

多項式是一個很棒的函數,好處之一是它可以求導無限多次。這種函數應該發予良⺠

證,實在太棒了!不過就這點而言還不夠特別,指數函數、三⻆函數也都可以發予良⺠證。

多項式還有一個好處是比較好代值,譬如說p(x)= x23− 5x18+ 7x11+ 6x3− 8,如果我

們要算p(3.01),很煩,但起碼還能算。那如果是遇到其它函數呢?譬如說sin(1),就不會

算那麼久了,因為根本不會。

數學上常常是化繁為簡、化未知為已知。所以就有個想法,當我遇到一個函數 f (x), 可不可以寫出一個多項式p(x),是可以跟它非常接近的呢?至少,在我要算的點的附近 是很接近的。譬如說剛剛的sin(1),如果我的多項式只能在[−1,2]上跟sin(x)很接近,那 其實也夠用了。待我將這個多項式寫出來之後,凡是在這「附近」裡面,我就可以將原本

想對 f (x)做的事情,改對p(x)做,舉凡加、減、乘、除、次方、代入、微分、積分等等。

所以當然,這個「附近」的範圍,能越大就越好。

舉個例子,下圖有條曲線 f (x)=x3−6x2+9x+3

1.58x ,它並不是多項式。現在,我找到一個 三次多項式p(x)= 12.241687 − 8.2648x + 1.7988x2− 0.1065x3,它與 f (x)x= 3的附近還 蠻接近的。離x= 3遠一點之後,兩條曲線才越差越多。千萬不要被我的例子的函數⻑相 嚇到了,在後面我們並不需要找出⻑這麼醜的多項式。

y

x f (x) p(x)

3

圖 1: 以多項式逼近函數

牛頓在處裡某些函數時,用了一些奇技淫巧寫出多項式來逼近1。後來他的一個學生,

Brook Taylor

,在 1715 年時,提出一般性的理論,探討求出一個函數的多項式逼近的一 般方法。

如果我們現在想找個 p(x)x= a 的附近去逼近 f (x)。這個逼近的想法是這樣的:

首先,兩個函數值 f (a)p(a)當然希望能一樣。接著,假如 f (x)可導的話,若它們在 x= a處的切線斜率也能夠一樣,那麼這兩個就更接近了。也就是說,兩者一階導數相等 f(a)= p(a),這叫做一階切近。再來,假如 f (x)二階可導,如果又有 f′′(a)= p′′(a),那 麼這兩個便更加接近了,這叫做二階切近。以此類推、得寸進尺。只要 f (x)k 階可導,

我都希望 f(k)(a)p(k)(a)能夠相等,這叫做k階切近。如果 f (x)x= a處無窮可導的 話,那我就希望寫一個冪級數,可以與 f (x)x= a處的任意階導數都相等。

1事實上,在微積分草創時期,除了牛頓也有其它許多數學家諸如Gregory、萊布尼茲、Johan Bernoulli

隸美弗等等,都寫出某些函數的多項式逼近。

(2)

k階切近 f (x) p(x) f (a) = p(a) f(a) = p(a)

...

fk(a) = fk(a)

按此想法,便可以將一個無窮可導的函數 f (x)x= a處展開成:

f (x)= f (a) + f(a)(x− a) + f′′(a)

2! (x− a)2+ ··· + f(n)(a)

n! (x− a)n+ ...

=

n=0

f(n)(a)

n! (x− a)n

(1.1)

它的一般項形式是 fn(a)

n! (x− a)n。為什麼會這樣呢?為了檢驗等號右邊的確就是我們理想 中的p(x),我們試著在等號右邊代x= a、微分之後代 x= a、微分兩次之後代x= a···

看看是否分別都等於 f (a)f(a)f′′(a)···

直接代a,一次項以上全部都有(x− a),所以代入以後全是零,只剩 f (a)

f (a)= f (a) + 0 + 0 + ··· (1.2)

若是我們對等號兩邊先微分一次,得到

f(x)= 0 + f(a)+f′′(a)

2! × 2(x − a) + ··· +f(n)(a)

n! × n(x − a)n−1+ ··· (1.3) 此時常數項 f (a)微分後不見了。至於二次以上的項,微分完都至少還有一個(x− a)。接 著代x= a,得到

f(a)= 0 + f(a)+ 0 + ··· + 0 + ··· (1.4) 所以在微分完之後代a 時,二次以上的項也全跟著不見了,於是只剩一次項。而原 來一次項 f(a)(x− a)微分後,就是 f(a)

一般而言,微分n 次後

f(n)(x)= 0 + 0 + ··· + f(n)(a)+ f(n+1)(a)× (x − a) + ··· (1.5) 再代a。微分n次以後所有n−1次以下的項全部變成零,而n+1次以上的項,在微分完 以後全部都還有至少一個(x− a),所以之後再代a時,它們也全跟著不見了,於是只剩n 次項。而n次項 f(n)(a)

n! (x− a)n 微分n 次以後,也成為常數。值是多少呢?因為微分n次 以後會乘以n!2,所以就是 f(n)(a)

n! ×n! = f(n)(a)。在以上的檢驗過程中,你大概就能明白

為什麼一般項⻑那樣了,擺個n!在分⺟就是特意要拿來消的。

現在知道用k 階切近的辦法來將函數展開成多項式了,刻不容緩,我們馬上來試刀 吧!

2微分第一次會乘以n,微分第二次乘以n− 1,微分第三次乘以n− 2···

(3)

試求ex 的馬克勞林展開。

所謂的馬克勞林 (Maclaurin) 展開,意思只不過是在x= 0處的泰勒展開,也就是 說

f (x)= f (0) + f(0)x+f′′(0)

2! x2+ ... + f(n)(0)

n! xn+ ... (1.6)

我們想要寫出這個出來,就必須知道exx= 0處的各階導數。不過這太容易了,ex 不管怎麼微分都還是ex,代0以後就是1。於是有

ex=1 + x +x2 2! +x3

3! + ... +xn n! + ...

=

n=0

xn n!

例題 11

試求sin(x)的馬克勞林展開。

sin(x)的高階導函數具有規律

f (x) = sin(x) f(x) = cos(x) f′′(x) = −sin(x) f(3)(x) = −cos(x) f(4)(x) = sin(x) f(5)(x) = cos(x)

... ...

再配合sin(0)= 0cos(0)= 1,便易知

sin(x)=x −x3 3! +x5

5! −x7 7! + ...

=

n=0

(−1)nx2n+1 (2n+ 1)!

cos(x)的情況十分類似,你就自己動手寫吧!

例題 12

exsin(x)cos(x)的高階導函數都有很簡單的規律,所以用一般的方法寫出馬克

勞林展開都是很容易的。而且收斂區間都是整個實數 ’3,所以就算代一百萬,兩邊也是 相等的。現在我們來檢查一件事,我剛剛說,只要在收斂區間內,本來想對 f (x),做的一 些事,可以改對p(x)做。我們知道ex 求導後是自己,於是我們將

1+ x +x2 2! +x3

3! + ... +xn n! + ...

作逐項求導,得到

0+ 1 + x +x2 2! +x3

3! + ... +xn n! + ...

3判斷收斂區間的方法留待後面介紹。

(4)

真的等於自己。我們再檢查sin(x)求導後是cos(x),將

x−x3 3! +x5

5! −x7 7! + ...

作逐項求導,得到

1−x2 2 +x4

4! −x6 6! + ...

果然就是cos(x)的展開。

式子 (1.1) 好用在它具有一般性。一般而言,只要 f (x)能夠求導k次,我就可以照著 操作寫出一個k 次多項式來逼近它。卻不代表我們只能這樣做,有時候用這個方法會因 為高階導數不太好寫而變得較為繁複。

事實上,我們還是可以根據各種不同函數的不同⻑相,用一些特殊的方法來寫出逼 近多項式出來。在 Brook Taylor 於 1715 年提出他的理論以前,那些十七世紀的微積分先 鋒們就各自寫出sin(x)cos(x)arctan(x)等等函數的展開,各自用了些奇奇怪怪的辦法。

不過放心,在此我們只介紹些基本、好掌握的辦法。

譬如說 1

1− x,除了用那個一般的做法外,也可直接寫出 1+ x + x2+ x3+ ... + xn+ ... =

n=0

xn

為什麼呢?因為這就是無窮等比級數的和呀。從此還得知了,收斂區間就是−1 < x < 14。 那麼 1

1+ 2x 呢?把它看成 1

1− (−2x) 就可以了,也就是說,將−2x 代在 1

1− x 中的 x裡 面。於是就成為

1+ (−2x) + (−2x)2+ ... + (−1)n2nxn+ ... =

n=0(−1)n2nxn

至於收斂區間,我們也將−2x 代入−1 < x < 1,得到−1 < −2x < 1,再化簡成1

2< x <12。 至於ln(1+ x)呢?我們知道它的導函數是 1

1+ x,所以我們先寫出 1− x + x2− x3+ ... =

n=0

(−1)nxn

然後作逐項積分,得到

C+ x −x2 2 +x3

3 − ... = C +

n=0

(−1)nxn+1 n+ 1

為了決定C 是多少,代x= 0,得到ln(1+ 0) = 0 = C + 0 + 0 + ...,所以C= 0。於是

ln(1+ x) =

n=0

(−1)nxn+1 n+ 1 =

n=1

(−1)n−1xn n

5

4公比的絕對值要小於1

5這裡對足碼做了一點平移,新的n是舊的n加上1,原來的n0開始,那麼新的n就會從1開始。而 (−1)n−1若改寫成(−1)n+1亦可,畢竟(−1)2= 1

(5)

至於收斂區間的問題,原本 1

1+ x 的收斂區間是−1 < x < 1,我們是拿它作積分來的,所以 範圍大致一樣,唯有端點可能發生改變,變成−1 < x ≤ 16。如果你想知道為什麼會多個 1,你可以將1代入冪級數,得到

n=1

(−1)n−1

n ,交錯級數收斂7

那如果是sin(x) cos(x)呢?可以先各自展開再相乘。也可以看成 sin(2x)

2 ,所以從sin(x) 的展開用2x代,然後整個除以2,便有

sin(2x)

2 =1

2

(2x−23x3 3! + ...)

=(

x−22x3 3! + ...)

那如果是arctan(x)怎麼辦呢?它求導後是 1

1+ x2 嘛,所以我們先寫出 1− x2+ x4− ... =

n=0

(−1)nx2n

然後做逐項積分,得到

C+ x −x3 3 +x5

5 − ... = C +

n=0

(−1)nx2n+1 2n+ 1 為了決定 C 是多少,代x= 0,得到

arctan(0)= C + 0 + 0 + ...

所以C= 0,便知arctan(x)的展開就是

arctan(x)= x −x3 3 +x5

5 − ... =

n=0

(−1)nx2n+1 2n+ 1

接著各自將−11代入冪級數,都有交錯級數收斂,因此收斂區間也是從原本的−1 < x < 1 變成−1 ≤ x ≤ 1

那如果是 p1+ x又怎麼辦呢?它就是(1+ x)12,高中曾學過二項式定理

(x+ y)n= C0nyn+C1nyn−1x+C2nyn−2x2+ ... +Cnnxn (1.7) 若 y= 1就是

(x+ 1)n= C0n+C1nx+C2nx2+ ... +Cnnxn

那是用在次方n 是正整數的情況,我們現在次方不是正整數,也可以用嗎?牛頓在處理 這問題的時候,將二項式定理推廣了,所以答案是可以的!所以我重寫一次

(x+ 1)α= C0α+C1αx+C2αx2+ ... (1.8) 這對任何實數α都成立。這樣你可能產生一個問題,像C

1 2

3 該如何計算?回想一下,

C37=7× 6 × 5 1× 2 × 3

6不包含−1是顯而易見的,因為代入ln(1+ x)會變成ln 0,然而對數裡必須是正的。

7一般來說,冪級數收斂不代表它就會收斂到原來函數,後面會再談這部份。

(6)

推廣方法就是照著寫

C

1 2

3 =

1

2× (−12)× (−32) 1× 2 × 3 = 1

16

從這推廣方法也可得知,本來式子 (1.7) 的寫法會停在Cnnxn。但次方非正整數的時候,式 子 (1.8) 可以一直寫下去,無窮多項。

於是我們現在就來處理 p1+ x,寫成

(1+ x)12= C012+C112x+C212x2+C312x3+ ...

前兩項的係數都不須特地算,因為任何數取0都是1、任何數取1都是自己。另外算一下

C

1 2

2 =

1

2× (−12) 1× 2 = −1

8

C

1 2

3 = 1 2× (−1

2)× (−3 2) 1× 2 × 3 = 1

16

假如你還要繼續多算幾項的話,其實不須要慢慢寫,只要每次都在分子分⺟各補一項就 好了。以C12

4 為例,

C

1 2

4 = 1 2× (−1

2)× (−3

2)×(−52)

1× 2 × 3×4 =1×(−52) 16×4 以此類推,要計算C512 時,就分子補上7

2,分⺟補上5。所以 (1+ x)12 = 1 +x

2−x2 8 +x3

16− ... =

n=0

C

1

n2xn

至於arcsin(x),它求導後是 p 1

1− x2,我們可以先做(1+ t)12 的展開 1−t

2+C212t2+C312t3+ ... = 1 −t 2+3t2

8 −5t3 16 + ...

接著代t= −x2,便有

1+x2 2 +x4

8 +5x6 16 + ...

好啦,接著可以做逐項積分啦,

C+ x + x3 2· 3+ x5

8· 5+ 5x7 16· 7+ ...

x= 0,得到

arcsin(0)= 0 = C + 0 + 0 + ...

所以C= 0,於是arcsin(x)的展開就是

arcsin(x)= x + x3 2· 3+ x5

8· 5+ 5x7 16· 7+ ...

收斂區間由−1 < x < 1變成−1 ≤ x ≤ 1。判斷方法較難,但不知道亦無妨。

(7)

目前為止寫了這一堆,就是想呈現給你看,在許多時候我們都避開了需要高階求導 的辦法。因為那好用歸好用,但寫起來常常很麻煩。幸好我們常可以透過求導、積分、代 入、加減乘除等等手段,來將所要處理的函數,用更基本、我們知道如何展開的函數來導 出它的展開。以下將一些基本常見的函數展開整理在下面:

函數 冪級數展開 收斂區間

ex 1+ x +x2!2+x3!3+ ... +xn!n + ··· ’

sin(x) xx3!3+x5!5x7!7+ ··· ’

cos(x) 1−x2!2+x4!4x6!6+ ··· ’

1− x1 1+ x + x2+ x3+ ··· + xn+ ··· (−1,1)

1+ x1 1− x + x2− x3+ ··· + (−1)nxn+ ··· (−1,1)

⋆ ln(1+ x) x−x22+x33− ··· (−1,1]

arctan(x) x−x33+x55− ··· [−1,1]

(x+ 1)α C0α+C1αx+C2αx2+ ··· (−1,1) p1+ x 1+x2x82+x163− ··· [−1,1]

arcsin(x) x+2·3x3 +8·5x5 + ··· [−1,1]

⋆ 請你背起來,其它的便可由這些推得。

⋆ 可以不背,能背起來更好。

只有五個要背而已,而且第一個實在很好記,第二、三個⻑得和第一個很像可以一起背,

第四個是無窮等比級數,第五個也只是二項式定理的推廣,所以記誦的負擔並不大。

試求xex 的馬克勞林展開。

先展開

ex= 1 + x +x2 2! +x3

3! + ···

接著整個乘以x,便有

xex= x + x2+x3 2! +x4

3! + ···

例題 13

e−x2 的馬克勞林展開。

解 例題 14

(8)

先展開

et= 1 + t +t2 2!+t3

3!+ ···

接著用t= −x2代入,便有

e−x2= 1 − x2+x4 2! −x6

3! + ···

x2

1+ x3 的馬克勞林展開。

我們可以將 x2

1+ x3 拆成x2·1+ x1 3,所以先展開 1

1− (−x3)= 1 − x3+ x6− x9+ ···

然後跟x2相乘,也就是說每一項的次方都增加二,變成 x2

1+ x3= x2− x5+ x8− x11+ ···

也可以將其視為ln(1+ x3)的導函數再除以3,但應該還是前一個方法快些。

這題若以的形式來寫,就是 x2· 1

1+ x3= x2·

n=0

(−x3)n= x2·

n=0

(−1)nx3n=

n=0

(−1)nx3n+2 例題 15

1

3− 2x 的馬克勞林展開。

注意分⺟那邊是3不是1,所以沒辦法直接套我們有背的那個。但這很容易解決,

只要將3提出來,便有 1 3· 1

12x3 =1 3·

(

1+ (2x 3 )+ (2x

3 )2+ (2x 3 )3+ ···

) 例題 16

exx= 2處做泰勒展開。

這次不是馬克勞林展開了,而是要在 x= 2的地方展開。有個小技巧!我先設 t= x − 2,那麼ex= et+2,在x= 2處就是在t= 0處。因此我們就有

et+2= e2· et= e2 (

1+ t +t2 2!+t3

3!+ ...

) 例題 17

(9)

此時再用t= x − 2代回去

e2+ e2(x− 2) +e2

2!(x− 2)2+e2

3!(x− 2)3+ ...

若以的形式來寫,就是

e2· et= e2·

n=0

tn n!

t= x − 2代回去

e2·

n=0

(x− 2)n n! =

n=0

e2

n!(x− 2)n

ln(x)x= 3處做泰勒展開。

這題也類似,在x= 3處做泰勒展開會做出形如an(x−3)n的冪級數,所以我們

就設 t= x − 3,使ln(x)變成ln(t+ 3),然後作馬克勞林展開,做完再代回 x。由於是

t+ 3不是t+ 1,所以寫成

ln(t+ 3) =ln3 + ln( 1+ 3t)

=ln3 + (

(t

3)(t

3)2 2 +(t

3)3 3 − ···

)

接著代t= x − 3回去

=ln3 +(x− 3)

3 ((x− 3)

3 )2

2 +((x− 3)

3 )3 3 + ···

=ln3 +(x− 3)

3 −(x− 3)2

18 +(x− 3)3 81 + ···

若以的形式來寫,就是

ln(t+ 3) =ln3 + ln(1 +t 3)

=ln3 +

n=1

(−1)n+1 3n tn 接著代t= x − 3回去

=ln3 +

n=1

(−1)n+1

3n (x− 3)n

用這樣寫好像比較好喔。不但寫的人比較簡便,看的人也較一目了然。

例題 18

(10)

ln( √1+ x

1− x

)的馬克勞林展開。

不要被ln

( √1+ x 1− x

)

的⻑相嚇到了,對數裡的乘除就是加減、對數裡的次方就是 乘。所以

ln( √1+x 1− x

)=1 2·(

ln(1+ x) − ln(1 − x))

=1 2·(∑

n=1

(−1)n+1xn

n

n=1

−xn n

)

=1 2·

n=1

(−1)n+1+ 1

n xn

觀察當n是奇數的時候,(−1)n+1+1 = 1+1 = 2,然而當n是偶數的時候,(−1)n+1+1 =

−1 + 1 = 0。所以

=1 2·

n=0

2

2n+ 1x2n+1

=

n=0

x2n+1 2n+ 1 例題 19

tan(x)的馬克勞林展開。

由於tan(x)= sin(x)

cos(x) 所以可以拿sin(x)cos(x) 的展開來相除。這裡介紹另外一

招,待定係數法。就是先設

tan(x)= a0+ a1x+ a2x2+ a3x3+ ···

注意到tan(x)是奇函數,所以它必然只有奇次項。於是可以寫成

tan(x)= a1x+ a3x3+ ···

沒注意到也沒關係,等下還是會解出a0= a2= ··· = 0。然後我們寫成 sin(x)= tan(x) · cos(x)

所以就有

x−x3

3! + ··· =(

a1x+ a3x3+ ···)

· (

1−x2 2! + ···

)

比較等號兩邊的一次項,我們有

1= a1× 1 例題 110

(11)

接著再比較三次項,我們有

1

6= a1×(

1 2

)+ a3× 1

看我們需要將tan(x)展開到幾次項,就比較到幾次項。

2 泰勒展開的應用

在一開始介紹為什麼要做泰勒展開時,便已提過我們可以很好代值。譬如說sin(1), 我們可以寫出它的泰勒展開

x−x3 3! +x5

5! −x7 7! + ···

然後將x= 1代入

1 1 3!+1

5! 1 7!+ ···

你如果做這無窮多次的加減乘除,便可以得到sin(1)的精確值了。當然,我是說笑的,實 務上怎麼可能真的做無窮多項。實際上我們可以只做幾項就好,雖然只做前幾項就不是

sin(1)的精確值了,但所做出來的近似值與精確值通常相差不遠8

估計e 的近似值。

我們可以利用ex= 1 + x +x2

2! + ···,代入x= 1,便有 e= 1 + 1 +1

2+1 6+ 1

24+ ···

1+ 1 +1 2+1

6+ 1

24 = 2.7083

只取前五項加起來是2.7083,而精確值是2.718281828 . . .,看起來已經頗為接近。

例題 21

估計ln 2的近似值。

ln(1+ x)x= 1之後就是ln 2了。檢查一下收斂區間,的確有包含到1,所以 可以代。假使要估計ln 3,便不可以直接從ln(1+ x)代了,因為x= 2並不在收斂區間 內。

ln 2=1 −1 2+1

31 4+ ···

11 2+1

31 4

= 7 12 例題 22

8實際上有些級數可能會收斂得很慢,以致於我們要算很多項才有辦法讓誤差夠小。因此在微積分課程 裡我們要學會估算誤差大約是多少,這留待後面介紹。

(12)

但這個級數收斂得很慢,ln 2的精確值大約是0.693,然而我們只算前四項的結果 7

約是0.583,這誤差有點大。若想估得更精確的話,須要算很多項才行。 12

估計π的近似值。

想估計 π 有很多種辦法,其中一個方法是利用 arctan(1)= π4,也就是說 π = 4 arctan(1),所以我們先做arctan(x)的展開

x−x3 3 +x5

5 − ···

然後代x= 1,再乘以4,於是

π =4arctan(1)

=4 (

11 3+1

5− ···

)

不過用這個方法也是有收斂得很慢的問題,算到一千項了才精確到小數點後三位。想 估計π還可以有很多其它辦法,譬如說sin(π

2)= 1,那麼π = 2·arcsin(1)。於是就可以

先將arcsin(x)展開後代1,再兩倍。但很不幸地,這個方法也收斂得挺慢。

例題 23

估計 1

0 ex2d x的近似值。

ex2 並沒有初等反導函數,所以我們無法利用微積分基本定理,來求出這個積分 的精確值。但是我們可以利用泰勒展開,計算前幾項,來求近似值:

1

0

ex2d x=

1

0

(

1+ x2+x4 2! + ···)

d x

=( x+x3

3 + x5

5· 2!+ ···)¯¯

¯¯1

0

=1 +1 3+ 1

5· 2!+ ···

1+1 3+ 1

5· 2!+ 1

7· 3!+ 1 9· 4!

1.4618

用數學軟體去估這個積分,大約是1.46265,我們取前五項做起來就已經頗接近了。

例題 24

lim x→0

tan(x)− sin(x)

x3

解 例題 25

(13)

我們將tan(x)sin(x)都展開,得到

xlim→0

(

x+x33+ ···)

(

x−x3!3+ ···) x3

= lim

x→0 x3

2 + ···

x3 =1 2

因為x→ 0,所以我們直接只比較次方最小的,因此展開到三次項就可以了。

由此題可見,在做極限時使用泰勒展開,可能會簡化不少過程。反觀羅必達法則,

它許多時候好用,但有一些缺點。其一是,你可能事先不知道要求導幾次才結束,甚 至可能根本沒有結束的時候。其二是,就算你知道要求導七次好了,你有那個勇氣做 下去嗎?等你做完一題,秦始皇都已經把萬里⻑城蓋好了。因此,許多時候用泰勒展 開也是處理極限式的一個好選擇。

lim x→0

sin(x) ex− 1。 解

這題用羅必達也可很快做出來,不過沒關係,我們還是拿來練習用泰勒展開解。

上下各展開成

xlim→0

x− ···

(1+ x + ···)

− 1= 1

實在很快,才展開到一次項而已。像這種題目簡直可以不拿筆算,直接盯著題目就心 算出來了。然後對著題目說:「我一眼就把你看穿了!」。

例題 26

判斷級數

n=1

[pn n− 1]

的斂散性。

nn1 − 1 =eln nn − 1

=[

1+ln n n +1

2 (lnn

n )2

+ ···]

− 1

=ln n n +1

2 (lnn

n )2

+ ··· >ln n n > 1

n

n=1 1

n 發散,故原級數發散。

例題 27

高階導數的規律有時是不容易找出來的,所以前面便演示了,如何一直避開高階求 導來泰勒展開。而巧妙地,我們卻可因此回頭來解決高階導數問題。就是說,若展開出

f (x)= a0+ a1x+ a2x2+ ··· + anxn+ ···

而如果我們要用一般的方法

f (x)= f (0) + f(0)x+ f′′(0)

2! x2+ ··· + f(n)(0) n! x+ ···

(14)

也會做出一樣的展開。於是,我可以兩相比較,得到 f (0)=a0

f(0)=a1

f′′(0) 2! =a2

... f(n)(0)

n! =an

所以,如果我們想知道 f(23)(0),我就可以將f (x)做馬克勞林展開,然後將第23階係數乘 以23!,便會等於 f(23)(0)。這是因為

f(23)(0) 23! = a23

而如果是想知道 f(23)(3),便不能用馬克勞林展開,必須使用a= 3的泰勒展開

f (x)= f (3) + f(3)(x− 3) + f′′(3)

2! (x− 3)2+ ··· + f(n)(3)

n! (x− 3)n+ ...

接著因為

f(23)(3) 23! = a23

所以將第23階係數乘以23!,便是 f(23)(3)。 若 f (x)= x6ex3,求 f(60)(0)。 解

先展開出

et= 1 + t +t2

2!+ ··· +tn n!+ ···

然後代t= x3,得到

ex3= 1 + x3+x6

2! + ··· +x3n n! + ...

再整個乘以x6,也就是每一項的次方都加6,得到

x6ex3= x6+ x9+x12

2! + ··· +x3n+6 n! + ...

從中找出第60階,就是 x60

18!。將它的係數乘以60!,得到 f(60)(0)= 1

18!× 60!

例題 28

(15)

3 泰勒定理與餘項

如前所示,雖然我們實際上沒辦法寫出無窮多項出來,但常常只要寫個前幾項就已 有不錯的近似,寫越多項就越逼近。如下圖所示,sin(x)的馬克勞林展開,寫得越多項,

x= 0附近就與sin(x)越像。

y

x

f(x) = sin(x) P1 = x P3 = x −x3!3 P5 = x −x3!3 + x5!5 P7 = x −x3!3 + x5!5

x7 7!

圖 2: sin(x)k 階切近

現在我們來討論,如果我們預想好要近似到某種準確度,譬如說想要準確到小數點 後四位,那我們能不能在展開前,預先估一下我們大概要算幾項呢?或者是,當我寫了n 項出來,我如何知道我估的近似值跟精確值的誤差有多少呢9

定理 3.1 泰勒定理

f (x)在某個包含a點的開區間In+1階可導,則對於任意的x∈ If (x)都可 以展開為

f (x)= f (a) + f(a)(x− a) + ··· + f(n)(a)

n! (x− a)n+ Rn(x) 其中

Rn(x)= f(n+1)(c)

n! (x− a)n+1 , c 介於xa之間

這個定理告訴我們,如果一個函數在某個開區間上可以求導17 次的話,那麼我們就 可以照著這個一般式來寫出泰勒展開,寫到第16階。至於它與原來的函數的差,我們就 用R16(x)來代表這個差。就是說

R16(x)= f (x) − p16(x) , p16(x)是展開到第16階的泰勒多項式 一般來說,展開出n 階的話,便有Rn(x)來代表差。也就是說

Rn(x)= f (x) − pn(x) , pn(x)是展開到第n 階的泰勒多項式

這叫做餘項 ( remainder ),也可稱之為誤差項 ( error term )。在這定理中還告訴我們餘項

⻑什麼樣子,只要先照著泰勒多項式的一般項寫法,寫出下一項 fn+1(c)

(n+ 1)!(x− a)n+1

9在前面幾題我們直接列出精確值與近似值作比較,那是因為我用數學軟體跑出來的。實際上我們紙筆 計算時,當然不知道精確值是多少。

(16)

但注意 fn+1( )裡面,那邊不是照著抄a,而是改成某一個c。這個c 是介於xa 之間的 某個數。這樣寫就剛好會是原函數與n 階泰勒多項式之間的差。接著再把這個差,掛上 絕對值,就是誤差。也就是說

誤差=¯¯Rn(x)¯¯=¯¯f (x)−pn(x)¯¯=¯¯

¯¯¯

fn+1(c)

(n+ 1)!(x− a)n+1¯¯

¯¯¯

至於c,我們只知道是xa 間的某個數,並不知道到底是多少,這樣有用嗎?實際上我 們可以用估計的方式,來說:無論c 是何值,這個誤差都小於等於某個值,如此一來雖無 法確知誤差是多少,但至少可確定誤差不會超過那個值。

來點實際的例子讓你更了解我在說什麼。

5階泰勒多項式估計sin(1)的近似值時,誤差大約是多少?

sin(x)5階馬克勞林展開是

x−x3 3! +x5

5!

代入x= 1,得到

1 1 3!+ 1

5! = 101

120 ≑ 0.8416667

這就是我們對sin(1)的估計值。現在我們想知道,這個估計值與精確值的誤差大概是 多少。我們知道餘項

R5(x)= f(6)(c) 6! x6

因是馬克勞林展開所以a= 0,接著代x= 1,並且誤差要掛絕對值,所以應該寫

¯¯R5(1)¯¯=¯¯

¯¯¯ f(6)(c)

6!

¯¯¯¯

¯

sin(x)的六階導函數就是−sin(x),所以是

¯¯R5(1)¯¯=¯¯

¯¯sin(c) 6!

¯¯¯¯

不知道c 是多少沒有關係,反正我們知道|sin(x)| ≤ 1恆成立,所以我們可以說

¯¯R5(1)¯¯=¯¯

¯¯sin(c) 6!

¯¯¯¯≤ 1

6!≑0.0013889

這樣寫的意思是說,我不知道誤差的大小究竟如何。但最少最少,可以確定的是它不

會超過0.0013889。也許事實上c 離0很近,使得sin(c)很小,也就是說誤差值實際上

又遠小於0.0013889。但我不管那麼多,反正我也求不出c。至少我能確定,它一定不

會超過0.0013889就對了。

實際用數學軟體去求¯¯¯¯sin(1)−101

120

¯¯¯¯,得到大約是0.000195682。還真的比0.0013889 小了許多,不到它的六分之一。

例題 31

(17)

以4階泰勒多項式估計e 的近似值時,誤差大約是多少?

ex4階馬克勞林展開,並且代 x= 1,得到 1+ 1 + 1

2!+1 3!+ 1

4!≑2.708333333 誤差則是

¯¯R4(1)¯¯=¯¯

¯¯¯ ec

5!

¯¯¯¯

¯

ex5階導函數仍是ex,接著代cx是代1,所以0< c < 1,這代表e0< ec< e1e 大約是2.7,為了簡便,我說它小於3也沒關係。所以

¯¯R4(1)¯¯=¯¯

¯¯¯ ec

5!

¯¯¯¯

¯ <

e 5!< 3

5!= 0.025

我 們 不 知 道 誤 差 是 多 少, 但 至 少 有 信 心 說 誤 差 不 超 過 0.025。 而 精 確 誤 差 值 是 2.718281828− 2.708333333≑0.009948495,的確沒有超過。

例題 32

請估計sin(1)的近似值使誤差小於0.0001

剛剛是指定寫出5階泰勒展開,估計誤差是多少。現在是反過來,指定誤差應控 制在一定範圍內,我們要估一下我們必須至少寫到幾階。

我們知道誤差

¯¯R2k+1(1)¯¯=¯¯

¯¯ sin(c) (2k+ 2)!

¯¯¯¯< 1 (2k+ 2)!

所以只要 1

(2k+ 2)!< 0.0001,便可確保誤差也小於0.0001。所以我們解

1

(2k+ 2)!< 1

10000 ⇒ (2k + 2)! > 10000

動手算算看,6!= 720不夠,8!= 720×56 >a700×50 = 35000 > 10000。所以只要2k+2 = 8 就可滿足誤差要求,也就是說2k+ 1 = 7,我們要寫出7階泰勒展開。

a只是要確認大於10000,並不關心精確值。所以不必傻傻地慢慢算,直接說它大於某個好算的值。

例題 33

請估計 1

0 e−x2dx使其誤差小於0.001。 解

e−x2 並沒有初等反導函數,所以我們沒辦法套用微積分基本定理來做出這個積 例題 34

(18)

分的精確值。但我們可以將它展開

1

0

(1− x2+x4 2! −x6

3! + ···) dx

=x −x3 3 + x5

5· 2!− x7

7· 3!+ ···¯¯¯1

0

=1 −1 3+ 1

5· 2!− 1 7· 3!+ 1

9· 4!− ···

0.7475

最後那個無窮級數,它是個交錯級數,我只加到 1

9· 4! 那一項。而根據交錯級數的誤差 估計法,誤差會小於將下一項掛絕對值,所以我們這裡的誤差會小於

1

11· 5!= 1

1320< 0.001 這樣的確就確保誤差值小於0.001了。

你可能有疑問,我怎麼那麼厲害知道要加到 1

9· 4! 那一項?這是因為我首先知道交 錯級數的誤差估計法,誤差會小於將下一項掛絕對值。於是我就直接看看哪一項我是 可以很確定它掛絕對值會小於0.001的,便看到 1

11· 5! 這一項。既然這一項掛絕對值

會小於0.001,那麼我加到它的前一項,誤差就會小於0.001了。

現在知道餘項該怎寫,便可以用它來看收斂區間了。首先必須慎重強調的是,同樣是

「收斂區間」,泰勒展開的收斂區間 與冪級數的收斂區間,意義並不相同。

冪級數的收斂區間是指,只要x 在這區間內,代入冪級數以後,所形成的無窮級數 會收斂。而泰勒展開的收斂區間是指,只要x在這區間內,代入泰勒級數以後,所形成的 無窮級數不但會收斂,還要等於直接將x代在原函數。

兩者真的有區別嗎?舉例來說,這個函數 f (x)=

{e

1

x2 , x,0

0 , x= 0 (3.1) 它在x= 0處的各階導數都是0

f (0)= f(0)= f′′(0)= ··· = 0 於是它的馬克勞林展開便是

0+ 0 + 0 + ···

這個⻑相很特別的「冪級數」,不管x代多少,都是每項皆0,所以冪級數的收斂區間是

’。但函數 f (x)只有在x= 0的時候函數值才是0,其它時候函數值皆不為0,所以泰勒 展開的收斂區間只有 x= 0處。

sin(x)馬克勞林展開的收斂區間。

sin(x)展開至第2k+ 1a,則餘項為 R2k+1(x)= sin(c)

(2k+ 2)!x2k+2 例題 35

(19)

所以2k+ 1階泰勒多項式與原函數的誤差是

¯¯R2k+1(x)¯¯=¯¯

¯¯ sin(c)

(2k+ 2)!x2k+2¯¯

¯¯≤¯¯

¯¯¯

x2k+2 (2k+ 2)!

¯¯¯¯

¯

如果我們做出無窮多項,那麼誤差便是

k→∞lim ¯¯R2k+1¯¯≤ lim

k→∞

¯¯¯¯

¯

x2k+2 (2k+ 2)!

¯¯¯¯

¯ =0

這意思是說,無論x 是多少,餘項都會隨著k 越來越大而趨近到0。也就是收斂區間 是整個實數。

a因為sin(x)的泰勒展開只有奇次項。

前面在求泰勒展開的收斂區間時,直接求展開出來的冪級數收斂區間。但現在又說,

泰勒展開的收斂區間與冪級數收斂區間是不同一回事,應該要用 lim

n→∞Rn= 0來確認。這 並不是因為我還沒介紹餘項,所以前面姑且用錯誤的方法求出錯誤的區間。而是因為,雖 然對於有些函數,例如前面的 (3.1) ,其泰勒展開的收斂區間與冪級數收斂區間並不相同,

但還是有某些函數,這兩區間是一模一樣的。像這種函數,實在太棒了!將它寫出泰勒級 數出來,只要冪級數收斂的地方,也必然就收斂到原來的函數。這種函數,我們稱之為解 析函數,並且頒予特級良⺠證,以資感謝。一般常見的多項式、指數函數、對數函數、三

⻆函數等等,都是解析函數。而解析函數彼此拿來做加減乘除、合成,出來的結果也是解 析函數。既然是解析函數,那我只須求泰勒級數的冪級數收斂區間,就會等同於泰勒展開 的收斂區間了。

最後做點補充,一般讀者不一定要看。其實,餘項有不止一種寫法。前面所介紹的,

叫做拉格朗日型餘項 ( Lagrange form of the remainder)。我們回想一下拉格朗日均值定理:

f (b)− f (a) = f(c)(b− a), b > c > a 仔細一看,它根本就是做零階泰勒展開

f (x)= f (a) + R0(x)

然後再代x= b嘛!所以帶有拉格朗日型餘項的泰勒定理,其實就是更高階的均值定理。

餘項的另一種寫法,叫做皮亞諾型餘項 ( Peano form of the remainder)。

定理 3.2 皮亞諾型餘項的泰勒定理

f (x)在某個包含a點的開區間In+1階可導,則對於任意的x∈ If (x)都可 以展開為

f (x)= f (a) + f(a)(x− a) + ··· + f(n)(a)

n! (x− a)n+ Rn(x) 其中

Rn(x)= o(

(x− a)n)

這個寫法,涉及了 Landau 小 o 記號,這是德國數學家

Edmund Landau

用來描述函

數的漸近行為的符號。如果 lim x→0

f (x)

x3 = 0,我們就記為f (x)= o(x3),意思是說 f (x)是比x3 更高階的無窮小。換句話說,f (x)跑到0比x3跑到0還快!

參考文獻

相關文件

在這一節裡會提到,即使沒辦法解得實際的解函數,我們也 可以利用方程式藉由圖形(方向場)或者數值上的計算(歐拉法) 來得到逼近的解。..

如果函數是由基本函數所組成,至少需要注意:分式函 數分母會等於 0

All rights reserved.. 1

霸凌類型 □毆打 □勒索 □孤立、排擠 □恐嚇、威脅 □謾罵、嘲笑. □謠言中傷 □黑函 □開黃腔

前一章我們學過了一次函數,本章將繼續延伸到二次函數。二次函數的函數圖形為拋

前一章我們學過了一次函數,本章將繼續延伸到二次函數。二次函數的函數圖形為拋

請利用十分逼近法計算出 √14 的近似值到小數點底下第

出現【解】記號,可連續按下按滑 鼠左鍵 或 滾輪 或