自适应滤波算法MATLAB程序如下:
Lms.m % 最小均方算法
x=zeros(2000,1);
x1=zeros(2000,1);
w=zeros(2001,2); %生成三个0矩阵来存储
x(1,1)=1; %信号值和估计值等
x(2,1)=1;
a1=0.195;
a2=-0.95; %生成数据的用到参数
miu=0.1; %步长因子
for k=1:1998
v=0.1*randn(1); %白噪声信号
x(k+2,1)=a1*x(k+1,1)+a2*x(k,1)+v; %生成数据
x1(k+2,1)=w(k+2,1)*x(k+1,1)+w(k+2,2)*x(k,1); % 滤波输出
e=x(k+2,1)-x1(k+2,1); %求取误差
w(k+3,1)=w(k+2,1)+miu*x(k+1,1)*e;
w(k+3,2)=w(k+2,2)+miu*x(k,1)*e; %更新权向量
end
for k=1:1998
plot(k,w(k+3,1),'r',k,w(k+3,2),'b',...
k,0.195,'g',k,-0.95,'g--');
hold on;
end
xlabel('n');
ylabel('w(n)');
title('w(n)的变化曲线(线性预测,LMS)/张大伟');
legend('w1(n)','w2(n)');
AFA.rar_demand response_冲激噪声_最优滤波 matlab_非平稳_非平稳 自适应
版权申诉
84 浏览量
2022-09-23
23:51:48
上传
评论
收藏 877B RAR 举报
JonSco
- 粉丝: 76
- 资源: 1万+