搜档网
当前位置:搜档网 › 随机信号分析大作业教材

随机信号分析大作业教材

随机信号分析大作业教材
随机信号分析大作业教材

随机信号分析实验报告

信息25班

2120502123

赵梦然

作业题三:

利用Matlab 产生一个具有零均值、单位方差的的高斯白噪声随机序列X(n),并通过一脉冲响应为

(0.8)(0)0

n n h n else =≥??? 的线性滤波器。

(1) 产生一个具有零均值、单位方差的的高斯白噪声随机序列X(n),检验其一维概率密度函

数是否与理论相符。

(2) 绘出输入输出信号的均值、方差、自相关函数及功率谱密度的图形,讨论输出信号服从

何种分布。

(3) 试产生在[-1,+1]区间均匀分布的白噪声序列,并将其替换高斯白噪声通过上述系统。

画出此时的输出图形,并观察讨论输出信号服从何种分布。

作业要求

(1) 用MATLAB 编写程序。最终报告中附代码及实验结果截图。

(2) 实验报告中必须有对实验结果的分析讨论。

提示:

(1) 可直接使用matlab 中已有函数产生高斯白噪声随机序列。可使用hist 函数画出序列的

直方图,并与标准高斯分布的概率密度函数做对比。

(2) 为便于卷积操作,当N 很大时,可近似认为h(N)=0。卷积使用matlab 自带的conv 函

数。

(3) 分析均值、方差等时,均可使用matlab 现有函数。功率谱密度和自相关函数可通过傅

里叶变换相互获得。傅里叶变换使用matlab 自带的fft 函数。

(4) 作图使用plot 函数。

一、作业分析:

本题主要考察的是加性高斯白噪声相关问题,因此构造一个高斯白噪声十分重要,故在本题中使用randn函数随机生成一个个符合高斯分布的数据,并由此构成高斯白噪声;而且由于白噪声是无法完全表示的,故此根据噪声长度远大于信号长度时可视为高斯白噪声,构造了一个长度为2000的高斯白噪声来进行试验。

二、作业解答:

(1)matlab程序为:

x-1000:1:1000;

k=1*randn(1,length(x));% 生成零均值单位方差的高斯白噪声。

[f,xi]=ksdensity(x);%利用ksdensity函数估计样本的概率密度。

subplot(1,2,1);

plot(x,k);

subplot(1,2,2);

plot(xi,f);

实验结果为:

ksdensity(x)函数可以通过采样近似的估计样本的概率密度,(1)中估计的概率密度如上图右边所示,易发现其基本符合高斯分布,与实验开始时设定的生成高斯白噪声是相符合的。

(2)matlab程序为:

x=-1000:1:1000;

k=1*randn(1,length(x));% 生成零均值单位方差的高斯白噪声。

a=mean(k);%求均值

b=var(k);%求方差

[m1,m2]=xcorr(k,'unbiased');%求自相关函数

subplot(4,1,1);

plot(x,a,'.');

title('均值');

subplot(4,1,2);

plot(x,b,'.');

title('方差');

subplot(4,1,3);

plot(m2,m1);

title('自相关函数');

subplot(4,1,4);

periodogram(k,ones(numel(k),1),2000,0.0005)%求功率谱密度

以上为求输入信号的均值、方差、自相关函数、功率谱密度。

结果分析:

从图上可以看出均值为0,方差为1,自相关函数在t=0处有一个冲击,功率谱密度基本在30dB处上下波动。根据数据,可以判断出输入信号服从均值为0,方差为1的高斯分布。

matlab程序:

x=-1000:1:1000;

k=1*randn(1,length(x));%高斯白噪声

x=-200:1:200;

h=0.*(x<0)+power(0.8,x).*(x>=0);%滤波器的时域形式

y=conv(k,h);%输出信号,两个信号进行卷积

a=mean(y);%求均值

b=var(y);%求方差

[m1,m2]=xcorr(y,'unbiased');%求自相关函数

subplot(4,1,1);

plot(x,a,'.');

title('均值');

subplot(4,1,2);

plot(x,b,'.');

title('方差');

subplot(4,1,3);

plot(m2,m1);

title('自相关函数');

subplot(4,1,4);

periodogram(y,ones(numel(y),1),2000,0.0005)%求功率谱密度

以上为求输出信号的均值、方差、自相关函数、功率谱密度。

实验结果:

结果分析:

从图上可以看出均值为0,方差为2.5,自相关函数在t=0处有一个冲击,功率谱密度基本在30dB处上下波动。根据这些数据,可以判断出输入信号服从均值为0,方差为2.5的高斯分布。由此可以得到结论:若线性系统输入为高斯过程,则输出服从高斯分布。

(3)matlab程序:

x=-1000:1:1000;

k=rand(1,length(x))-rand(1,length(x));%产生在[-1,+1]区间均匀分布的白噪声序列

x=-200:1:200;

h=0.*(x<0)+power(0.8,x).*(x>=0);%滤波器的时域形式

y=conv(k,h);%输出信号,两个信号进行卷积

[f,xi]=ksdensity(y);%利用ksdensity函数估计样本的概率密度。

x=-1200:1:1200;

subplot(1,2,1);

plot(x,y);

subplot(1,2,2);

plot(xi,f);

实验结果为:

结果分析:

左侧为在[-1,1]区间均匀分布的白噪声通过线性滤波器后,输出的波形。为了分析这个信号服从什么分布,依旧借助ksdensity(y)函数,通过采样近似的估计样本的概率密度,估计的概率密度为右侧图形,从图形形状上来看大致应该服从高斯分布。

相关主题