How do I convert descriptor state-space to transfer function?
8 views (last 30 days)
Show older comments
Justin Burzachiello
on 1 Jul 2021
Commented: Star Strider
on 4 Jul 2021
Hello. I have a state-space forumla of the form .
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 Comments
Accepted Answer
Star Strider
on 2 Jul 2021
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 Comments
Star Strider
on 4 Jul 2021
As always, my pleasure!
Not off-topic at all. I’ve never encountered a similar situation, so I have no idea.
More Answers (1)
Jesús Zambrano
on 2 Jul 2021
Edited: Jesús Zambrano
on 2 Jul 2021
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 Comments
Jesús Zambrano
on 2 Jul 2021
Oh!, my mistake. I didn’t read the E matrix, sorry. Please see answer below that seems to answer your question.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!