小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

 excel05 2019-10-15

計(jì)算機(jī)科學(xué)的起源是為了解決數(shù)學(xué)問題,所以,在某種程度上,可以把計(jì)算機(jī)科學(xué)歸為數(shù)學(xué)的一個(gè)分支。因此,可以通過使用Python程序來學(xué)習(xí)高等數(shù)學(xué)中的知識(shí),如積分、微分等,反之,也可以通過解決數(shù)學(xué)問題深化Python的 編程 思維。

積分的由來

在古埃及,尼羅河經(jīng)常泛濫成災(zāi),但是每當(dāng)洪水退去之后,就會(huì)留下肥沃的沖積平原供人們播種。古時(shí)候的人們想知道沖積平原上可用的耕地面積,但是沖積平原的形狀不是常規(guī)的矩形或者圓形,而是不規(guī)則的形狀,這就為測量的工作帶來了麻煩。

后來經(jīng)過數(shù)學(xué)家們的不斷探索,他們發(fā)現(xiàn),如果把這些不規(guī)則的形狀分割成一個(gè)個(gè)小的矩形,只要把矩形窄的一邊切得足夠小,再把這些矩形的面積加起來,矩形的面積之和就無限接近于不規(guī)則圖形的實(shí)際面積,這就是積分的由來,積分的幾何意義就是求函數(shù)與坐標(biāo)系形成的面積。

私信小編01 獲取源碼學(xué)習(xí)教程!

受到啟發(fā)的數(shù)學(xué)家們,在測量一塊不規(guī)則的圖形面積時(shí),會(huì)把沿著河流的一側(cè)當(dāng)做橫軸,就是坐標(biāo)系里的x軸,把與河流呈逆時(shí)針90°方向的一側(cè)當(dāng)做縱軸,也就是坐標(biāo)系里的y軸。這樣,對(duì)于每一個(gè)x的值,都有一個(gè)對(duì)應(yīng)y的值與之對(duì)應(yīng)。在這里,我們把x的值叫做自變量,y的值叫做因變量,記作y = f(x)。對(duì),你沒看錯(cuò),這就是函數(shù)的雛形。

有了函數(shù)之后好處就多了。我們把不規(guī)則形狀的橫向距離(假設(shè)為L)分為n等分(n->+∞),那么,橫坐標(biāo)是從0開始的,每一份的長度就是L/n。那么第一塊矩形對(duì)應(yīng)的橫坐標(biāo)點(diǎn)是1*L/n,第二塊矩形對(duì)應(yīng)的橫坐標(biāo)點(diǎn)是2*L/n,第三塊矩形對(duì)應(yīng)的橫坐標(biāo)點(diǎn)是3*L/n…以此類推,那么聰明的你肯定已經(jīng)想到了,第n塊矩形對(duì)應(yīng)的橫坐標(biāo)點(diǎn)是就是L。

既然確定了橫坐標(biāo),那么縱坐標(biāo)的位置就可以通過f(x)來求出,那么第一塊矩形的面積就是L/n*f(1*L/n),第二塊矩形的面積就是L/n*f(2*L/n)…第n塊矩形的面積就是L/n*f(L),然后把這些數(shù)加起來就得到了不規(guī)則圖形的面積。

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

sin(x)的積分(面積)

學(xué)過高等數(shù)學(xué)的你一定還記得,sin(x)在0-2π上的面積為 4,如下:

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

用Python求sin(x)在0-2π上的面積

想要求一個(gè)規(guī)則圖形的面積,如長方形,直接用長×寬即可,但是如果要求一個(gè)不規(guī)則的圖形面積,如sin(x)在0-2π上的面積呢?

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

根據(jù)積分的來源和積分的含義,實(shí)際上很容易知道可以通過將曲面面積劃分為一個(gè)個(gè)矩形,最后求矩形之和的方式來實(shí)現(xiàn) (順便說一句:聲波的音頻采樣(數(shù)字化)也是類似的原理) 。如下:

Python與高等數(shù)學(xué)之Python與積分!用Python學(xué)數(shù)學(xué)

那么如何用Python代碼來實(shí)現(xiàn)呢?

首先,我們需要將sin(x)與x軸在0-2π組成的面積劃分為很多個(gè)矩形,因此需要引入一個(gè)變量n,那么矩形在x軸上的寬度(width)即為2π/n。

其次,我們需要通過sin(X)函數(shù)求出每個(gè)矩形的高度(height),假設(shè)為第i個(gè)矩形,則其高度為sin(i*width)。

最后,我們還需要把所有矩形的和相加,這里需要用到for循環(huán)。

另外,還需要注意的是,由于sin(x)在π-2π之間時(shí)為負(fù)數(shù),因此還需要使用絕對(duì)值函數(shù)。

import math

n = 100 # n是將x軸(0-2π)切段的數(shù)量

area = 0

width = 2 * math.pi / n

for i in range(1,n+1):

x = i * width

height = abs(math.sin(x))

area += width * height

print(area)

程序輸出結(jié)果為:3.9986839661525218。

即,當(dāng)我們將sin(x)在0-2π上劃分為100個(gè)小矩形時(shí),小矩形面積之和為3.9986839661525218。

聰明的你應(yīng)該想到,如果矩形劃分的越細(xì),數(shù)量越多,矩形面積之后就應(yīng)該更接近于sin(x)的真實(shí)面積。那么,如果將n設(shè)置為1000000,其結(jié)果會(huì)是怎樣了。

正如你所想,程序輸出結(jié)果為:3.999999999986816。Great!很明顯與n=100相比,更加接近于sin(x)的真實(shí)面積(4)了。

好了,本次的Python小課,Python與高等數(shù)學(xué)之Python與積分就到這里了,下次咱們?cè)倭牧腜ython與高等數(shù)學(xué)之Python與微分。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多