學習筆記,這個筆記以例子為主。
開發工具:spyder
import scipy.integrate as si
# 利用quad求積分 給出函式f,積分下限與積分上限[a, b] 返回(積分值,最大誤差)
area = si.quad(f, a, b)
#返回值為乙個陣列,第乙個值為積分值,第二個為誤差
在[-5, 5]區間繪製二次函式 y = 3x2 + 2x + 1的曲線,並利用積分計算原理和numpy自帶函式分別求積分。
構建函式,並建立x與y點集,繪製積分圖:
import numpy as np
import matplotlib.pyplot as mp
import matplotlib.patches as mc
deff
(x):
return
3* x **2+
3* x +
1a, b =-5
,5n =500
x1 = np.linspace(a, b, n +1)
y1 = f(x1)
mp.figure(
'integral'
, facecolor=
'lightgray'
)mp.title(
'integral'
, fontsize=20)
mp.xlabel(
'x', fontsize=14)
mp.ylabel(
'y', fontsize=14)
mp.grid(linestyle=
':')
mp.plot(x1, y1, c=
'orangered'
, linewidth=
6, zorder=0)
mp.show(
)
影象:
利用梯形計算定積分,並利用小梯形填充積分圖:
import numpy as np
import matplotlib.pyplot as mp
import matplotlib.patches as mc
deff
(x):
return
3* x **2+
3* x +
1a, b =-5
,5n =500
x1 = np.linspace(a, b, n +1)
y1 = f(x1)
area =
0for i in
range
(n):
area +=
(y1[i]
+ y1[i +1]
)*(x1[i +1]
- x1[i])/
2print
(area)
mp.figure(
'integral'
, facecolor=
'lightgray'
)mp.title(
'integral'
, fontsize=20)
mp.xlabel(
'x', fontsize=14)
mp.ylabel(
'y', fontsize=14)
mp.grid(linestyle=
':')
mp.plot(x1, y1, c=
'orangered'
, linewidth=
6, zorder=0)
for i in
range
(n):
mp.gca(
).add_patch(mc.polygon(
[[x1[i],0
],[x1[i]
, y1[i]],
[x1[i +1]
, y1[i +1]
],[x1[i +1]
,0]]
, fc=
'deepskyblue'
, ec=
'dodgerblue'
, alpha=
0.5)
)mp.show(
)
備註:add_patch()表示補丁,也可以說是在影象中繪製任意多邊形;mc.ploygon(點1, 點2, 點3,…)表示構建以點1, 點2, 點3,…為頂點的多邊形
結果(積分值):
260.002
由小梯形原理,計算得到的積分值為260.002
影象:
利用api計算積分值:
**:
import numpy as np
import scipy.integrate as si
deff
(x):
return
3* x **2+
3* x +
1a, b =-5
,5area = si.quad(f, a, b)
print
(area)
結果:
(260.0, 2.886579864025407e-12)
積分值為260. Part1 資料系統基礎
前四章講述應用於所有資料系統的基本理念,不論是執行在單機還是分布式的機器集群上。第一章介紹我們將要使用的術語和方法。解釋 可靠性 可擴充套件性和可維護性 的具體含義,以及我們如何去達到這些目標。第二章對比若干種不同的資料模型和查詢語言,從開發者角度是不同資料庫間最明顯的區分因素。我們可以看到不同的資...
makefile教程(基礎) part1
target.prerequisites command 解釋 target 是乙個目標檔案,也可以是執行檔案,還可以是乙個標籤 label prerequisites 要生成那個target所需要的檔案或是目標。command make需要執行的命令。任意的shell命令 main main.o ...
部落格推薦 Part 1
部落格推薦 part 1 博起 了一年多了,寫過一百多篇博文,看過的博文更是不計其數。剛剛看到乙個部落格的文章,實在把我笑到不行。然後就想推薦給大家。繼而就心血來潮,想把自己喜歡的一些部落格陸續的推薦給大家。也許,你也會喜歡呢?說明 仙仙,本名張仙!是湖南的一位autoware兄弟,跟我一起混跡內蒙...