Does the order (index) of inputs and outputs matter in MIMO system identification?
Show older comments
I have a simple MISO system identification code, where "GenVolt" is the output; "Pressure" and "MagVolt" are the input signals. I noticed if we swap the order of inputs when we define the iddata structure, the result would be totally different! As can be seen in the following code, I just swapped the order of "Pressure" and "MagVolt" as the inputs, and I get totally diffent estimations. I was wondering why this happens?
clc
clear
% load data
load SteamEng
Pressure = 0.1*MagVolt + 0.2;
% Estimating the transfer function
steam1 = iddata([GenVolt],[Pressure,MagVolt],0.05);
steam1.InputName = {'Pressure1';'MagVolt1'};
steam1.OutputName = {'GenVolt1'};
sys1 = tfest(steam1,2,1)
% Swapping the order of the inputs
steam2 = iddata([GenVolt],[MagVolt,Pressure],0.05);
steam2.InputName = {'MagVolt2';'Pressure2'};
steam2.OutputName = {'GenVolt2'};
sys2 = tfest(steam2,2,1)
The result is
sys1 =
%From input "Pressure1" to output "GenVolt1":
-4.961 s + 3.082
---------------------
s^2 + 29.89 s + 11.06
%From input "MagVolt1" to output "GenVolt1":
17.97 s + 48.5
---------------------
s^2 + 41.93 s + 120.6
sys2 =
%From input "MagVolt2" to output "GenVolt2":
17.59 s + 54.35
---------------------
s^2 + 42.73 s + 138.3
%From input "Pressure2" to output "GenVolt2":
-9.183 s + 43.3
---------------------
s^2 + 422.1 s + 154.5
Accepted Answer
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!