[其他] 請問要怎樣寫d2c的指令 ?已回收
有一個差分方程 y(k+n)+a1y(k+n-1)+.....+ an y(k) = bm x(k+m) +.....b0 x(k)
轉換微分方程的係數
假設
微分方程係數
num = [bm bm-1........b0]
den = [1 an-1 ........a0]
差分方程
num_bar = [bm' bm-1'...........b0']
den_bar = [1 an-1'.............a0']
根據 語法 d2c 是這樣寫 [num den] = d2c(num_bar,den_bar,ts)
請問是要怎樣用呢?
ex
微分 轉 差分
[num den] = d2c([1 1],[1 2 2],0.01)
這樣會出現錯誤? 為什麼呢 ? 不是方陣 ?
ex
差分 轉 微分
[num den] = d2c([1 1],[1 2 2],0.01)
也是錯誤
但是-----------------------------------------------------------------
ex
syslaplace = tf([1 1],[1 2 2])
sysdis = c2d(syslapace,0.01)
這種就可以轉成Z轉換的係數
-------------------------------------------------------
既然 MATLAB 內建 可以直接寫出 Laplace 轉移函數系統
syslaplace = tf([1 1],[1 2 2]) 類似這樣
然後再用
sysdis = c2d(syslaplace,0.01)
轉換成 Z轉換 (差分方程係數)
---------------------------------------------------------
不知道 MATLAB 有沒有內建 直接寫出 Z轉換 的轉移函數系統
然後再直接用
d2c 呢 ?
有請大家 幫我解惑一下 !!
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.24.125.85
※ 編輯: fonlintw0621 來自: 114.24.125.85 (11/28 15:23)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章