我有一個具有48個特徵值的SISO系統(以tf形式),我想找到主導極點(比方說,將其減少到一階或二階)。我需要知道他們近似計算我的系統的阻尼和帶寬。我不想依賴來自時間響應的識別,我不想看pzmap(因爲我必須多次)。有沒有人有想法解決它?預先感謝您的幫助。Matlab - 以編程方式找到主導極點
-1
A
回答
0
如果您已經獲得了傳遞函數,您可以做的是分析極點並根據它們的實際值進行排序。極點或復極點對是穩定的(即在複平面的左側)和最接近到虛軸將是最主要的極點,你會選擇。
像這樣的東西出現在腦海,因爲你的傳遞函數存儲在一個TF
對象,我們稱之爲T
:
%// Get numerator and denominator data
[num,den] = tfdata(T, 'v');
%// Get the poles
pl = roots(den);
%// Get the stable poles only
pl_stable = pl(real(pl) < 0);
%// Determine the closest real location to the imaginary axis
[~,ind] = min(abs(real(pl_stable)));
%// Find all poles that share this same real location
tol = 1e-10;
ind_final = find(abs(real(pl_stable - pl_stable(ind))) <= tol);
final_poles = pl_stable(ind_final);
這段代碼的第一部分找到分子和您的傳遞函數的分母系數分別存儲在num
和den
中。之後,我們通過找出分母的根來得到傳遞函數的極點。之後,我們通過搜索所有真實分量爲負數的極點來隔離出穩定的極點。
一旦我們將這些極點隔離出來,我們通過使用min
並使用第二個輸出來確定最小極點的位置來確定最接近極點的想象訪問。
之後,我們希望找到所有極點誰共享這相同的最小實分量通過搜索所有極小的容差這個最小的實際值。我將此容差設置爲1e-10
。一旦我們找到這些位置,我們將索引到穩定的極點數組中,並提取我們需要的數據。
這裏有一個小例子:
>> T = tf([1 1], [1 3 2 1])
T =
s + 1
---------------------
s^3 + 3 s^2 + 2 s + 1
Continuous-time transfer function.
檢查出兩極,我們得到:
>> pl
pl =
-2.3247 + 0.0000i
-0.3376 + 0.5623i
-0.3376 - 0.5623i
正如你可以看到,有一對主導極點,其實際成分是-0.3376
而另一個真正的杆位於-2.3247
。我們需要從s = -0.3376 +/- 0.5623i
那裏得到一對兩極。
通過上面的代碼運行,我們得到:
>> final_poles
final_poles =
-0.3376 + 0.5623i
-0.3376 - 0.5623i
相關問題
- 1. 以編程方式導航到Windows Mobile主屏幕
- 2. 以編程方式配置MATLAB
- 3. Matlab:以編程方式運行Matlab應用程序
- 4. 用matlab中的顏色變量以編程方式生成極座標或準極座標圖
- 5. sqlite - 以編程方式確定主鍵
- 6. 以編程方式膨脹AppCompat主題
- 7. 以編程方式更改awesomewm主題
- 8. 以編程方式應用主題
- 9. 以編程方式應用Powerpoint主題
- 10. 以編程方式加載主界面?
- 11. 以編程方式更改主體類
- 12. 以編程方式顯示主視圖
- 13. linux:以編程方式添加主機?
- 14. 以編程方式進入主屏幕
- 15. 以編程方式Angularjs +彈簧引導安全更改主體
- 16. 以編程方式查找網絡掩碼中的主機數
- 17. 以編程方式與主廚一起查找AWS公共DNS
- 18. 以編程方式查找kafka主題大小
- 19. 繼承一個樣式或以編程方式找到樣式
- 20. 以編程方式導出Google Cloud Datastore並導入到BigQuery
- 21. 在matlab中找到積極的calendarDurations
- 22. 使MATLAB編輯器或命令窗口以編程方式抓取焦點
- 23. 以編程方式動態導入
- 24. 以編程方式停止導航
- 25. 以編程方式在iOS中導航
- 26. 以編程方式批量導入LDIF
- 27. 以編程方式導航w/HashRouter
- 28. 如何以編程方式查找javac.exe?
- 29. 以編程方式查找GridView行
- 30. 以編程方式查找地區
您可以通過查看零極點地圖...或者只是極...並找到那些最接近找到最主導極點到虛軸。除非我看到你寫的一些代碼,否則我不能再告訴你。 – rayryeng
這就是我現在所做的......但是因爲我必須多次(比如說超過30次),我正在尋找一個編程解決方案... –
我給它一個鏡頭。看一看。 – rayryeng