网站大量收购独家精品文档,联系QQ:2885784924

LMSRLS滤波器.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
clear all; clc; m=500;%将输入量赋值 u=0.002;%将输入量赋值 a1=-1.6;a2=0.8; w1(1)=0;w2(1)=0; w1(2)=0;w2(2)=0; n(1)=1;n(2)=2; %%%%%%%% % true sequence x(n) rd=randn(1,m); x(1)=rd(1);x(2)=rd(2); for k=3:m x(k)=rd(k)-a1*x(k-1)-a2*x(k-2); end R=[x(1)*x(1) 0;0 0]; T=0; e(1)=0; W=[0;1]; X=[x(2);x(1)]; e(2)=x(2)-W*X; %%%%%%%%%% for i=3:1:m %权系数迭代m次 R=[x(i-1)*x(i-1) x(i-1)*x(i-2);x(i-1)*x(i-2) x(i-2)*x(i-2)];%列出自相关矩阵 T=1/(T+trace(R)); %求出迹的值,为后续u的判断做准备 if(uT) error(u is larger than 1/t[R]);%判断u的值是否小于迹的倒数 end W=W+2*u*X*e(i-1); %LMS算法的权系数迭代公式 X=[x(i-1) x(i-2)]; %LMS算法中输入信号矢量的递推 e(i)=x(i)-W*X; w1(i)=-W(1); %LMS算法中权系数a1的提取 n(i)=i; end lambda=eig(R);%由R得出特征值 v=[1;1];%给主轴坐标赋初值 for n1=1:50 w(n1)=v(1)*v(1)*lambda(1)*((1-2*u*lambda(1))^(2*n1))+v(2)*v(2)*lambda(2)*((1-2*u*lambda(2))^(2*n1));%学习曲线的迭代公式 end figure(1) plot(w1,r-); %曲线绘图 %title(LMS算法权值收敛情况); xlabel(迭代次数); ylabel(权值变化); grid on; hold on; % m=500;%权系数迭代m次 len=0.98;%%%%遗忘因子 % a1=-1.6;a2=0.8; % w1(1)=1; % w2(1)=1; % w1(2)=1; % w2(2)=2; % n(1)=1; % n(2)=2; % %%%%%%%%%%%输入序列产生%%%%%%%%%%%% % rd=randn(1,m);% 生成白噪声序列 % x(1)=rd(1);x(2)=rd(2);%产生前两个输入序列 % for k=3:m % x(k)=rd(k)-a1*x(k-1)-a2*x(k-2);%产生其余输入序列 % end %%%%%%%%%%%%%%%%%%%%%%%%%%%%% R=[0,0;0,0];%自相关矩阵初值R(-1)=0 W=[w1(2);w2(2)]; %初始权值 P=[0;0]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%% for i=3:1:m X=[x(i-1),x(i-2)]; R= len*R+ X*X;%迭代公式中自相关矩阵的计算 e=x(i)-W*X;%输出信号误差e(n\n-1) W=W+inv(R)*X*e; %RLS算法的权系数迭代公式 w1(i)=-W(1); %RLS算法中权系数a1的提取 w2(i)=-W(2); %RLS算法中权系数a2的提取 n(i)=i; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%% plot(w1,b-); %曲线绘图 title(自适应权系数a1(n)的过渡过程(RLS和LMS算法比较)); xlabel(迭代次数); ylabel(权值变化); legend(LMS,RLS); grid on; hold off; figure(2) plot(x,b-); %曲线绘图 function varargout = LSL(varargin) v=1; m=80; b=length(v); if b==1 eb0(1)=0;eb1(1)=0;eb2(1)=

文档评论(0)

peain + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档