您所在位置:网站首页 > 海量文档

&nbsp>&nbsp计算机&nbsp>&nbspmatlab

功率谱估计性能分析及Matlab仿真.doc19页

本文档一共被下载:次,您可全文免费在线阅读后下载本文档。

下载提示

1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

2.该文档所得收入(下载+内容+预览三)归上传者、原创者。

3.登录后可充值,立即自动返金币,充值渠道很便利

功率谱估计性能分析及Matlab仿真

1 引言

随机信号在时域上是无限长的,在测量样本上也是无穷多的,因此随机信号的能量是无限的,应该用功率信号来描述。然而,功率信号不满足傅里叶变换的狄里克雷绝对可积的条件,因此严格意义上随机信号的傅里叶变换是不存在的。因此,要实现随机信号的频域分析,不能简单从频谱的概念出发进行研究,而是功率谱[1]。

信号的功率谱密度描述随机信号的功率在频域随频率的分布。利用给定的个样本数据估计一个平稳随机信号的功率谱密度叫做谱估计。谱估计方法分为两大类:经典谱估计和现代谱估计。经典功率谱估计如周期图法、自相关法等,其主要缺陷是描述功率谱波动的数字特征方差性能较差,频率分辨率低。方差性能差的原因是无法获得按功率谱密度定义中求均值和求极限的运算[2]。分辨率低的原因是在周期图法中,假定延迟窗以外的自相关函数全为0。这是不符合实际情况的,因而产生了较差的频率分辨率。而现代谱估计的目标都是旨在改善谱估计的分辨率,如自相关法和Burg法等。

2 经典功率谱估计

经典功率谱估计是截取较长的数据链中的一段作为工作区,而工作区之外的数据假设为0,这样就相当将数据加一窗函数,根据截取的个样本数据估计出其功率谱[1]。

2.1 周期图法( Periodogram )

Schuster首先提出周期图法。周期图法是根据各态历经的随机过程功率谱的定义进行的谱估计。

取平稳随机信号的有限个观察值,求出其傅里叶变换

然后进行谱估计

周期图法应用比较广泛,主要是由于它与序列的频谱有直接的对应关系,并且可以采用FFT快速算法来计算。但是,这种方法需要对无限长的平稳随机序列进行截断,相当于对其加矩形窗,使之成为有限长数据。同时,这也意味着对自相关函数加三角窗,使功率谱与窗函数卷积,从而产生频谱泄露,容易使弱信号的主瓣被强信号的旁瓣所淹没,造成频谱的模糊和失真,使得谱分辨率较低[1]。

该方法基于Matlab实现的程序:

clear all;

load test x;

N=4096;

Fn=-0.5:1/N:0.5-1/N;

px=fft(x,N);

pmax=max(px);%归一化

px=px/pmax;

px=10*log10(px+0.000001);

plot(Fn,fftshift(px));grid on;

图1 周期图法

图2 周期图法

说明:

(1) 本报告仿真中所采用的用于功率谱估计的数据文件来自参考文献[3]的test.dat。该数据为128点复序列(图3),由复数噪声加上四个复正弦组成。其归一化频率分别是:。

图3 复序列

(2) 从仿真图可以清晰看到,和不能完全分开,仅在波形的顶部能看出是两个频率分量;此外,当数据长度太大时(图1),谱曲线呈现较大的起伏;当数据长度太小时(图2),谱的分辨率又不好。据此,周期图法不满足一致性估计条件。

2.2 自相关法( BT法)

自相关法的理论基础是维纳—辛钦定理。1958年Blackman和Tukey给出了这一方法的具体实现。

对于平稳随机信号来说,其自相关函数是确定性函数,故其功率谱也是确定的。这样可由平稳随机离散信号的有限个离散值求出自相关函数

然后在内对做傅里叶变换,得到功率谱

该方法基于Matlab实现的程序:

clear all;

load test x;

N=4096;

Fn=-0.5:1/N:0.5-1/N;

Mlag=64;

rx=xcorr(x,Mlag,'unbiased');

px=fft(rx,N);

pmax=max(px);%归一化

px=px/pmax;

px=10*log10(px+0.000001);

plot(Fn,fftshift(px));

grid on;

图4 自相关法不加窗

图5 自相关法不加窗

图6 自相关法使用汉明窗( Hamming )

说明:

(1) 该方法先由序列估计出自相关函数,然后对进行傅里叶变换,便得到的功率谱估计。当延迟与数据长度之比很小时,可以有良好的估计精度。

(2) 图4是用自相关法(BT法)求出的功率谱,没有加窗;图5也是用自相关法(BT法)求出的功率谱,,没有加窗;图6同样是采用自相关法求出的功率谱,,使用了汉明窗。显然,自相关函数的延迟越小,谱变得越平滑。

2.3 Welch法

该方法的基本原理是在对随机序列分段时,使每一段有部分重叠,然后对每一段数据用一个合适的窗函数进行平滑处理,最后对各段谱求平均。这样可得功率谱

其中

这里为窗函数。

该方法基于Matlab实现的程序:

clear all;

load test x;

N=4096;

Fn=-0.5:1/N:0.5-1/N;

xpsd=pwelch(x,hamming(33),16,N,'whole');

mmax=max(xpsd)

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名:

验证码:

匿名?

发表评论

功率谱估计性能分析及matlab仿真,功率谱估计性能分析及Matlab仿真.doc相关推荐

  1. matlab多径信道模型,多径时变信道模型的仿真与性能分析课程设计(样例3)

    <多径时变信道模型的仿真与性能分析课程设计.doc>由会员分享,可免费在线阅读全文,更多与<多径时变信道模型的仿真与性能分析课程设计>相关文档资源请在帮帮文库(www.woc8 ...

  2. matlab 性能分析方法,DPCM,PSK系统的MATLAB实现及性能分析

    DPCM/PSK系统的MATLAB实现及 性能分析 学生姓名:指导老师: 摘要:本课程设计主要是为了进一步理解DPCM编码解码和PSK调制解调原理,并能通过MATLAB系统软件来实现对DPCM编码解码 ...

  3. 解扰matlab,数据序列扰乱与解扰MATLAB实现及性能分析—利用m序列.doc

    数据序列扰乱与解扰MATLAB实现及性能分析-利用m序列 <数据序列的扰乱与解扰的MATLAB实现及性能分析-利用17级m序列> 第 PAGE 1页 共20页 数据序列的扰乱与解扰的MAT ...

  4. dpsk调制解调 matlab,2DPSK调制与解调系统的MATLAB实现及性能分析.doc

    2DPSK调制与解调系统的MATLAB实现及性能分析 2DPSK调制与解调系统的MATLAB实现及性能分析 摘 要:MATLAB集成环境下的Simulink仿真平台,设计一个2DPSK调制与解调系统. ...

  5. 分集接收技术性能MATLAB,基于Matlab分集接受性能仿真 .doc

    西安邮电大学 通信与信息工程学院 实 验 报 告 (2017/2018学年 第1学期) 实验课程名称: 基于Matlab分集接受性能仿真 学生姓名: 刘蕊 专 业: 通信工程 学 号: 0715204 ...

  6. 基于matlab的卷积码,基于MATLAB的卷积码性能仿真比较

    摘要:卷积码是一种性能非常优越的信道编码.卷积码的编码器和译码器都比较容易实现,而且它具有较强的纠错能力.随着纠错编码的理论研究不断深入,卷积码的实际应用也越来越广泛.仿真过程利用MATLAB和Sim ...

  7. 解扰matlab,数据序列的扰乱解扰的MATLAB实现及性能分析—利用17级m序列.doc

    数据序列的扰乱解扰的MATLAB实现及性能分析-利用17级m序列 数据序列的扰乱与解扰的MATLAB实现及性能分析-利用17级m序列 学生姓名: 指导老师: 摘要 本课程设计主要为了进一步数据序列加扰 ...

  8. 解扰matlab,数据序列的扰乱与解扰的MATLAB实现及性能分析——利用19级m序列

    本课程设计主要为了进一步数据序列加扰系统的原理和数据序列解扰系统的原理抗噪声性能的分析.本课程设计仿真平台为MATLAB/Simulink.主要是仿真通信加密系统.对输入随机数据信号与19级m序列异或 ...

  9. 解扰matlab,数据序列的扰乱与解扰的MATLAB实现及性能分析—利用17级m序列

    数据序列的扰乱与解扰的MATLAB实现及 性能分析-利用17级m序列 学生姓名: 指导老师: 摘要 本课程设计主要为了进一步数据序列加扰系统的原理和数据序列解扰系统的原理抗噪声性能的分析.本课程设计仿 ...

  10. matlab仿真关键模型模块,改善simulink仿真的性能和精确度

    一.加速仿真 1.模型包括一个MATLab Fcn模块.当执行一个包含MATLab Fcn模块的模型,Simulink在每一个仿真时间步都要调用MATLab 解释器.所以应尽可能地使用Simulink ...

最新文章

  1. 服务器日志显示乱码,CentosOS 6.5 服务器 控制台输出中文乱码,日志打印中文也乱码...
  2. Envoy源码分析之Dispatcher
  3. java returnaddress_Java虚拟机规范】Java SE 7虚拟机结构
  4. Python用两个骰子玩掷骰子的游戏。本金为10元,当掷出“7”即获得奖金4元,否则扣除1元。编程测算玩到多少手时钱全部输完,及哪一手时钱数最多。
  5. Linux 查看磁盘分区、文件系统、磁盘的使用情况相关的命令和工具介绍
  6. 使用Java快速入门的Apache Thrift
  7. C++应用过程中使用知识点
  8. day03 基本数据类型
  9. Python中对列表list进行定义、增删改查、遍历及与元组的对比
  10. Linux下如何设置和查看环境变量
  11. Debian下使用Doxygen生成定制样式的开发文档
  12. Log4cpp 安装和使用
  13. 可以免费文字识别app有哪些?有这3款app就能够实现提取文字自由
  14. 数学建模番外篇1:PPT绘制3D图形
  15. Python爬取小猪短租全网数据
  16. 高德地图——步行导航
  17. 鸟哥的Linux笔记-------磁盘与文件系统
  18. 【数据结构算法】小结
  19. 看守所里的信息化故事:刘所家的新地毯
  20. Android.bp 添加宏开关

热门文章

  1. Exchange 日常管理之三设置邮件转发
  2. [转载]windows7中没用boot.ini文件而是改用BCDEDIT来配置了
  3. 列表刷新+SBJSON+HTTP
  4. asp.net2.0中通过CS代码来动态的指定aspx页面中head中的信息
  5. android获取毫秒,Android 日期转为为毫秒,毫秒转化为日期,获取当期日期年、月、日...
  6. 【VC基础】2、物料主档与BOM结构
  7. 【温故知新】CSS学习笔记(盒子水平居中方法)
  8. 通用分销渠道和通用产品组的解析
  9. 究竟是“二O一六年”还是“二零一六年”?嘴上会说可你会写吗?
  10. 物料凭证不产生会计凭证的几种情况