日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

【scipy 基础】--积分和微分方程

發布時間:2023/11/5 C# 64 coder
生活随笔 收集整理的這篇文章主要介紹了 【scipy 基础】--积分和微分方程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于手工計算來說,積分計算是非常困難的,對于一些簡單的函數,我們可以直接通過已知的積分公式來求解,但在更多的情況下,原函數并沒有簡單的表達式,因此確定積分的反函數變得非常困難。

另外,相對于微分運算來說,積分運算則具有更多的多樣性,包括不同的積分方法(如換元積分法、分部積分法等)和積分技巧,需要根據具體的函數形式選擇合適的方法,這增加了積分運算的復雜性。
而微分運算有一條基本的規則,即導數運算具有線性性質,可以通過求導法則來簡化計算。

Scipy庫的積分子模塊為我們提供了便捷的積分和微分方程計算接口。
利用Scipy,進行數學或科學研究時,可以把更多的時間花在原理和推導上,計算過程交由Scipy去處理。

1. 主要功能

Scipy的積分模塊主要用于進行數學方程的求解和過程控制。
該模塊提供了一組函數,可以用于求解一元和多元函數的導數、積分、二階導數和偏導數等。
此外,該模塊還提供了一些用于過程控制和優化的函數。

此模塊的函數主要分為以下幾類:

  1. 針對函數對象的積分
  2. 針對固定樣本的積分
  3. 常微分方程

總之,scipy.integrate模塊提供了豐富的函數和算法,用于解決各種數學問題和過程控制問題。
下面通過一些示例來了解其使用方法。

2. 積分運算

2.1. 一重積分

比如計算曲線 \(y = e^{-x}\)\(-0.75 \leqslant x \leqslant 0.5\)范圍內的面積。

也就是計算積分:\(\int_{-0.75}^{0.5}e^{-x}dx\)

from scipy.integrate import quad
y = lambda x: np.exp(-x)
integral, integral_err = quad(y, -0.75, 0.5)

print("面積為:{}".format(integral))
# 運行結果
面積為:1.5104693569000414

2.2. 二重積分

所謂二重積分,就是積分變量有兩個,依次在兩個變量上積分得出最終的結果。
比如,對于函數:\(z = x^2 + y^2\),相當于如下的三維曲面

計算上面的曲面在 \(-2 \leqslant x \leqslant 2\)\(-1 \leqslant y \leqslant 1\)情況下,與XY平面所包圍的體積。
即:\(\int_{-2}^2\int_{-1}^1(x^2+y^2)dydx\)

from scipy.integrate import dblquad

integrand = lambda y, x: x**2 + y**2
integral, integral_error = dblquad(integrand, -2, 2, -1, 1)

print("體積為:{}".format(integral))
# 運行結果
體積為:13.333333333333334

這個示例中的曲面在X平面Y平面上是對稱的,計算二重積分時,先積分x,還是先積分y,結果是一樣的。
也就是:\(\int_{-2}^2\int_{-1}^1(x^2+y^2)dydx = \int_{-2}^2\int_{-1}^1(x^2+y^2)dxdy\)

其他的曲面不一定是對稱的,所以二重積分時一定要注意積分的順序

3. 常微分方程求解

常微分方程是一類以未知函數和其導數為主要研究對象的數學方程,適合描述不斷變化的場景。

3.1. 一元常微分方程

比如計算物體速度的時候,如果加速度恒定,根據牛頓運動定律,很容易就能計算出速度時間的關系。
但是若加速度也會不斷變化的話,如何確定速度和時間的關系呢?

比如假設加速度速度和時間變化的關系是: \(a = v+3t\)
因為加速度也可以表示為:\(a = \frac{dv}{dt}\),也就是速度對時間的微分,即:\(a = v'\)
這樣,就得到:\(a = \frac{dv}{dt} = v' = v+3t\),其中,\(v' = v+3t\)就是一個常微分方程
假設時間t0時,速度v也為0,則得到:\(v'-v-3t=0, v(0)=0\)

下面利用Scipy來求解這個一元常微分方程

from scipy.integrate import odeint

# v是速度,t是時間
def dvdt(v, t):
    return v + 3*t

v0 = 0
t = np.linspace(0, 1, 100)

# 結果res是 N行1列的二維數組(因為是一元方程)
res = odeint(dvdt, v0, t)

# 轉置之后第一行就是各個時間點的速度
res_v = res.T[0]

# 繪制速度和時間的關系
plt.plot(t, res_v)
plt.show()


圖中曲線的斜率就是加速度,可以看出加速度是隨時間不斷變大的。

3.2. 二元常微分方程組

對于二元常微分方程組,同樣也可以用 scipy 來求解。
比如如下方程組:
\(\begin{align*} & y_1' = y_1 + y_2^2 - 5x \quad & y_1(0)=0\\ & y_2' = 2y_1 + y_2^3 + sin(x) \quad & y_2(0)=0 \end{align*}\)

求解方法:

from scipy.integrate import odeint

# 創建方程組
def dSdx(S, x):
    y1, y2 = S
    return [
        y1 + y2**2 - 5 * x,
        2 * y1 + y2**3 + np.sin(x),
    ]

# 方程組初始值
y1_0 = 0
y2_0 = 0
S_0 = (y1_0, y2_0)

x = np.linspace(0, 1, 100)
sol = odeint(dSdx, S_0, x)

y1_sol = sol.T[0]
y2_sol = sol.T[1]

# 分別繪制y1,y2和x的關系
plt.plot(x, y1_sol, label="y1")
plt.plot(x, y2_sol, label="y2")
plt.legend()
plt.show()

4. 總結

積分常微分方程算是應用非常廣,但手工計算非常麻煩的兩種數學工具,
在學校學習高等數學的時候應該沒少吃過這兩種計算的苦。

有了Scipy的幫助,則可以擺脫這類復雜計算帶來的痛苦,讓我們可以專注于創建解決問題的方程。

總結

以上是生活随笔為你收集整理的【scipy 基础】--积分和微分方程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲欧美国产一区二区三区 | 天堂视频免费看 | 黄视频在线播放 | 女人被男人躁得好爽免费视频 | 日本欧美一区二区 | 午夜在线视频免费 | 一区二区中文字幕在线观看 | 精品久久久久久无码人妻 | 久久人人爽人人爽人人片亚洲 | 九九少妇 | 成人精品一区二区三区四区 | 亚洲一区精品在线 | 成 人片 黄 色 大 片 | 国产精品后入内射日本在线观看 | 大陆日韩欧美 | 午夜精品久久久久久久91蜜桃 | 亚洲av成人精品一区二区三区在线播放 | 先锋影音一区二区 | 精品一区二区三区免费观看 | 奇米影视在线视频 | 日本黄色高清视频 | 三级免费网址 | 久久精品国产亚洲av无码娇色 | 日韩欧美亚洲 | 国产精品白嫩极品美女 | 亚洲午夜久久久久久久久久久 | 亚洲精品成a人 | 好吊操这里有精品 | 欧美在线播放 | va在线视频 | 国产欧美一区二区三区另类精品 | caopor超碰 | 人妻久久一区二区 | 熊出没之冬日乐翻天免费高清观看 | 婷婷色中文| 欧美视频一区二区三区四区 | 白峰美羽在线播放 | 国产美女免费观看 | 91精品国产色综合久久不卡98 | 又嫩又硬又黄又爽的视频 | 亚洲av乱码久久精品蜜桃 | 亚洲av乱码一区二区 | 色婷婷综合久久 | 国产十八熟妇av成人一区 | 国产欧美一区二区三区精华液好吗 | 日韩一级在线播放 | 国产深夜视频 | 成人在线一区二区三区 | 超碰在线观看91 | 夜色在线影院 | 琪琪av在线 | 久久嫩 | 男人的天堂免费视频 | 美女的胸给男人玩视频 | 成人欧美视频在线观看 | 豆花免费跳转入口官网 | 九九欧美| 一级做a免费视频 | 音影先锋av资源 | 国产高潮失禁喷水爽到抽搐 | 久久一区二区精品 | 风间由美一二三区av片 | 国产做爰xxxⅹ高潮视频12p | 九七影院在线观看免费观看电视 | 日b影院 | 国产成人av影院 | 黄色在线不卡 | 色88久久久久高潮综合影院 | 丝袜 亚洲 另类 欧美 重口 | 亚洲人视频在线观看 | av久色| 日韩人妻一区二区三区蜜桃 | 国产精品xxx在线 | 91久久国语露脸精品国产高跟 | 亚洲欧美一区二区三区四区五区 | 中国女人内谢69xxxx | 毛片网站免费观看 | 久久av一区二区三区漫画 | 西西人体大胆4444ww张筱雨 | 中文亚洲av片在线观看 | 亚洲图片视频小说 | 久久久久久片 | 白白色在线播放 | 亚洲精品免费在线观看视频 | 欧美人与物videos另类 | 91在线影院 | 欧美成人xxx | 97影视 | 极品少妇网站 | 每日av更新 | 国产一级在线观看视频 | 国产区视频在线观看 | 一级黄色在线视频 | 五月天激情视频在线观看 | 久久久久噜噜噜亚洲熟女综合 | 黄色同人网站 | 一本色道久久综合狠狠躁 | 欧美资源 | 黄色网久久 |