用Python學《微積分B》(Taylor公式與曲線擬合)
Taylor公式是微分學部分集大成者,可以說,只有理解了Taylor公式,才能真正感受到微分學方法的神奇與強大。本文主要根據扈志明老師的《微積分B》課程的內容,總結我對Taylor公式的理解。此外,也應用Python求解該部分的課後習題。
注:sympy中對高階無窮小取樣的是“Big O notation”(大O標記法);而扈志明老師的《微積分B》課程採用的是“Little O notation”(小o標記法),兩者是有差別的。我一開始沒注意到這個差別,後面在用python做題時發現了,但是鑑於公式較多,就不一一修改了,特此宣告。關於這兩者的區別,請看:
https://stackoverflow.com/questions/1364444/difference-between-big-o-and-little-o-notation
一、Taylor公式的聯想
1,Taylor series of degree n about a
這個公式是對f(x)在a處的近似。
2,Taylor's Theorem
其中,餘項(誤差)滿足:
嚴格的證明推導過程可以去看教科書,或者wiki。我在此只是結合微分學部分前面所學的知識,來一步步聯想一下Taylor公式。
1)若函式f(x)在x0處連續,則根據連續的定義
根據極限的定義,有
2)若函式f(x)在x0附近可導(可微分),則根據微分的定義
3)類似地,若函式f(x)在x0附近n階可導(可微分),假設可以找到一個關於(x - x0)的n次多項式使得:
下面來求係數:
對上式兩邊取極限,
代入原式,移項得
然後再兩邊取極限,應用洛必達法則求出極限,
同理,可以求出其餘的係數C。
此時,再回過頭來看,
完成了形式上的統一。
二、曲線擬合
1,一個例子
下面來看一下使用Taylor公式對曲線 f(x) = sin(x) 在 x = 0 附近的近似
如上圖所示,隨著階數的升高,Taylor公式的吻合原曲線的範圍越大。
可能又人會問,既然已經知道了原函式表示式,為什麼還要這麼一個近似?或者說Taylor公式有什麼用?
從上面這個例子就能很好的回答這個問題,這個近似的作用是:方便數值計算。具體來說:
雖然已知 f(x) = sin(x),但要想求f(1)、f(2.3)、f(5.7),依然很棘手。有了Taylor公式,就可以把這類棘手的問題轉變為多項式計算,而且可以根據需要的精度進行相應的近似,是不是很神奇?
Taylor公式提供了這樣一種數值計算的方法:從一個特殊點估算它附近的點的值。而且這個“附近”的範圍可以不斷擴大。
2, Taylor公式的唯一性
當階數n確定後,Taylor公式是唯一一個能夠足夠接近原函式(誤差為)的n次多項式。可以用“反證法”證明,過程有點複雜,可以自行google。
3,曲線擬合
前面說的是已知原函式,求近似多項式。事實上,根據Taylor公式我們知道:只要原函式有n階導數,它就可以用Taylor公式來近似。那麼,即使我們不知道原函式,而僅僅是知道一些點,我們也可以用n次多項式來近似這些點所代表的函式,這就是“曲線擬合”。這裡不是很嚴格,它需要假設被擬合的函式有n階導數。
這麼說了,曲線擬合就變成了根據已知點求n次多項式的係數的問題啦。當然,已知點的數量不同,能夠擬合的多項式的冪級也同。比如,只有兩點,則只能擬合成直線;若有三點,可以擬合成拋物線。。。
三、Taylor公式的應用
之所以說“Taylor公式是微分學的集大成者”,是因為它幾乎可以做所有微分學的運算,包括:求極限(PK 洛必達法則)、求高階導數、判斷函式的階(無窮小比較)、近似計算、分析函式的性質、曲線擬合等。簡直要通吃一切微分學方法。
1,五個簡單函式的Maclaurin公式
當然,要用好Taylor公式,有五個特殊的Taylor公式(Maclaurin公式)需要了解:
特別地:
注:以上的“Big O”都是“Little o”。
四、課後習題
附:
1)wiki - Taylor theorem
https://en.wikipedia.org/wiki/Taylor%27s_theorem
2)常用Maclaurin級數
http://mathworld.wolfram.com/MaclaurinSeries.html
3)描述和證明
https://www.math.hmc.edu/calculus/tutorials/taylors_thm/taylors_thm.pdf
http://125.71.228.222/wlxt/ncourse/wjf1/web/website/website01/43/p43_148.htm.files/20140911211015.pdf
4)通俗解釋
https://www.zhihu.com/question/21149770