| System Identification Toolbox™ | ![]() |
m = merge(m1,m2,....,mN) [m,tv] = merge(m1,m2)
The models m1,m2,...,mN must all be of the same structure, just differing in parameter values and covariance matrices. Then m is the merged model, where the parameter vector is a statistically weighted mean (using the covariance matrices to determine the weights) of the parameters of mk.
When two models are merged,
[m, tv] = merge(m1,m2)
returns a test variable tv. It is
distributed
with n degrees of freedom, if the parameters of m1 and m2 have
the same means. Here n is the length of the parameter
vector. A large value of tv thus indicates that
it might be questionable to merge the models.
For idfrd models, merge is a statistical average of two responses in the individual models, weighted using inverse variances. You can only merge two idfrd models with responses at the same frequencies and nonzero covariances.
Merging models is an alternative to merging data sets and estimating a model for the merged data.
m1 = arx(z1,[2 3 4]); m2 = arx(z2,[2 3 4]); ma = merge(m1,m2);
and
mb = arx(merge(z1,z2),[2 3 4]);
result in models ma and mb that are related and should be close. The difference is that merging the data sets assumes that the signal-to-noise ratios are about the same in the two experiments. Merging the models allows one model to be much more uncertain, for example, due to more disturbances in that experiment. If the conditions are about the same, we recommend that you merge data rather than models, since this is more efficient and typically involves better conditioned calculations.
![]() | merge (iddata) | midprefs | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |