📄 akaike.m
字号:
function [a,b,sig2,iflag] = akaike(x,n,a0,b0,ip,iq,nit,epsilon,per)
sig2p = var_my(x,n,ip,iq,a0,b0);
for i=1:ip
a(i)=a0(i);
end
for i=1:iq
b(i)=b0(i);
end
for k=1:nit
y = polefilt(x,n,iq,b);
y1 = polefilt(y,n,iq,b);
z = zerofilt(y1,n,ip,a);
[ry rz ryz rzy] = corrcomp(n,y,z,ip,iq);
g = grad(a,b,ip,iq,ry,rz);
h = hess_my(ip,iq,ry,rz,ryz,rzy);
bv = bvect(a,b,ip,iq,g,h);
l=0;
for j=1:ip+iq
bvc(j)=bv(j);
for i=1:j
l=l+1;
hc(l)=h(i,j);
end
end
m=ip+iq;
[iflag bvc] = cholesky(hc,bvc,m,epsilon);
if iflag == -1
return;
end
iflag=3;
for i=1:iq
bc(i)=bvc(ip+i);
end
if iq == 1
bbc(1,1)=bc(1);
end
pma=1;
if iq > 1
[bbc p0 p] = stepdown(iq,bc,pma);
end
for i=1:iq
if abs(bbc(i,i)) >= 1.0
iflag=1;
return;
end
end
for i=1:ip
a(i)=real(bvc(i));
end
for i=1:iq
b(i)=real(bvc(i+ip));
end
[sig2 iflag] = chkdn(sig2p,n,x,a,b,ip,iq,per);
if isempty(iflag) == 1
return;
end
if k >= nit
iflag=2;
return;
end
sig2p=sig2;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -