1、拉普拉斯變換
在MATLAB中,拉普拉斯變換調用格式如下:
(1)
F=laplace(f)
對f(t)進行拉普拉斯變換,其結果為F(s);
(2)
F=laplace(f,v)
對f(t)進行拉普拉斯變換,其結果為F(v);
(3)
F=laplace(f,u,v)
對f(u)進行拉普拉斯變換,其結果為F(v);
在調用laplace函數前,要用syms命令對所有需要用到的變量等進行說明,即說明是符號變量。
Python中用laplace_transform來計算信號的拉普拉斯變換,其用法與MATLAB中laplace函數用法類似。
例:Python代碼如下:
"""
拉普拉斯變換
"""
from sympy import laplace_transform,exp,sin,plot
from sympy.abc import t,s,a
ft=exp(-t)*sin(a*t)
F=laplace_transform(ft,t,s)
print(F)
2、拉普拉斯逆變換
在MATLAB中,拉普拉斯逆變換調用格式如下:
(1)
f=ilaplace(F)
對F(s)進行拉普拉斯變換,其結果為f(t);
(2)
f=ilaplace(F,u)
對F(w)進行拉普拉斯變換,其結果為f(u);
(3)
f=ilaplace(F,v,u)
對F(v)進行拉普拉斯變換,其結果為f(u);
在調用ilaplace函數前,要用syms命令對所有需要用到的變量等進行說明,即說明是符號變量。
Python中用inverse_laplace_transform來計算信號的拉普拉斯變換,其用法與MATLAB中ilaplace函數用法類似。
例:Python代碼如下:
"""
拉普拉斯逆變換
"""
from sympy import inverse_laplace_transform,exp,Symbol
from sympy.abc import t,s,a
F=(4*s+5)/(s**2+5*s+6)
ft=inverse_laplace_transform(F,s,t)
print(ft)
3、s域部分分式展開
在MATLAB中,函數residue可以得到復雜有理分式F(s)的部分分式展開式,其調用格式為:
[r,p,k]=residue(num,den)
其中,num、den分別為F(s)的分子和分母多項式的系數向量,r為部分分式的系數,p為極點,k為F(s)中整式部分的系數,若F(s)為有理真分式,則k為零。
Python與MATLAB中相似,也是利用residue得到復雜有理分式的部分分式展開式。
例:Python中代碼如下:
"""
s域部分分式展開
"""
import scipy.signal as sig
num=[1,2]
den=[1,4,3,0]
r,p,k=sig.residue(num,den)
print(r)
print(p)
print(k)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
