About comparision results mismatch in System Identification Toolbox

2 views (last 30 days)
Hi all, I'm currently using the SIT to estimate the state space model of a multiple input multiple output (MIMO) system.
I am able to get the corresponding 'A', 'B', 'C', 'D' and 'K' matrices based on my inputs and outputs, using the 'n4sid' method, and the fitting result seems to be really good (higher than 95%). I want to simulate these results in my m-files, and I use the same inputs values and the matrices from above estimation, simply as
x(k+1) = A*x(k) + B*u(k) and y(k+1) = C*x(k) (D is an empty matrix).
Here comes the problem: the simulated result 'y(k+1)' is far away from my measurement outputs values, which is also the one I used in SIT estimation. I tried once with fixing K=0, but result was still the same. There might be some influence from the noise, but I don't think it's that large.
Could someone explain me why this happen? And I am also wondering how could the SIT get the simulated output curve in the 'Model Output' option.
Thank you so much for your help!
  1 Comment
Xiwang
Xiwang on 2 Jul 2013
Hey, Yiming,
I am also using the N4sid toolbox. Can I ask you how to use N4sid to get the corresponding 'A', 'B', 'C', 'D' and 'K' matrices?
Thanks very much.
xiwang

Sign in to comment.

Answers (1)

Arkadiy Turevskiy
Arkadiy Turevskiy on 8 Apr 2013
Most likely the issue is due to not using the proper initial conditions as explained in the previous post.
You need to use findstatesidparametric to get the initial conditions for your simulation.
HTH.
Arkadiy

Community Treasure Hunt

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

Start Hunting!