LMS与RLS算法程序

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

%LMS算法程序

clear

N=2000;Fs=500

n=0:N-1;t=n/Fs;

s=5*sin(2*pi*t);%标准正弦信号

xn=randn(1,length(t));%与时间t等长随机信号 x=s+xn;%加噪信号

w=[0,0];%初始2阶加权系数

u=0.00026;%最佳参数

for i=1:N-1;%自适应算法

y(i+1)=xn(i:i+1)*w';

e(i+1)=x(i+1)-y(i+1);

w=w+2*u*e(i+1)*xn(i:i+1);

end;

%画图程序

subplot(4,1,1)

plot(t,s);

title('输入周期信号');

xlabel('t');

ylabel('s(t)');

subplot(4,1,2)

plot(t,xn);

title('噪声信号');

xlabel('t');

ylabel('xn(t)');

subplot(4,1,3)

plot(t,x);

title('加噪信号');

xlabel('t');

ylabel('x(t)');

subplot(4,1,4)

plot(t,e);

title('自适应滤波器输出结果');

xlabel('t');

ylabel('e(t)');

%RLS算法程序

clear

N=2000;Fs=500;

n=0:N-1;t=n/Fs;

xs=( sin(2*pi*t))';

subplot(4,1,1);

plot(t,xs);grid;

ylabel('幅度');

title('\it{输入周期性信号}');

xn=( 0.6*randn(1,length(t)))'; subplot(4,1,2);

plot(t,xn);grid;

ylabel('幅度');

xlabel('时间');

title('\it{随机噪声信号}');

d=xs;

x=xs+xn;

M=32;

w=(zeros(1,M))';

p=0.001*eye(M,M);

a=0.98;

for n=M:N;

x1=x(n:-1:n-M+1);

pi_ = x1' * p ;%互相关函数

k = a + pi_ * x1 ;

K = pi_'/k;%增益矢量

e(n)=d(n)-w'*x1;

w=w+K*conj(e(n));

y(n)=w'*x1;

end

subplot(4,1,3);

plot(t,x);grid;

axis([0 4 -2 2]);

ylabel('幅度');

xlabel('时间');

title('\it{加入噪声信号}');

subplot(4,1,4);

plot(t,y);grid;

ylabel('幅度');

xlabel('时间');

axis([0 4 -1 1]);

title('\it{自适应滤波器输出信号}');

相关文档
最新文档