📄 homework4.m
字号:
clear;
clc;
N1=1000;
N=512;
N2=100;
a1=input('please input a')
a2=input('please input a')
sigma_v2=input('please input the variance of v');
w=zeros(2,N,N2);
e=zeros(N2,N);
for k=1:N2
v=sqrt(sigma_v2)*randn(1,N1);
u1=zeros(1,N1);
u1(1)=0;
u1(2)=0;
for m=1:N1-2
u1(m+2)=-a1*u1(m+1)-a2*u1(m)+v(m);
end
u=u1(N1-N+1:N1);
u2=[ 0 u];
c=0.01;
Jmin=0.005;
K_n=c*eye(2);
for n=1:N-1
d=u2(n+2);
x=[u2(n+1);u2(n)];
A=x'*K_n*x+Jmin;
G=K_n*x*inv(A);
alfa=d-x'*w(:,n,k);
w(:,n+1,k)=w(:,n,k)+G*alfa;
K_n=K_n-G*x'*K_n;
e(k,n+1)=(d-(w(:,n+1,k))'*x).^2;
end
end
w1=mean(w,3);
e1=mean(e);
plot(0:length(e1)-1,e1)
xlabel('迭代次数n')
ylabel('均方误差')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -