📄 lms_adaptivefilter.m
字号:
clear;
cla;
N=500;
A=randn(1,N); %初始化
x=zeros(1,N);
y=zeros(1,N);
e=zeros(1,N);
%求出输入x(n)
x(1)=A(1);
x(2)=A(2)+1.6*A(1);
for i=3:N
x(i)=A(i)+1.6*x(i-1)-0.8*x(i-2);
end
d=x; %期望响应d(n)=x(n)
w=zeros(2,N); %权矢量w(n)初始化
mu=0.002; %步长因子mu
for n=3:N-1 %LMS算法
xl=x(n-1:-1:n-2);
y(n)=w(:,n)'*xl';
e(n)=d(n)-y(n);
w(:,n+1)=w(:,n)+2*mu*e(n)*xl';
end
%画出LMS算法权矢量过渡过程的图形
a1=-w(1,:);
a2=-w(2,:);
plot(a1,'r');
hold on;
plot(a2);
legend('a1(n)','a2(n)');
for j=1:N
c(j)=-1.6;
d(j)=0.8;
end
plot(c,'r:');
plot(d,'k:');
title('LMS算法自适应系数a1(n)和a2(n)的过渡过程');
hold off;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -