フィルターのクリア

state-space controlability

3 ビュー (過去 30 日間)
sverre Kvist
sverre Kvist 2022 年 2 月 24 日
コメント済み: Star Strider 2022 年 2 月 24 日
hello.
i'm fairly new to MatLab and im trying calculate whether a state-space system is controllable or not and then display it in writing. the question i have is: am i doing it correclty? i've googled a bit trying to figure it out on my own, but since i have little no no experience using the software i'm not getting a definite answer.
my goal is simply to write out whether the system is controlable or not, and im unsure if i've got the syntax correct.
thanks in advance :)
System controlability.
clc, clear, close all;
A=[1 1;-4 -2;]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
co=ctrb(system)
dimensjon=isequal(A,co);
if(dimensjon==0)
disp('system is not controlable')
else
disp('system is controlable')
end
edit:
i've since updated the code:
  • think it's better, but original question still stands.
System controlability.
clc, clear, close all;
A=[1 1;4 -2]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
co=ctrb(system);
unco= length(A)-rank(co);
if(unco==0)
disp('system is controlable')
else
disp('system is not controlable')
end

採用された回答

Star Strider
Star Strider 2022 年 2 月 24 日
The example in the documentation section on Check System Controllability is the same test I usually use. It would be appropriate in your application as well.
  4 件のコメント
sverre Kvist
sverre Kvist 2022 年 2 月 24 日
alright. thank you very much for your assistance.
i think i've arrived at a code that works.
for Reference:
clc, clear, close all;
A=[1 1;4 -2]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
controlabilityMatrix=ctrb(A,B); %Mc=[B, AB]
unco= length(A)-rank(controlabilityMatrix);
if(unco==0)
disp('system is controlable')
else
disp('system is not controlable')
end
Star Strider
Star Strider 2022 年 2 月 24 日
My pleasure!
The code appears to be correct, at least wirh respect to my understanding.
If my Answer helped you solve your problem, please Accept it!
.

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

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by