对Steering Vector的一点理解
对Beamforming中Steering Vector的理解
在学习波束成形的过程中,对于Steering Vector一直没有一个明确的概念,今天进行一些总结,供以后参考。
首先,我们从matlab给出的Steering Vector文档开始入门,入门链接:
参考地址:https://ww2.mathworks.cn/help/phased/ref/steervec.html?s_tid=srchtitle
elementPos = (0:.1:.4);
c = physconst('LightSpeed');
fc = 1e9;
lam = c/fc;
ang = [45;0];
sv = steervec(elementPos/lam,ang)
下面进行详细的分析:给出的环境设置很简单,天线元素的位置为[0,0.1,0.2,0.3,0.4],入射平面波频率为1GHz,到达角度为方位角45度和仰角0度。最终得到的Steering Vector使用steervec函数给出。最终的到的结果为:
sv = 5×1 complex1.0000 + 0.0000i0.0887 + 0.9961i-0.9843 + 0.1767i-0.2633 - 0.9647i0.9376 - 0.3478i
那么整个的计算过程是什么样的呢?首先,我们可以借助一张图来理解,图来源于B站,链接如下:
https://www.bilibili.com/video/BV1kb411K7r9 很好的一篇科普视频,英语无字幕。
从图中我们可以看出,平面波到达不同的天线是存在时延的,在上图中,平面波到达右边的天线没有时延,那么可以根据平面波的入射方向进行作图,那么 d s i n ( θ ) dsin(\theta) dsin(θ)代表到达的时延“长度“,由于入射平面波以光速前进,那么可以得到时延差为 τ \tau τ,那么这期间的相位差呢?
此时需要计算时延差相对于入射平面波的周期,即 τ ∗ f \tau*f τ∗f,此时可以得到延时的弧度,需要的话再计算成角度即可。
此时得到弧度之后,基本可以完成计算了,最后一步即使用欧拉公式 e i x = cos x + i sin x e^{ix}=\cos x+i\sin x eix=cosx+isinx,将角度带入即可,注意此时的模值均为1。
使用相同的步骤,即可重新计算matlab中的示例。
以上的内容是针对天线的,那么可以进一步考虑,假设接收端收到了来自天线1和天线2的信号为 r 1 ( t ) r_1(t) r1(t)和 r 2 ( t ) r_2(t) r2(t),两个天线发送相同的信号,但是与接收端的距离不同,假设天线1与天线2的到达信号之间存在时延 τ \tau τ
对Steering Vector的一点理解相关推荐
- 谈谈对APC的一点理解
谈谈对APC的一点理解 异步过程调用(APCs) 是NT异步处理体系结构中的一个基础部分,理解了它,对于了解NT怎样操作和执行几个核心的系统操作很有帮助. 1) APCs允许用户程序和系统元件在一个进 ...
- python 3列表推导式的的一点理解!
python 3列表推导式的的一点理解! Python的列表推导式对于新手来说一般都难以理解,简单看个例子: [x * x for x in range(1,100)] 上面是一个很简单的列表推导式, ...
- TSYS2.0对动态碎片的一点理解
最近好多人对tsys很感兴趣,其实大家不知道的是tsys的asp版本早就已经停止开发了,为了不想让如此优秀的东西被埋没所以我在tsys的asp版 本的基础上使用PHP重新开发了一个功能更强的cms,名 ...
- 对事件循环的一点理解
最近工作需要学习了解webworker-threads以应对Javascript多线程处理CPU密集型的可能性:参考文档JavaScript多线程之二 Node.js中的Web Worker; 以下是 ...
- Hyperledger Fabric 网络环境的一点理解
Hyperledger Fabric 开发链码,一般都是测试网络开发,然后部署到生产网络. 下面介绍测试网络.生产网络的一点理解. 1 测试网络 使用cryptogen等工具建立测试网络,开发环境使用 ...
- Tecplot中用excel表格绘制xy图的一点理解
原文地址:Tecplot中用excel表格绘制xy图的一点理解作者:又见谷雨 在画图的时候遇到一些问题,比如想用excel中的数据画xy图,那么应该怎样加载这些数据呢.在网上查找了下,也没有详细的说法 ...
- 2.深入一点理解C源程序的编译过程
2.深入一点理解C源程序的编译过程 本文章的大多数灵感及知识来源于南京大学的计算机系统基础教材,如果希望更加深入地对相关知识做进一步了解,可以移步上述相关资源.在网上可以轻易获得上述资源,mooc也有 ...
- negroni包和mux包的一点理解
codegangsta/negroni包和gorilla/mux包的一点理解 Negroni是一个http.Handle,因为他实现了 func (n *Negroni) ServeHTTP(rw h ...
- 对PCIE设备访问及其配置空间的一点理解
讲讲对PCIE总线协议的一点理解吧.感觉每一年又会多一点理解,但不懂得地方仍很多. PCI总线是拓扑结构,PCI总线从0开始,不超过256(但一般不会一层一层挂太多).Device不超过32,Func ...
最新文章
- 阿里巴巴首部记录片问世:看哭所有创业者!
- 手机QQ重构移动社交市场
- javascript 语法
- 【iOS学习笔记】IOS开发中设置applicationIconBadgeNumber和消息推送
- python正则表达式花括号_python正则表达式(+ {})(二)
- LeetCode198——house robber(不懂dp)
- springboot---mybits整合
- jps命令:查看Java进程等详细信息
- 数组深拷贝_JavaScript之深浅拷贝
- vscode创建代码片段
- MySQL8.0 - 新特性 - 临时表改进 1
- 梦幻西游qq表情包YR
- tcp 粘包是怎么产生的?
- 搭建安装kubesphere平台——在 Linux 上以 All-in-One 模式,附安装步骤—{全篇踩坑排坑记} kubernetes:k8s
- php 的绝对引用,excel单元格引用分为哪三种
- 女版乔布斯的覆灭,这是今年我听过最唏嘘的真人故事
- VScode输入感叹号无法生成HTML模板
- reverse-for-the-holy-grail-350 攻防世界
- linux设置spi时钟频率,Linux下S3C2416的SPI设置问题,CLK和MOSI都没有输出,求助
- Android结束进程的几种方法