实验二0914彭洋生.docx
- 文档编号:24688716
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:24
- 大小:125.35KB
实验二0914彭洋生.docx
《实验二0914彭洋生.docx》由会员分享,可在线阅读,更多相关《实验二0914彭洋生.docx(24页珍藏版)》请在冰豆网上搜索。
实验二0914彭洋生
汕头大学实验报告
学院:
工学院系:
电子系专业:
通信工程年级:
2009成绩:
姓名:
彭洋生学号:
09142029实验时间:
2011.6.11指导教师签字:
_______________________________________________________________________________
实验二.典型时间序列的功率谱估计
一、实验目的和要求
了解有限长数据对谱估计的影响,重点研究周期图法和改进型周期图法的谱估计方法,并分析噪声对随机信号谱估计结果的影响。
使学生了解随机信号的功率谱分析与主要估计方法。
二、实验内容及实验数据记录与分析
第一题AR
(2)模型为:
x(n)的理论均值为:
0,理论方差为:
Rx(0)=15.77
1)产生指定AR(P)模型的典型时间序列X(n);分别画出X(n)的500、2000点和10000个观测点的波形,并估计他们的均值与方差;
M=0.0516,SIGMA2=13.5471
所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
plot(x,’k’)
title('500点AR
(2)随机序列');
M=mean(x)
SIGMA2=var(x)
M=-0.0236,SIGMA2=14.2136
所用MATLAB程序为:
)
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,2000);
x=filter(a,b,noise);
plot(x,’k’)
title('2000点AR
(2)随机序列');
M=mean(x)
SIGMA2=var(x)
M=0.0140,SIGMA2=14.5734
所用MATLAB程序为:
)
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,10000);
x=filter(a,b,noise);
plot(x,’k’)
title('10000点AR
(2)随机序列');
M=mean(x)
SIGMA2=var(x)
结果分析:
点数
均值
方差
500
0.0516
13.5471
2000
-0.0236
14.2136
10000
0.0140
14.5734
从实验结果可以看出,随着随机序列所取点数的增多,序列的均值与方差越接近于理论值0和15.77
2)求出该AR
(2)模型理论功率谱,在
上等距选取K=500个点,画出其理论功率谱曲线
所用MATLAB程序为:
fs=1000;
w=0:
pi/500:
pi;
G=4*(abs(1./(1+0.9*exp(-j*w)+0.1*exp(-2*j*w))).^2);
G=G/max(G);
f=w*fs/(2*pi);
plot(f,G,'g')
title('AR
(2)模型理论功率谱密度曲线')
xlabel('f')
ylabel('幅值')
3)估计500、2000点和10000个观测点的典型时间序列X(n)的自相关函数与功率谱,并与理论的功率谱曲线比较
所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
R=xcorr(x,'coeff');
plot(R,’r’)
title('500点AR
(2)模型自相关函数估计')
所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,2000);
x=filter(a,b,noise);
R=xcorr(x,'coeff');
plot(R,’r’)
title('2000点AR
(2)模型自相关函数估计')
所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,10000);
x=filter(a,b,noise);
R=xcorr(x,'coeff');
plot(R,’r’)
title('10000点AR
(2)模型自相关函数估计')
不加窗所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
periodogram(x,[],512,1000);
title(‘500点AR
(2)不加窗功率谱估计’);
加汉宁窗所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
window=hann(500);
periodogram(x,window,512,1000);
title(‘500点AR
(2)加汉宁窗功率谱估计’);
加海明窗所用MATLAB程序为:
a=1;
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
window=hamming(500);
periodogram(x,window,512,1000);
title(‘500点AR
(2)加海明窗功率谱估计’);
2000点与10000点AR
(2)时间序列的不加窗,加汉宁窗,加海明窗的功率谱估计MATLAB程序与500点相似,只需改变参数,下面只给出2000点与10000点的功率谱估计图形
2000点图形如下:
10000点图形如下:
结果分析:
从程序的运行结果可以看出加汉宁窗和海明窗的功率谱估计较没有加窗的功率谱估计更准;随着估计点数的增加,估计功率谱也更接近于理论功率谱
第二题:
不同信噪比下的功率谱估计与比较。
对于给定的时间序列Y(n),设计2种不同白噪声W(n),分别画出10000点的波形Y(n)+W(n),估计功率谱,比较和分析估计结果;给定时间序列
该时间序列信号离散化采样频率为1KHz。
当W(n)为N(0,1)的高斯白噪声时
所用MATLAB程序为:
n=0:
1:
9999;
y=sin(0.3*pi*n)+cos(0.6*pi*n);
w=randn(10000,1);
x=y+w;
plot(x);
title(‘10000点Y(N)+W(N)随即序列’)
当W(n)为0-1均匀分布的白噪声时
所用MATLAB程序为:
n=0:
1:
9999;
y=sin(0.3*pi*n)+cos(0.6*pi*n);
w=rand(10000,1);
x=y+w;
plot(x);
title(‘10000点Y(N)+W(N)随即序列’)
当W(n)为N(0,1)的高斯白噪声时的谱估计结果
所用MATLAB程序为:
n=0:
1:
9999;
y=sin(0.3*pi*n)+cos(0.6*pi*n);
w=randn(10000,1);
x=y+w;
window=hann(10000);
periodogram(x,window,512,1000);
title(‘含高斯白噪声的时间序列谱估计(10000点)’)
当W(n)为0-1均匀分布的白噪声时的谱估计结果
所用MATLAB程序为:
n=0:
1:
9999;
y=sin(0.3*pi*n)+cos(0.6*pi*n);
w=rand(10000,1);
x=y+w;
window=hann(10000);
periodogram(x,window,512,1000);
title(‘含均匀分布白噪声的时间序列谱估计(10000点)’)
结果分析:
从实验结果可以看出来:
当信噪比越大时,随机序列的谱估计结果更加精确
第三题:
设计2种不同特性的线性滤波器,考察分布为N(0,4)的高斯白噪声通过不同线性滤波器后的波形变化情况,画出两种滤波器下输出前后的波形及系统的功率谱估计,并对波形变化情况加以讨论。
所用MATLAB程序为:
n=0:
1:
499;
w=2.*randn(500,1);
plot(w);
xlabel('n')
ylabel('W(n)')
title(‘500点N(0,4)高斯白噪声W(N)’)
第一种滤波器:
二阶MA模型滤波器(低通滤波器)
所用MATLAB程序为:
a=[18.88.8];
noise=normrnd(0,2,1,500);
x=filter(a,1,noise);
plot(x,'m')
title(‘高斯白噪声W(N)通过MA滤波器的输出序列’)
所用MATLAB程序为:
a=[18.88.8];
noise=normrnd(0,2,1,500);
x=filter(a,1,noise);
window=hann(500);
periodogram(x,window,512,1000);
title(‘500点MA滤波器输出序列汉宁周期图功率谱估计’)
第二种滤波器:
二阶ARMA模型滤波器(高通滤波器)
所用MATLAB程序为:
a=[1-0.8-0.8];
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
plot(x,'m')
title(‘高斯白噪声W(N)通过ARMA滤波器的输出序列’)
所用MATLAB程序为:
a=[1-0.8-0.8];
b=[10.90.1];
noise=normrnd(0,2,1,500);
x=filter(a,b,noise);
window=hann(500);
periodogram(x,window,512,1000);
title(‘500点ARMA滤波器输出序列汉宁周期图功率谱估计’)
三、实验体会和收获
通过这次MATLAB仿真实验,我掌握了AR,MA,ARMA典型时间序列的递归产生法和滤波器产生法,并对不同点数下的时间序列进行自相关函数估计和功率谱估计,重点掌握了功率谱估计中的周期图法和改进型的周期图法,包括汉宁周期图法,海明周期图法等,体会到加窗函数(包括汉宁窗,海明窗,三角窗,高斯窗,巴特利特窗等)在功率谱估计时所起的减少估计误差的功能,学会对理论功率谱的绘制及其归一化。
通过不同信噪比的时间序列谱估计结果,验证了不仅越高的点数对谱估计结果越精确,也证实了信噪比越高对谱估计结果影响越小。
最后在本实验中,我也重点研究了AR,MA,ARMA三种类型滤波器的性能并对由其构成的不同特性滤波器进行仿真分析,掌握了低通,高通,带通,带阻滤波器的设计方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 0914 彭洋生