欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    LMS波束形成代码(共11页).doc

    • 资源ID:13937629       资源大小:23KB        全文页数:11页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    LMS波束形成代码(共11页).doc

    精选优质文档-倾情为你奉上LMS波束形成代码(matlab)LMS算法的仿真程序:%lms 算法clear allclose allhold off%系统信道权数sysorder = 5 ;%抽头数N=1000;%总采样次数inp = randn(N,1);%产生高斯随机系列n = randn(N,1);b,a = butter(2,0.25);Gz = tf(b,a,-1);%逆变换函数h= 0.0976;0.2873;0.3360;0.2210;0.0964;%信道特性向量y = lsim(Gz,inp);%加入噪声n = n * std(y)/(10*std(n);%噪声信号d = y + n;%期望输出信号totallength=size(d,1);%步长N=60 ; %60节点作为训练序列%算法的开始w = zeros ( sysorder , 1 ) ;%初始化for n = sysorder : Nu = inp(n:-1:n-sysorder+1) ;% u的矩阵y(n)= w' * u;%系统输出e(n) = d(n) - y(n) ;%误差if n < 20mu=0.32;elsemu=0.15;endw = w + mu * u * e(n) ;%迭代方程end%检验结果for n = N+1 : totallengthu = inp(n:-1:n-sysorder+1) ;y(n) = w' * u ;e(n) = d(n) - y(n) ;%误差endhold onplot(d)plot(y,'r');title('系统输出') ;xlabel('样本')ylabel('实际输出')figuresemilogy(abs(e) ;% e的绝对值坐标title('误差曲线') ;xlabel('样本')ylabel('误差矢量')figure%作图plot(h, 'k+')hold onplot(w, 'r*')legend('实际权矢量','估计权矢量')title('比较实际和估计权矢量') ;axis(0 6 0.05 0.35)2.NLMS算法的仿真程序:%lms 算法clear allclose allhold off%系统信道权数sysorder = 5 ;%抽头数N=1000;%总采样次数inp = randn(N,1);%产生高斯随机系列n = randn(N,1);b,a = butter(2,0.25);Gz = tf(b,a,-1);%逆变换函数h= 0.0976;0.2873;0.3360;0.2210;0.0964;%信道特性向量y = lsim(Gz,inp);%加入噪声n = n * std(y)/(10*std(n);%噪声信号d = y + n;%期望输出信号totallength=size(d,1);%步长N=60 ; %60节点作为训练序列%算法的开始w = zeros ( sysorder , 1 ) ;%初始化for n = sysorder : Nu = inp(n:-1:n-sysorder+1) ;% u的矩阵y(n)= w' * u;%系统输出r(n)=u'*u;%自相关矩阵e(n) = d(n) - y(n) ;%误差fai=.0001;%修正参数,为防止u'*u过小导致步长值太大而设置的if n < 20mu=0.32;elsemu=0.15;endw = w + mu * u * e(n)/(r(n)+fai) ;%迭代方程end%检验结果for n = N+1 : totallengthu = inp(n:-1:n-sysorder+1) ;y(n) = w' * u ;e(n) = d(n) - y(n) ;%误差endhold onplot(d)plot(y,'r');title('系统输出') ;xlabel('样本')ylabel('实际输出')figuresemilogy(abs(e) ;% e的绝对值坐标title('误差曲线') ;xlabel('样本')ylabel('误差矢量')figure%作图plot(h, 'k+')hold onplot(w, 'r*')legend('实际权矢量','估计权矢量')title('比较实际和估计权矢量') ;axis(0 6 0.05 0.35)3.RLS算法的仿真程序:% RLS算法randn('seed', 0) ;rand('seed', 0) ;NoOfData = 8000 ; % Set no of data points used for trainingOrder = 32 ; % 自适应滤波权数Lambda = 0.98 ; % 遗忘因子Delta = 0.001 ; % 相关矩阵R的初始化x = randn(NoOfData, 1) ;%高斯随机系列h = rand(Order, 1) ; % 系统随机抽样d = filter(h, 1, x) ; % 期望输出% RLS算法的初始化P = Delta * eye ( Order, Order ) ;%相关矩阵w = zeros ( Order, 1 ) ;%滤波系数矢量的初始化% RLS Adaptationfor n = Order : NoOfData ;u = x(n:-1:n-Order+1) ;%延时函数pi_ = u' * P ;%互相关函数k = Lambda + pi_ * u ;K = pi_'/k;%增益矢量e(n) = d(n) - w' * u ;%误差函数w = w + K * e(n) ;%递归公式PPrime = K * pi_ ;P = ( P - PPrime ) / Lambda ;%误差相关矩阵w_err(n) = norm(h - w) ;%真实估计误差end ;% 作图表示结果figure ;plot(20*log10(abs(e) ;%| e |的误差曲线title('学习曲线') ;xlabel('迭代次数') ;ylabel('输出误差估计') ;figure ;semilogy(w_err) ;%作实际估计误差图title('矢量估计误差') ;xlabel('迭代次数') ;ylabel('误差权矢量') ;4.自适应均衡器的仿真程序:% Illustration of the conventional RLS algorithmclose all;W=2.9;Nexp=10;N=2000;Nmc=1; % Number of ensemble realizationsM=11;%抽头系数lambda=0.99;%遗忘因子varv=0.001;%噪声方差h=zeros(3,1);%h的初始化er=zeros(N,Nmc);%er的初始化h(1)=0.5*(1+cos(2*pi*(1-2)/W);h(2)=0.5*(1+cos(2*pi*(2-2)/W);h(3)=0.5*(1+cos(2*pi*(3-2)/W);% 学习曲线hc=0 h(1) h(2) h(3)'n0=7;t=(1:N)'for i=1:Nmcy=sign(rand(N,1)-0.5);%输入信号v=sqrt(varv)*randn(N,1);%噪声信号x=filter(hc,1,y)+v;%信号混合x=zeros(M-1,1);x;%x矩阵yd=zeros(N+M-1,1); %延迟信号初始化e=yd;yd(n0+M-1:N+M-1)=y(1:N-n0+1);% CRLS 算法% Initializationlambda=0.98;P=(10-3)*eye(M,M);c=zeros(M,1);g=c;glambda=g;% 迭代范围for n=M:M+N-1xn=flipud(x(n-M+1:n);glambda=P*xn;alphal=lambda+conj(glambda')*xn;g=glambda/lambda;a(n)=1-conj(g')*xn;P=(P-g*conj(glambda')/lambda;P=(P+P')/2;e(n)=yd(n)-conj(c')*xn;c=c+g*conj(e(n);endendeplot=e(M:M+N-1).2;subplot(2,1,1), plot(t,abs(eplot)ylabel('|e(n)|2');xlabel('n');subplot(2,1,2), plot(t,a(M:M+N-1);ylabel('alpha(n)');xlabel('n');5.自适应陷波器的仿真程序:N=400; %总采样长度t=0:N-1; %时间的变化范围s=sin(2*pi*t/20); %输入信号A=0.5; %干扰信号的幅值fai=pi/3;%干扰信号的相移n=A*cos(2*pi*t/10+fai);%干扰信号x=s+n;%信号混合subplot(2,2,1);%作第一子图plot(t,s);subplot(2,2,2); %作第二子图plot(t,x);x1=cos(2*pi*t/10);x2=sin(2*pi*t/10);%初始化w1=0.1;w2=0.1;e=zeros(1,N);y=0;u=0.05;%迭代步长for i=1:Ny=w1*x1(i)+w2*x2(i);e(i)=x(i)-y;%误差信号w1=w1+u*e(i)*x1(i);%迭代方程w2=w2+u*e(i)*x2(i);%迭代方程endsubplot(2,2,3); %作第三子图plot(t,e);subplot(2,2,4); %作第四子图plot(t,s-e); 专心-专注-专业

    注意事项

    本文(LMS波束形成代码(共11页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开