MATLAB Answers

conversion between state space and transfer function

16 views (last 30 days)
asan ali
asan ali on 26 Jan 2021
Commented: asan ali on 26 Jan 2021
these are the state space variables:
A=[-1 -1;6.5 0], B=[1 1;1 0], C=[1 0;0 1], D=[0 0;0 0]
when i convert them to transfer function, it works fine but, when i convert them back to state space then i dont get the same matrices. please help me out.


Sign in to comment.

Accepted Answer

Paul on 26 Jan 2021
Edited: Paul on 26 Jan 2021
An infinite number of state space realizations correspond to a single transfer function. From a transfer function, the Control System Toolbox function ss() computes a realization that it believes has some desirable properties. You have some control, but not much, over what ss() returns. See the doc page for ss for more details.
Once you convert your original state space realization to a transfer function, CST doesn't really care, nor know, about the original state space realization from which you generated the transfer function. So, when it converts that tf back to ss, it just returns what it thinks is best.
However, the state space realization that you start with and the one that you end with after the two-step conversion will still have the same input/output dynamics, e.g., step responses and Bode plots should match (to within numerical precision).

More Answers (0)

Community Treasure Hunt

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

Start Hunting!