I was reading about subspace identification such as N4SID, MOESP and CVA. But they are so difficult and the education material I have does not teach those methods correctly. Always jumping over important stages and calculations.

Then I decided to go back and continue with estimation SISO system with ARX, ARMAX, BJ and OE metods.

Then I got the flashback:

$$G(s) = C(sI-A)^{-1}*B + D$$

It's possible to transform a state space model to a transfer function. And it's also possible to transform a transfer function to a state space model.

But how about a transfer function matrix $G_m(s) \in \Re^{nx1}$ to a state space model? It that possible?

Let's say that I have a system of a mechanical system. The mechanical system have two masses and that's mean that I can estimate two transfer function matrices.

$$G_m(s) = \begin{bmatrix} \frac{5}{s^2 + 3s +3}\\ \frac{0.1}{s^2 + 0.3s +6} \end{bmatrix}$$

Convert this to a state space will give me a SIMO state space model. But is this possible?


closed as unclear what you're asking by John B, user91500, José Carlos Santos, Leucippus, Shailesh Sep 7 '17 at 13:44

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ I do know it is possible, since MATLAB can do it. However I am not 100% how to do it by hand. Perhaps the Smith-McMillan form can be useful. Or maybe first treat each entry in the transfer function matrix as a SISO system and find a state space representation for each, combine them and then find a minimal representation (controllable and observable). $\endgroup$ – Kwin van der Veen Sep 3 '17 at 13:07
  • $\begingroup$ @KwinvanderVeen I know that is possible to transfrom a TF to SS if there is the result is a SISO SS. There is something called Subspace Identification, but that is high difficult. It can be a risk to do a very bad identification if I don't know how to use the tools correctly. What do you think about grey-box models? You know the "shell" if the matrix, but not sure that all parameters are right. youtube.com/watch?v=cRUCIPIoPeo $\endgroup$ – Daniel Mårtensson Sep 3 '17 at 16:01
  • $\begingroup$ I believe tf2ss also works for MIMO. There should always be an equivalent state space representation of a transfer function matrix, so no need for identification. Also not sure what RGA has to do with this. You can use that find the best pairing when trying to decouple the system. So treating the system as multiple SISO systems and ignoring possible interaction in order to make controller design simpler. But this is another question. $\endgroup$ – Kwin van der Veen Sep 4 '17 at 1:11

Yes it is. Although canonical realizations for SISO models are unique and straightforward, the equivalent theory for MIMO models, Brunovsky forms and the like, is somewhat more complex. The reason is, in general terms, that the connection between change of MacMillan degree and pole-zero cancellations is not as straightforward in the MIMO case as in the SISO case. I tend to agree with your impression that subspace identification is a complicated way to go about avoiding the issues created by multivariable models.

For the application you have in mind, system identification, I suggest you may want to use the work of yours truly. There's a learning curve related to realization theory, but if you trust our work cited below, and its references, you could go about implementing the methods without much fear.

Matchable-Observable Linear Models and Direct Filter Tuning: An Approach to Multivariable Identification. DOI: 10.1109/TAC.2016.2602891


Not the answer you're looking for? Browse other questions tagged or ask your own question.