Output Error Method for parameter estimation

9 views (last 30 days)
Dear Matlab community,
I have the following state space model :
The model is defined with : 5 states (X),1 input (U), and 2 outputs (Y)
Hence the matrices are of the following dimensions:
-
This makes a total of 49 parameters.
I have the data that come from testing and are given in the attached .mat file as an iddata object.
Now, i would like to perform system identification to fit the model to the measured output, using the output error method. And finally get the values of the parameters.
I have tried to use the oe() function included in the system identification toolbox, but it doesn't seem to do what i want. Is there anybody who can help me ? Do you know other methods to get the parameters of the fitted model ? Has anyone good experience with system identification ?
Thank you for your time !

Accepted Answer

Star Strider
Star Strider on 3 Feb 2021
I would use the ssest function:
D = load('dat.mat');
dat = D.dat;
sys = ssest(dat, 5);
A = sys.A
B = sys.B
C = sys.C
D = sys.D
those being:
A =
-9.8108e-03 -1.7520e-02 2.2364e-02 9.7365e-03 3.0023e-01
-8.5323e-02 -1.5350e-01 -1.7269e+00 7.8601e-02 5.1336e-01
-4.6620e-02 1.4686e+00 -9.1005e+00 1.7038e+00 1.8151e+00
1.7951e-02 -3.4105e-01 -2.9225e+00 -5.5039e+00 7.5581e+01
2.7352e-02 4.1784e-01 4.0000e+00 -4.2111e+01 -6.9225e+01
B =
1.1602e-05
7.3110e-06
-9.9022e-04
5.3061e-03
1.5000e-02
C =
-1.7279e+03 1.3914e+03 -1.3506e+01 -7.0445e-02 -1.4056e-01
2.8143e+04 9.0494e+02 -1.6417e+00 -1.9433e+01 -4.8266e+00
D =
0
0
with:
figure
compare(dat, sys)
producing:
.
  3 Comments
M.Many
M.Many on 3 Feb 2021
Do you know if there is a way to get the bias parameters with the ssest function ?
Star Strider
Star Strider on 3 Feb 2021
As always, my pleasure!
I’m not certain what ‘bias parameters’ are in this context, so I can’t specifically address that. There are a number of options and name-value pair arguments to get additional information from the model and the estimation procedure, all described in the documentation.

Sign in to comment.

More Answers (0)

Categories

Find more on Linear Model Identification in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!