五月综合激情婷婷六月,日韩欧美国产一区不卡,他扒开我内裤强吻我下面视频 ,无套内射无矿码免费看黄,天天躁,日日躁,狠狠躁

新聞動(dòng)態(tài)

python機(jī)器學(xué)習(xí)高數(shù)篇之泰勒公式

發(fā)布日期:2022-02-03 08:52 | 文章來源:站長之家

不少同學(xué)一提到泰勒公式,腦海里立馬浮現(xiàn)高大上的定義和長長的公式,令人望而生畏。

實(shí)際上,泰勒公式?jīng)]有那么可怕,它是用簡單的多項(xiàng)式來逼近一個(gè)光滑的函數(shù),從而近似替代不熟悉的函數(shù)。由于泰勒公式具有將復(fù)雜函數(shù)近似成多個(gè)冪函數(shù)疊加形式的性質(zhì),可以用它進(jìn)行比較、求極限、求導(dǎo)、解微分方程等。

我們先來看一下泰勒公式的發(fā)明者,布魯克·泰勒——

布魯克·泰勒(Brook Taylor,1685-1732),英國數(shù)學(xué)家,牛頓學(xué)派最優(yōu)秀的代表人物之一,他于1712年的一封信里首次敘述了泰勒公式。

再來看一下高數(shù)書上對(duì)泰勒公式的定義:

公式3-5就稱為f(x)在x0處的帶有拉格朗日余項(xiàng)的n階泰勒公式。

初看這個(gè)泰勒公式的定義,就覺得恢宏大氣,氣勢(shì)磅礴。不過光從泰勒公式的定義,很難直觀看出它是怎么用多項(xiàng)式逼近原函數(shù)的。接下來我們用圖像和圖表來感受一下——

這里我們先列舉出f(x) = cosx在原點(diǎn)的泰勒2階、4階、6階、8階、10階的多項(xiàng)式,并用圖像表示該函數(shù)及其泰勒n階多項(xiàng)式。

對(duì)應(yīng)圖像如下,其中黑色線條為原函數(shù)f(x),彩色線條為多項(xiàng)式g(x)??梢钥吹诫S著階數(shù)的增大,多項(xiàng)式在更大范圍內(nèi)越來越逼近原函數(shù)。

我們?cè)儆胮ython實(shí)現(xiàn)函數(shù)y=cosx的泰勒n階多項(xiàng)式,并與y=cosx的實(shí)際值進(jìn)行比較,其中令n=40。

def f_cos(x):
 m = 20+1
 sum = 1.0
 for i in range(1,m): #range函數(shù)取值是左閉右開
  n = 2 * i 
  tmp1,tmp2,tmp3 = 1,1,1
  for j in range(1,i+1):
tmp1 = -tmp1 
  for j in range(1,n+1):  
tmp2 = tmp2*x
tmp3 = tmp3*j
  sum = sum + tmp1*tmp2/tmp3
 return sum
from numpy import *
for x in range(-20,21):
 print("x = " + str(x))
 print("f_cos(x) = " + str(f_cos(x)))
 print("cos(x) = " + str(cos(x)))

比較自定義的f_cos(x)和numpy庫的cosx的誤差:

x取值 自定義的f_cos(x) numpy庫的cosx 誤差(f_cos(x) - cos(x)) 分析
20 2577.3069 0.4081 2576.8988 誤差非常大
19 305.1701 0.9887 304.1814 誤差較大
18 32.5969 0.6603 31.9366 存在誤差
17 2.6676 -0.2752 2.9428 存在誤差
16 -0.7234 -0.9577 0.2343 存在0.1級(jí)誤差
15 -0.7439 -0.7597 0.0158 存在0.01級(jí)誤差
14 0.1376 0.1367 0.0009 存在0.0001級(jí)誤差
13 0.9075 0.9074 0.0000 精度范圍內(nèi)一致
12 0.8439 0.8439 0.0000 精度范圍內(nèi)一致
11 0.0044 0.0044 0.0000 精度范圍內(nèi)一致
10 -0.8391 -0.8391 0.0000 精度范圍內(nèi)一致
9 -0.9111 -0.9111 0.0000 精度范圍內(nèi)一致
8 -0.1455 -0.1455 0.0000 精度范圍內(nèi)一致
7 0.7539 0.7539 0.0000 精度范圍內(nèi)一致
6 0.9602 0.9602 0.0000 精度范圍內(nèi)一致
5 0.2837 0.2837 0.0000 精度范圍內(nèi)一致
4 -0.6536 -0.6536 0.0000 精度范圍內(nèi)一致
3 -0.9900 -0.9900 0.0000 精度范圍內(nèi)一致
2 -0.4161 -0.4161 0.0000 精度范圍內(nèi)一致
1 0.5403 0.5403 0.0000 精度范圍內(nèi)一致
0 1.0000 1.0000 0.0000 精度范圍內(nèi)一致

由于f(x) = cosx函數(shù)關(guān)于y軸對(duì)稱,這里只列舉出了x軸右半部分[0,20]的范圍,x軸左半部分的結(jié)果與右半部分結(jié)果相同。

在[0,20]范圍內(nèi),當(dāng)x=20時(shí),二者的誤差非常大。隨著x的減小,二者的誤差也在逐漸減小。在[0,13]范圍內(nèi),二者在精度范圍內(nèi)完全一致,幾乎零誤差。

大家可以嘗試一下,把n的值調(diào)大,這個(gè)精度一致的范圍會(huì)變大。例如此例若n=30,即y=cosx的泰勒30階多項(xiàng)式,則在[-20,20]范圍內(nèi),二者精度都完全一致。感興趣的同學(xué)可以運(yùn)用同樣的方法,分析一下其他函數(shù)。

再試著寫出函數(shù)y=sinx的泰勒n階多項(xiàng)式的python程序,其中n=19。

def f_sin(x):
 m = 10+1
 sum = 0.0
 for i in range(1,m):
  n = 2 * i - 1  
  tmp1,tmp2,tmp3 = 1,1,1
  for j in range(1,i):
tmp1 = -tmp1  
  for j in range(1,n+1): 
tmp2 = tmp2*x
tmp3 = tmp3*j
  sum = sum + tmp1*tmp2/tmp3 
 return sum
from numpy import *
for x in range(-20,21):
 print("x = " + str(x))
 print("f_sin(x) = " + str(f_sin(x)))
 print("sin(x) = " + str(sin(x)))

后續(xù)會(huì)繼續(xù)增加一些函數(shù)的泰勒n階多項(xiàng)式python程序(可能會(huì)偷懶)。

最后推薦一個(gè)比較好用的在線畫函數(shù)的工具Desmos:

https://www.desmos.com/calculator?lang=zh-CN

簡易教程:

https://www.ravenxrz.ink/archives/27d14722.html

還可以用著名的心形線畫個(gè)愛心哦:

到此這篇關(guān)于python機(jī)器學(xué)習(xí)高數(shù)篇之泰勒公式的文章就介紹到這了,更多相關(guān)python泰勒公式內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

國外服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部