📄 io2reg.m
字号:
function [y, x] = io2reg(z, nn)%Io2reg: from I/O deta to ARX data structure%% [y, x] = io2reg(Z, nn)%% Z : the output-input data Z=[y u], with y and u as column vectors.% For multi-input systems Z=[y u1 u2 .. um]. For time series Z=y only.%% nn: nn = [na nb nk], the orders and delays.% For a time series, nn=na only.%By Qinghua Zhang. March, 1994. [zr,zc]=size(z); [nr,nc]=size(nn);%%%if zc>zr,error('Data should be organized in column vectors!'),return,endnu=zc-1;if length(nn)~=1+2*nudisp(' Incorrect number of orders specified!')disp('For an AR-model nn=na'),disp('For an ARX-model, nn=[na nb nk]')error('see above'),return,endif zc>1, na=nn(1);nb=nn(2:1+nu);nk=nn(2+nu:1+2*nu);else na=nn(1); nb=0;,nk=0;endn=na+sum(nb);if n==0, y=[]; x=[]; return; end nmax=max([na+1 nb+nk])-1;x = zeros(zr-nmax,n);phi=zeros(1,n);for k=nmax:zr-1 phi(1:na)=z(k:(-1):(k+1-na)); ss=na; for ku=1:nu phi(ss+1:(ss+nb(ku))) = z((k-nk(ku)+1):(-1):(k-nk(ku)+2-nb(ku)),ku+1); ss=ss+nb(ku); end x(k-nmax+1,:) = phi;endy = z(nmax+1:zr,1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -