随机信号分析实验:随机过程的模拟与数字特征

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

-1-实验二随机过程的模拟与数字特征实验目的1.学习利用MATLAB模拟产生随机过程的方法。2.熟悉和掌握特征估计的基本方法及其MATLAB实现。实验原理1.正态分布白噪声序列的产生MATLAB提供了许多产生各种分布白噪声序列的函数,其中产生正态分布白噪声序列的函数为randn。函数:randn用法:x=randn(m,n)功能:产生m×n的标准正态分布随机数矩阵。如果要产生服从),(2N分布的随机序列,则可以由标准正态随机序列产生。如果)1,0(~NX,则),(~NX。2.相关函数估计MATLAB提供了函数xcorr用于自相关函数的估计。函数:xcorr用法:c=xcorr(x,y)c=xcorr(x)c=xcorr(x,y,'opition')c=xcorr(x,'opition')功能:xcorr(x,y)计算)(nX与)(nY的互相关,xcorr(x)计算)(nX的自相关。option选项可以设定为:'biased'有偏估计。'unbiased'无偏估计。'coeff'm=0时的相关函数值归一化为1。'none'不做归一化处理。3.功率谱估计对于平稳随机序列)(nX,如果它的相关函数满足-2-mXmR)((2.1)那么它的功率谱定义为自相关函数)(mRX的傅里叶变换:mjmXXemRS)()((2.2)功率谱表示随机信号频域的统计特性,有着重要的物理意义。我们实际所能得到的随机信号的长度总是有限的,用有限长度的信号所得的功率谱只是真实功率谱的估计,称为谱估计或谱分析。功率谱估计的方法有很多种,这里我们介绍基于傅里叶分析的两种通用谱估计方法。(1)自相关法先求自相关函数的估计)(ˆmRX,然后对自相关函数做傅里叶变换1)1()(ˆ)(ˆNNmjmXXemRS(2.3)其中N表示用于估计样本序列的样本个数。(2)周期图法先对样本序列)(nx做傅里叶变换10)()(NnnjenxX(2.4)其中10Nn,则功率谱估计为2)(1)(ˆXNS(2.5)MATLAB函数periodogram实现了周期图法的功率谱估计。函数:periodogram用法:[Pxx,w]=periodogram(x)[Pxx,w]=periodogram(x,window)[Pxx,w]=periodogram(x,window,nfft)[Pxx,f]=periodogram(x,window,nfft,fs)periodogram(...)功能:实现周期图法的功率谱估计。其中:Pxx为输出的功率谱估计值;f为频率向量;w为归一化的频率向量;-3-window代表窗函数,这种用法种对数据进行了加窗,对数据加窗是为了减少功率谱估计中因为数据截断产生的截断误差,表2.1列出了产生常用窗函数的MATLAB函数表2.1常用窗函数及产生窗函数的MATLAB函数窗函数MATLAB函数窗函数MATLAB函数矩形窗boxcarBlackman窗blackman三角窗triangChebyshev窗chebwinHanning窗hannBartlett窗bartlettHamming窗hammingKaiser窗kaisernfft设定FFT算法的长度;fs表示采样频率;如果不指定输出参数(最后一种用法),则直接会出功率谱估计的波形。实验内容1.按如下模型产生一组随机序列)()1(8.0)(nnxnx其中)(n是均值为1,方差为4的正态分布白噪声序列。估计过程的自相关函数和功率谱。MATLAB代码:注解:w=randn(1001,1);产生一个标准正态分布x(1)=0;fori=2:1001;x(i)=0.8*x(i-1)+1+2*w(i);end;产生题目要求的随机序列plot(x);画出随机序列periodogram(x);画出功率谱c=xcorr(x);求出自相关函数n=-1000:1000;确定自相关函数的图像范围plot(n,c);画出自相关函数图实验结果:-4-随机序列功率谱-5-相关函数实验原理:本题要求按它所给的公式产生一个伪随机序列,我们采用的方法依然是上次课所学的方法,只是在这里我们利用了randm函数,用它来产生高斯白噪声,方程式为)1001,1(21)(randmn这样,我们就可以得到了题目要求均值和方差的高斯白噪声。然后通过一个循环就产生了题目要求的随机序列。接着,我们求出了这个随机序列的功率谱密度,方法是使用了periodogram函数,这个函数的作用就是产生随机序列的功率谱,其具体的使用方法已经在上面的描述中给出了。然后我们画出了它的自相关函数,用的是系统的xcorr函数,并将画出的自相关函数的自变量范围定在了-1000到1000之间,从而得了实验结果中的图。-6-2.设信号为1,,1,0),()2cos(2)2sin()(21Nnnnfnfnx其中05.01f,12.02f,为)(n正态分布白噪声序列,试在256N和1024N点时,分别产生随机序列)(nx,画出)(nx的波形并估计)(nx的相关函数和功率谱。(1)当N=256时MATLAB代码注释:k=256;选取点值为256w=randn(1,k);产生标准高斯分布的高斯白噪声x=randn(1,k);fori=1:(k-1);x(i)=sin(0.1*pi*i)+2*cos(0.24*pi*i)+w(i);end;生成随机序列plot(x);画出随机序列图谱periodogram(x);画出功率谱密度r=xcorr(x);求出自相关函数n=-k+1:k-1;选定自相关函数的横坐标范围plot(n,r);画出自相关函数图谱实验结果-7-随机序列相关函数-8-功率谱密度-9-(2)当N=1024时MATLAB代码:注释:k=1024;选取点值为1024w=randn(1,k);产生标准高斯分布的高斯白噪声x=randn(1,k);fori=1:(k-1);x(i)=sin(0.1*pi*i)+2*cos(0.24*pi*i)+w(i);end;生成随机序列plot(x);画出随机序列图谱periodogram(x);求出功率谱r=xcorr(x);求出自相关函数n=-k+1:k-1;选定自相关函数的横坐标范围plot(n,r);画出自相关函数图谱实验结果:随机序列自相关函数-10-功率谱密度实验原理:-11-本题的要求是在256N和1024N处分别产生随机序列,并分别画出它们的功率谱密度和自相关函数,这里我们看到)(n是均值为0,方差为1的高斯白噪声,所以我们用生成高斯分布的函数randm直接产生高斯白噪声,然后产生所要求的随机序列,并将其画出。接下来我们求出了功率谱密度,用的也是这次试验刚学的periodogram函数,它的作用是实现周期图的功率谱估计,这样我们就估计出了它的功率谱密度。然后再次使用了xcorr函数,实现了对自相关函数的求解。这两次实验我们使用了类似于C语言中的全局变量性质的变量k,这样可以在不改变源程序的情况下,只需要改变k,就可以求出任意N值处的随机序列,并对他们分析,这给我们带来了巨大的方便。结果分析:我们可以比较一下两次实验结果,在不同的N处,我们得到了两组不同的图,在两组图中,我们可以看出,在N较大时,我们的图比较密集,我们将它放大后可以看出,当N较大时,我们得到的结果精度较高,但是,图的整体形状基本不变的,只有一些细小的差别由于N小的时候精度不够而没有体现出来,但是从总体上看,两图还是基本上是一致的,都表示出了这个随机序列的特性。-12-实验心得体会:本次实验的目的是进行特征估计,而实验中我们主要是研究了功率谱密度和自相关函数的估计,我们分别使用了系统中相关的求解函数并画出了他们的图,这样我们就观察到了我们所生成的随机序列,通过本次实验,我们可以清晰地观察到随机序列的功率谱和自相关函数的图形,从而对随机信号这部分内容有了更加深刻的了解与认识,对我随机信号的学习产生了巨大的帮助。

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功