📄 hdpjxxddgj.m
字号:
q=input('输入滑动平均阶数:')
max=input('输入相邻两次迭代的误差精度:')
for j=1:q
r(j)=input('输入样本协方差函数:')
end
c=input('输入样本方差:')
for j=1:q
a(j)=0; %对第一次迭代的参数赋初值
end
x=0;sum1=0;sum2=0;sum3=0; % x表示噪声的方差
while 1
y=x;
for j=1:q
sum1=sum1+a(j)*a(j);
end
x=c/(1+sum1);
sum1=0;
for j=1:q
b(j)=a(j); %把上次迭代得到的参数值保留下来
if j<q
for t=1:q-j
sum2=sum2+a(t)*a(j+t);
end
a(j)=-r(j)/x+sum2;
else
a(j)=-r(j)/x;
end
sum2=0;
end
for j=1:q
if abs(b(j)-a(j))<max & abs(y-x)<max
flag(j)=1;
else
flag(j)=0;
end
sum3=sum3+flag(j);
end
if sum3==q
break
else
sum3=0;
end
end
for j=1:q
disp(a(j)) %显示最后迭代得到的参数估计值
end
disp(x) %显示最后得到的噪声方差的估计值
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -