在自适应天线课上刚刚学了LMS自适应阵,关于LMS的具体介绍,直接看wiki里的吧,解释的比书上简明:传送门:https://en.wikipedia.org/wiki/Least_mean_squares_filter

话不多说,先贴代码:


先来看一下书上的例题,对于一个二元的LMS阵,在不考虑干扰信号的情况下即(Ai=0)时,绘出其电压方向图:

1⃣️当来波方向为 theta_d=  50 度时,其结果为:

当来波方向为 theta_d=-10 度时,其结果为:

和书上P18页的结果图比较,目前是正确的;

2⃣️对于包含干扰信号时,即Ai不为0时,也来检验一波:统一来波方向为 theta_d=50度,干扰方向为 theta_i=90度。输入信噪比为1,即 Ad = sigma;

当输入干噪比为0时 ,此时 Ai = 0,结果和情况1中第一幅图相同,这里就不再赘述;

当输入干噪比为1时 ,此时 Ai = sigma = Ad,此时结果为:

当输入干噪比为2时,即 Ai = 1.414 sigma = 1.414 Ad,结果为:

当输入干噪比为10时,即 Ai = 3.16 sigma = 3.16 Ad时,结果为:

当输入干噪比为100时,即 Ai = 10 sigma = 10 Ad 时,结果为:

和书上P25页结果对比也很正常。(写出页码就是给某个臭弟弟看的)

在阵元数量较少时,由于自由度较少,因此效果不佳。增加阵元数量N,当N为8时,设置 来波方向 theta_d = 90度,干扰方向 theta_i = 30度,信噪比为1,干噪比为100,结果如下:

但是当阵元数量变为10时,效果反而很诡异,干扰方向变成了最大值,很奇怪:

希望有大神解惑,我也自己想想,想清楚了再来更新~

谢谢大家

LMS自适应天线阵列设计 MATLAB的更多相关文章

  1. 切比雪夫低副瓣阵列设计 MATLAB

    相控阵天线中,直线阵列作为重要的一种,有着极为广泛的应用.切比雪夫低副瓣阵列设计是一种典型的设计方法. 切比雪夫方法主要是实现低副瓣.窄波束: 其产生的核心如下: 我的理解:因为能量守恒,所有副瓣都一 ...

  2. 低副瓣阵列天线综合2 matlab HFSS

    接着继续研究阵列天线设计,得到了电流幅度分布或功率分布之后,就可以进行阵列设计或馈电网络设计了,之前利用HFSS仿真过单列的串馈天线,后面会继续复习熟悉一下,本次我找了一篇硕士论文利用威尔金森功分器来 ...

  3. MATLAB ' : ' 官方解释

    1.冒号的作用 产生矢量,阵列标注以及for-loop迭代子 2.描述 冒号是MATLAB中最有用的操作符之一.它使用下述规则来创建有规则的空间矢量: j:k is the same as [j,j+ ...

  4. scorm标准的LMS在客户端的运行机制

    1)运行SCORM APIAdapter.   2)调用API初始化函数.   3)加载课件SCO初始化数据.   4)获取Data Model中的用户ID和用户姓名.   5)获取Data Mode ...

  5. ISP PIPLINE (四) Demosaic

    what is the Demosaic? CMOS/CCD在成像时,CFA(color filter array),CFA过滤不同频段的光,因此,Sensor的输出的RAW数据信号包含了3个通道的信 ...

  6. 转载论文关于fir滤波器的fpga实现

    摘 要 本文讨论的FIR滤波器因其具有严格的线性相位特性而得到广泛的应用.在工程实践中,往往要求信号处理具有实时性和灵活性,本论文研究FIR的FPGA解决方案正体现了电子系统的微型化和单片化. 本论文 ...

  7. Scorm 1.2 开发文档

    原文出处 电华教育研究杂志2010年第7期<SCORM标准学习跟踪机制的研究与实现> http://blog.sina.com.cn/s/blog_964ec55001014nl0.htm ...

  8. XFdtd 7.3.2发布增强生物电磁学中的核磁共振功能

    XFdtd 日前发布7.3.2版,该版本主要针对生物电磁学中的核磁共振(MR)进行了功能增强,另外,也对软件的用户体验和计算性能进行了部分更新. XFdtd 是基于时域有限差分(FDTD)方法的全波三 ...

  9. 关于VMAX中存储资源池(SRP)

    Storage Resource Pool中的相关元素 SRP由一个或多个数据池组成,这些数据池包含了预配置的数据(或TDAT)设备,可为创建和呈现给主机与应用程序的精简设备(TDEVS) 提供存储. ...

随机推荐

  1. java编写基于netty的RPC框架

    一 简单概念 RPC:(Remote Procedure Call),远程调用过程,是通过网络调用远程计算机的进程中某个方法,从而获取到想要的数据,过程如同调用本地的方法一样. 阻塞IO:当阻塞I/O ...

  2. Linux下部署Jenkins

    前提:已部署好JAVA 1.下载Jenkins库并添加到yum库: wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redha ...

  3. javascript单线程,异步与执行机制

    js的单线程模型与游览器的进程/线程息息相关,在了解js单线程与异步的时候,建议先看看这篇文章 为什么是单线程 由于js是可操作dom的,如果js是多线程,在多线程的交互下,处于界面中的dom节点就可 ...

  4. SpringCloud之Zuul过滤器实现登录鉴权实战(十一)

    自定义zuul过滤器实现登录鉴权实战 1.新建filter包 2.新建类继承ZuulFilter,重写方法 3.在类顶部加注解@Comment让spring扫描 /** * @author WGR * ...

  5. LeetCode刷题总结-数组篇(上)

    数组是算法中最常用的一种数据结构,也是面试中最常考的考点.在LeetCode题库中,标记为数组类型的习题到目前为止,已累计到了202题.然而,这202道习题并不是每道题只标记为数组一个考点,大部分习题 ...

  6. Java中的substring()用法

    String str = "Hello Java World!"; Method1:  substring(int beginIndex) 返回从起始位置(beginIndex)至 ...

  7. 阿里巴巴 Kubernetes 应用管理实践中的经验与教训

    作者 | 孙健波(阿里巴巴技术专家).赵钰莹 导读:云原生时代,Kubernetes 的重要性日益凸显.然而,大多数互联网公司在 Kubernetes 上的探索并非想象中顺利,Kubernetes 自 ...

  8. 关于dt分组、计数、排序的实例

    #region table去重复求和 var query = dt.Rows.Cast<DataRow>() .OrderByDescending(n => n["OPER ...

  9. 完美解决Python与anaconda之间的冲突问题

    anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项.因为包含了大量的科学包,Anaconda 的下载文件比较大(约 515 MB),如果 ...

  10. 前端开发之VSCode扩展

    1.Chinese (Simplified) Language Pack for Visual Studio Code——中文语言包 2.Beautify——代码格式化工具 3.HTML Snippe ...