MATLAB R2024 Rb

18 ビュー (過去 30 日間)
Shahin
Shahin 2024 年 12 月 5 日
コメント済み: Andrew Ouellette 2024 年 12 月 9 日
In MATLAB 2024 Rev B, the rlocus command is not working correctly for complex tranfer functions! Here is an example
s=tf('s')
rlocus((60*s^5 + 242*s^4 + 728*s^3 + 564*s^2 - 549*s)/(120*s^4 + 484*s^3 + 1456*s^2 + 1128*s + 1170))
in whuch MATLAB 2021 gives a different plot than MATLAB 2024. The plot of the 2021 ver is correct. What changed?
  2 件のコメント
Cris LaPierre
Cris LaPierre 2024 年 12 月 5 日
If you think you have found a bug, please report that here: https://www.mathworks.com/support/contact_us.html
Paul
Paul 2024 年 12 月 5 日
Hi Shahin,
That is interesting. It looks like the markers for the open-loop poles and zeros are the opposite of standard conventions. Is that the only issue? I confirmed that the locus looks the same in R2024a but the pole and zero markers are as expected, so this is a new development in R2024b.
s=tf('s');
figure
rlocus((60*s^5 + 242*s^4 + 728*s^3 + 564*s^2 - 549*s)/(120*s^4 + 484*s^3 + 1456*s^2 + 1128*s + 1170));
The problematic example is an improper transfer function. rlocus looks correct for a proper transfer function.
figure
rlocus((s+1)*(s+2)/(s^2 + 2*.5*2*s + 4))
If you open a case with Tech Support, would you mind posting back here with their response?

サインインしてコメントする。

回答 (1 件)

Andrew Ouellette
Andrew Ouellette 2024 年 12 月 9 日
Hi Shahin,
2 notes:
1) In R2024b as of update 2, rlocusplot() generates an incorrect response for improper models. This bug will be fixed in a future R2024b update and for future versions of MATLAB.
2) As of R2024b, rlocusplot() does not support complex models. You will receive errors when launching the chart with complex models specified, and you will receive errors when updating an existing chart response to use a complex model.
  2 件のコメント
Paul
Paul 2024 年 12 月 9 日
編集済み: Paul 2024 年 12 月 9 日
Is there also a problem with rlocus as well as rlocusplot?
Is the problem only the markers for the open-loop poles and zeros? Or is there a problem with the plot of the trajectories of the closed-loop poles?
"Complex model" means a model with complex coefficients?
Andrew Ouellette
Andrew Ouellette 2024 年 12 月 9 日
Hi Paul,
This issue occurs only for the no-output syntax of rlocus(), which is a redirect to rlocusplot(). The markers for poles and zeros are swapped, but the trajectories are otherwise correct.
And yes, by complex model I mean ones with complex coefficients (ones where isreal() returns false).
rlocusplot(rss(3)*1j)
Error using DynamicSystem/rlocusplot (line 145)
Cannot compute the root locus of models with complex data.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeClassical Control Design についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by