How do I convert descriptor state-space to transfer function?
7 次查看(过去 30 天)
显示 更早的评论
Hello. I have a state-space forumla of the form
.
![state-space](https://www.mathworks.com/matlabcentral/answers/uploaded_files/671823/state-space.png)
I'd like to have MATLAB convert this into its respective transfer function for me. I plan on encoding
sys = dss(A,B,C,D,E)
However, I looked on the page for transfer functions through tf, and I am unable to find how to convert from this dss to tf. Is there a direct way to encode it? Yes, I know that I can just do it by hand and encode the result myself. I'd just like to know if MATLAB can do it, and if so, how.
- Thank you
0 个评论
采纳的回答
Star Strider
2021-7-2
This seems to work:
A = [1 2; 3 4];
B = [5; 6];
C = [7 8; 9 10];
D = 0;
E = [11 12; 13 14];
ss_sys = dss(A,B,C,D,E)
tf_sys = tf(ss_sys)
.
3 个评论
Star Strider
2021-7-4
As always, my pleasure!
Not off-topic at all. I’ve never encountered a similar situation, so I have no idea.
更多回答(1 个)
Jesús Zambrano
2021-7-2
编辑:Jesús Zambrano
2021-7-2
I think you can just take the A,B,C,D matrices and use ss2tf command to convert it to transfer function.
Please look at this documentation which also shows an example:
Hope it helps!
3 个评论
Jesús Zambrano
2021-7-2
Oh!, my mistake. I didn’t read the E matrix, sorry. Please see answer below that seems to answer your question.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!