System Identification Toolbox: How can we modify the starting parameters for the armax-algorithm?
2 次查看(过去 30 天)
显示 更早的评论
One can calculate ARMA-coefficients using the armax-algorithm from the Systems Identification Toolbox:
estimatedPolymodel=armax(iddata(outputdata,inputdata,tsample),[na nb nc nk], opt);
ARcoeff=estimatedPolymodel.A
MAcoeff=estimatedPolymodel.B
How can we modify the starting parameters for the algorithm (to accelerate and improve the results)?
0 个评论
采纳的回答
Rajiv Singh
2020-6-15
You can set the A, B, C values explicitly, as in
estimatedPolymodel.A = ARCoeff
Or, call the IDPOLY constructor with A, B, C polynomials initialized to the desired values.
A = [1 .1]
B = [0 0 4 1]
C = [1 .3]
m = idpoly(A,B,C,'Ts',1)
% refine model's initial parameter values
m2 = armax(data, m)
% but I wanted to update only A and B but not C!
m.Structure.C.Free = false;
m3 = armax(data, m)
2 个评论
Rajiv Singh
2020-8-10
Look under the "structure" property. In addition to "Free", it also offers "Minimum" and "Maximum" specifications that you can set for individual coefficients.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Analyze Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!