我正在用python中的過濾器做一些測驗。已經在matlab中完成了。這樣做時,在 matlab 中使用 impz 和在 python 中使用 scipy.signal.impulse2 時,對于同一個過濾器,我會得到不同的結果。Matlab impz:
這是python實作的結果。
為了具有相同的效果,我在 matlab 和 python 中都使用它來過濾系數。
b = np.array([0.0335718093676408, 0, -0.0671436187352817, 0, 0.0335718093676408])
a = np.array([1,-1.74768237925094,2.19561759706246,-1.29097205253115,0.553269889688682])
并且執行此操作的 matlab 代碼只是(這也會在 matlab livescript 中創建繪圖):
impz(b,a)
我使用的python代碼是這樣的:
T, yout = scipy.signal.impulse2((b,a))
并繪制:
plt.plot(T, yout)
我在檔案中找不到任何說明這些行為應該如此不同的內容
uj5u.com熱心網友回復:
impz和impulse2不一樣的功能。impz處理離散時間系統,而impulse2處理連續時間系統,實際上相當于impzdt
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/514960.html
