好好学习,天天向上,一流范文网欢迎您!
当前位置:首页 >> 最新范文 内容页

随机信号分析实验报告(基于MATLAB语言)

随机信号分析实验报告(基于MATLAB语言) 本文关键词:信号,随机,语言,实验,报告

随机信号分析实验报告(基于MATLAB语言) 本文简介:随机信号分析实验报告(基于MATLAB语言)姓名:班级:学号:随机信号分析实验报告——基于MATLAB语言姓名:_班级:_学号:专业:目录实验一随机序列的产生及数字特征估计2实验目的2实验原理2实验内容及实验结果3实验小结6实验二随机过程的模拟与数字特征7实验目的7实验原理7实验内容及实验结果8实验

随机信号分析实验报告(基于MATLAB语言) 本文内容:

随机信号分析实验报告(基于MATLAB语言)

姓名:

班级:

学号:

随机信号分析实验报告

——基于MATLAB语言

_

_

目录

实验一

随机序列的产生及数字特征估计

2

实验目的2

实验原理2

实验内容及实验结果3

实验小结6

实验二

随机过程的模拟与数字特征7

实验目的7

实验原理7

实验内容及实验结果8

实验小结11

实验三

随机过程通过线性系统的分析12

实验目的12

实验原理12

实验内容及实验结果13

实验小结17

实验四

窄带随机过程的产生及其性能测试18

实验目的18

实验原理18

实验内容及实验结果18

实验小结23

实验总结23

实验一

随机序列的产生及数字特征估计

实验目的

1.

学习和掌握随机数的产生方法。

2.

实现随机序列的数字特征估计。

实验原理

1.

随机数的产生

随机数指的是各种不同分布随机变量的抽样序列(样本值序列)。进行随机信号仿真分析时,需要模拟产生各种分布的随机数。

在计算机仿真时,通常利用数学方法产生随机数,这种随机数称为伪随机数。伪随机数是按照一定的计算公式产生的,这个公式称为随机数发生器。伪随机数本质上不是随机的,而且存在周期性,但是如果计算公式选择适当,所产生的数据看似随机的,与真正的随机数具有相近的统计特性,可以作为随机数使用。

(0,1)均匀分布随机数是最最基本、最简单的随机数。(0,1)均匀分布指的是在[0,1]区间上的均匀分布,

U(0,1)。即实际应用中有许多现成的随机数发生器可以用于产生(0,1)均匀分布随机数,通常采用的方法为线性同余法,公式如下:

y0=1,yn=kynmod

N

xn=ynN

序列xn为产生的(0,1)均匀分布随机数。

定理1.1

若随机变量X

具有连续分布函数Fxx,而R

为(0,1)均匀分布随机变量,则有

X=Fx-1R

2.

MATLAB中产生随机序列的函数

(1)

(0,1)均匀分布的随机序列函数:rand

用法:x

=

rand(m,n)

功能:产生m×n

的均匀分布随机数矩阵。

(2)

正态分布的随机序列

函数:randn

用法:x

=

randn(m,n)

功能:产生m×n

的标准正态分布随机数矩阵。

如果要产生服从Nμ,σ2分布的随机序列,则可以由标准正态随机序列产生。

(3)

其他分布的随机序列

分布

函数

分布

函数

二项分布

binornd

指数分布

exprnd

泊松分布

poissrnd

正态分布

normrnd

离散均匀分布

unidrnd

瑞利分布

raylrnd

均匀分布

unifrnd

X2分布

chi2rnd

3.

随机序列的数字特征估计

对于遍历过程,可以通过随机序列的一条样本函数来获得该过程的统计特征。这里我们假定随机序列X(n)为遍历过程,样本函数为x(n),其中n=0,1,2,……N-1。那么,X(n)的均值、方差和自相关函数的估计为

mX=1Nn=0N-1xn

σX2=1N-1n=0N-1xn-mX2

RXm=1N-mn=0N-1xnxn+m

m=0,±1,±2?

利用MATLAB的统计分析函数可以分析随机序列的数字特征。

(1)

均值函数

函数:mean

用法:m

=

mean(x)

功能:返回按1.3式估计X(n)的均值,其中x为样本序列x(n)。

(2)

方差函数

函数:var

用法:sigma2

=

var(x)

功能:返回按(1.4)式估计X(n)的方差,其中x为样本序列x(n),这一估计为无偏估计。

(3)

互相关函数

函数:xcorr

用法:c

=

xcorr(x,y)

c

=

xcorr(x)

c

=

xcorr(x,y,opition

)

c

=

xcorr(x,opition

)

功能:xcorr(x,y)计算X(n)与Y(n)的互相关,xcorr(x)计算X(n)的自相关。

option

选项可以设定为:

biased

有偏估计

unbiased

无偏估计

coeff

m

=

0

时的相关函数值归一化为1

none

不做归一化处理

实验内容及实验结果

1.

采用线性同余法产生均匀分布随机数1000个,计算该序列均值和方差与理论值之间的误差大小。改变样本个数重新计算。

程序代码:

y=1;

k=7;

N=10^10;

xn=[];

for

i=1:1000

y=mod(y*k,N);

x=y/N;

xn=[xn

x];

end

m=mean(xn)

n=var(xn)

me=0.5-m

ne=1/12-n

实验结果:

m

=

0.4813

n

=

0.0847

me=

0.0187

ne=

-0.0013

改变样本数量重新计算:(理论值

m=0.5

n=1/12)

样本数量

m

误差

n

误差

100

0.4164

0.0836

0.0901

0.0068

500

0.4668

0.0332

0.0859

0.0026

1000

0.4813

0.0187

0.0847

0.0013

10000

0.4973

0.0027

0.0848

0.0015

50000

0.5009

0.0009

0.0837

0.0004

100000

0.4996

0.0004

0.0836

0.0003

2.

参数为λ的指数分布的分布函数为

FXx=1-e-λx

利用反函数法产生参数为0.5的指数分布随机数1000个,测试其方差和相关函数。

程序代码:

j=1:1999;

y=1;

k=7;

N=10^10;

xn=[];

for

i=1:1000

y=mod(y*k,N);

x=y/N;

xn=[xn

x];

end

y=(-2)*log(1-xn);

n=var(y)

c=xcorr(y,coeff

);

plot(j-1000,c);

实验结果:

方差

n=3.7596

自相关函数:

3.

产生一组N(1,4)分布的高斯随机数(1000个样本),估计该序列的均值、方差、和相关函数。

程序代码:

i=1:1000;

j=1:1999;

x=normrnd(1,2,1,1000);

m=mean(x)

n=var(x)

c=xcorr(x,coeff

);

subplot(211);

plot(i,x);

title(‘随机序列’);

subplot(212);

plot(j-1000,c);

title(‘自相关函数’);

实验结果:

均值

m=1.0082

方差

n=3.8418

实验小结

本次实验对随机数的生成做了练习。具体来说,包括线性同余法,生成已知分布函数的随机数,rand函数等,还有就是有关均值、方差、相关的调用函数。

实验二

随机过程的模拟与数字特征

实验目的

1.

学习利用

MATLAB模拟产生随机过程的方法。

2.

熟悉和掌握特征估计的基本方法及其

MATLAB实现。

实验原理

1.

正态分布白噪声序列的产生

MATLAB提供了许多产生各种分布白噪声序列的函数,其中产生正态分布白噪声序列的函数为randn。

函数:randn

用法:x

=

randn(m,n)

功能:产生

m×n的标准正态分布随机数矩阵。

如果要产生服从

N(μ,σ2)分布的随机序列,则可以由标准正态随机序列产生。如果

X~N0,1,则μ+σX~Nμ,σ。

2.

相关函数估计

MATLAB提供了函数

xcorr用于自相关函数的估计。

函数:xcorr

用法:c

=

xcorr(x,y)

c

=

xcorr(x)

c

=

xcorr(x,y,opition

)

c

=

xcorr(x,opition

)

功能:xcorr(x,y)计算

X

(n)与

Y(n)的互相关,xcorr(x)计算

X

(n)的自相关。

Option

选项可以设定为:

biased

有偏估计。

unbiased

无偏估计。

coeff

m

=0时的相关函数值归一化为1。

none

不做归一化处理。

3.

功率谱估计

对于平稳随机序列

X

(n),如果它的相关函数满足

m=-∞+∞RXm<∞

那么它的功率谱定义为自相关函数RXm的傅里叶变换:

SXω=m=-∞+∞RXme-jmω

功率谱表示随机信号频域的统计特性,有着重要的物理意义。我们实际所能得到的随机信号的长度总是有限的,用有限长度的信号所得的功率谱只是真实功率谱的估计,称为谱估计或谱分析。

功率谱估计的方法有很多种,以下是两种通用谱估计方法。

(1)

自相关法先求自相关函数的估计RXm,然后对自相关函数做傅里叶变换。

SXω=m=-N-1N-1RXme-jmω

其中N表示用于估计样本序列的样本个数。

(2)

周期图法

先对样本序列

x(n)做傅里叶变换

Xω=n=0N-1xne-jmω

其中0≤n≤N-1,则功率谱估计为

SXω=1NXω2

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为归一化的频率向量;

window代表窗函数,这种用法种对数据进行了加窗,对数据加窗是为了减少功率谱估计中因为数据截断产生的截断误差,表

2.1列出了产生常用窗函数的

MATLAB函数

窗函数

MATLAB函数

窗函数

MATLAB函数

矩形窗

boxcar

Blackman窗

blackman

三角窗

triang

Chebyshev窗

chebwin

Hanning窗

hann

Bartlett窗

bartlett

Hamming

hamming

Kaiser窗

kaiser

nfft设定

FFT算法的长度;

fs表示采样频率;

如果不指定输出参数(最后一种用法),则直接会出功率谱估计的波形。

实验内容及实验结果

1.

按如下模型产生一组随机序列

xn=0.8xn-1+ωn

其中ωn是均值为1,方差为4的正态分布白噪声序列。估计过程的自相关函数和功率谱。

程序代码:

w=normrnd(1,4,1,1024);

x(1)=w(1);

i=2;

while

i<1025

x(i)=0.8*x(i-1)+w(i);

i=i+1;

end

R=xcorr(x);

[S,W]=periodogram(x);

subplot(3,1,1);

plot(x);title(

x(n)

);axis

tight;

subplot(3,1,2);

plot(R);title(

R(m)

);axis

tight;

subplot(3,1,3);

plot(S);title(

S(W)

);axis

tight;

实验结果:

2.

设信号为

xn=sin2πf1n+2cos2πf2n+ωn

其中f1=0.05,f2=0.12,ωn为正态分布白噪声序列,试在N=256和N=1024点时,分别产生随机序列xn,画出xn的波形并估计xn的相关函数和功率谱。

N=256:

程序代码:

N=256;

n=1:1:N;

w=randn(1,N);

f1=0.05;

f2=0.12;

x=sin(2*pi*f1*n)+2*cos(2*pi*f2*n)+w(n);

R=xcorr(x);

[S,W]=periodogram(x);

subplot(3,1,1);

plot(x);title(

x(n)

);axis

tight;

subplot(3,1,2);

plot(R);title(

R(m)

);axis

tight;

subplot(3,1,3);

plot(S);title(

S(W)

);axis

tight;

实验结果:

N=1024:

程序代码:

N=1024;

n=1:1:N;

w=randn(1,N);

f1=0.05;

f2=0.12;

x=sin(2*pi*f1*n)+2*cos(2*pi*f2*n)+w(n);

R=xcorr(x);

[S,W]=periodogram(x);

subplot(3,1,1);

plot(x);title(

x(n)

N=256

);axis

tight;

subplot(3,1,2);

plot(R);title(

R(m)

N=256

);axis

tight;

subplot(3,1,3);

plot(S);title(

S(W)

N=256

);axis

tight;

实验结果:

实验小结

本次实验对随机序列的产生进行了复习,对自相关函数与功率谱密度的产生进行了练习。并且验证了自相关函数与功率谱密度呈傅立叶变换关系。

实验三

随机过程通过线性系统的分析

实验目的

1.

理解和分析白噪声通过线性系统后输出的特性。

2.

学习和掌握随机过程通过线性系统后的特性,验证随机过程的正态化问题。

实验原理

1.

白噪声通过线性系统

设连续线性系统的传递函数为Hω或Hs,输入白噪声的功率谱密度为SXω=N02,那么系统输出的功率谱密度为

SYω=Hω2?N02

输出自相关函数为

RYτ=N04π-∞+∞Hω2e-jωτdω

输出相关系数为

γYτ=RYτRY0

输出相关时间为

τ0=0∞γYτdτ

输出平均功率为

EY2τ=N02π0∞Hω2dω

上述式子表明,若输入端是具有均匀谱的白噪声,则输出端随机信号的功率谱主要由系统的幅频特性Hω决定,不再是常数。

2.

等效噪声带宽

在实际中,

常常用一个理想系统等效代替实际系统的H(ω),因此引入了等效噪声带宽的概念,他被定义为理想系统的带宽。等效的原则是,理想系统与实际系统在同一白噪声的激励下,两个系统的输出平均功率相等,理想系统的增益等于实际系统的最大增益。

实际系统的等效噪声带宽为

?ωe=1Hωmax20∞Hω2dω

?ωe=12jHωmax2-j∞j∞HsH-sds

3.

线性系统输出端随机过程的概率分布

(1)

正态随机过程通过线性系统

若线性系统输入为正态过程,则该系统输出仍为正态过程。

(2)

随机过程的正态化

随机过程的正态化指的是,非正态随机过程通过线性系统后变换为正态过程。任意分布的白噪声通过线性系统后输出是服从正态分布的;宽带噪声通过窄带系统,输出近似服从正态分布。

实验内容及实验结果

设白噪声通过图

3.1所示的

RC电路,分析输出的统计特性。

图3.1

RC电路

(1)

试推导系统输出的功率谱密度、相关函数、相关时间和系统的等效噪声带宽。

经计算,结果如下:

传输函数

H(ω)=11+jωRC

输出功率谱密度

S(ω)=N2+2ω2R2C2

输出自相关函数为:

RYτ=N0b4e-bτ

其中b=1RC

相关时间为:

τ0=1b=RC

等效噪声带宽为:

?ωe=0∞b2b2+ω2dω=π2b=π2RC

若输入为高斯白噪声,则输出均值为0,方差σ2=R0=N0b4,服从高斯分布,概率密度函数为:

fYy=2πbN0exp?{-2y2πbN0}

(2)

采用Matlab模拟正态分布白噪声通过上述RC电路,观察输入和输出的噪声波形以及输出噪声的概率密度。

程序代码:

R=10;

C=0.1;

b=1/(R*C);

n=1:1:128;

h=b*exp(-n*b);

x=randn(1,4096);

y=conv(x,h);

[fy

yi]=ksdensity(y);

subplot(3,1,1)

plot(x);axis

tight;

title(

x(n)

);

subplot(3,1,2)

plot(y);axis

tight;

title(

y(n)

);

subplot(3,1,3)

plot(fy);axis

tight;

title(

fy

);

运行结果:

(3)

模拟产生均匀分布的高斯白噪声通过上述RC电路,观察输入和输出的噪声波形以及输出噪声的概率密度。

程序代码:

R=10;

C=0.1;

b=1/(R*C);

n=1:1:256;

h=b*exp(-n*b);

x=rand(1,1024);

x=x-0.5;

y=conv(h,x);

[fy

yi]=ksdensity(y);

subplot(3,1,1);plot(x);title(

x(n)

);axis

tight;

subplot(3,1,2);

plot(y);

title(

y(n)

);axis

tight;

subplot(3,1,3);

plot(fy);

title(

fy

);

axis

tight;

运行结果:

(4)

改变RC电路的参数(电路的RC值),重做(2)和(3),与之前的结果进行比较。

a)

改变RC的值为10000

0.1

高斯输入:

均匀分布输入:

b)

改变RC的值为

10

0.001

高斯输入:

均匀分布输入:

实验小结

若线性系统输入为正态过程,则该系统输出仍为正态过程。

非正态随机过程通过线性系统后变换为正态过程。任意分布的白噪声通过线性系统后输出是服从正态分布的;宽带噪声通过窄带系统,输出近似服从正态分布。

低通系统通带过窄时,输出与输入差别很大,因为只有低频可以通过,高频量被抑制了。

实验四

窄带随机过程的产生及其性能测试

实验目的

1.

理解和分析白噪声通过线性系统后输出的特性。

2.

掌握窄带随机过程的特性,包括均值(数学期望)、方差、相关函数及功率谱密度等。

实验原理

1.

窄带随机过程的莱斯表达式

任何一个实平稳窄带随机过程X

(t)都可以表示为

Xt=atcosω0t-btsinω0t

上式称为莱斯表达式,根据上式可以模拟产生窄带随机过程,具体过程如图4.1

所示。

图4.1

窄带随机过程的产生

2.

窄带随机过程包络与相位的概率密度

包络的概率密度为fAAt=Atσ2exp-At22σ2,At≥0,服从瑞利分布。

相位的概率密度为fφφt=12π,0≤φt≤2π,呈均匀分布。

3.

窄带随机过程包络平方的概率密度

包络平方的概率密度为fUut=12σ2exp-ut22σ2,ut≥0,为指数概率密度函数。。

实验内容及实验结果

1.

按图4.1所示结构框图,基于随机过程的莱斯表达式,用MATLAB产生一满足条件的窄带随机过程。

程序代码

n=1:1:1024;

h=exp(-n);

c1=randn(1,1024);

a=conv(c1,h);

c2=randn(1,1024);

b=conv(c2,h);

fc=10000;

i=1;

x=zeros(1,1024);

while

i<1025

x(i)=a(i)*cos(2*pi*fc*i)-b(i)*sin(2*pi*fc*i);

i=i+1;

end

plot(x);

title(

x

);axis

tight;

实验结果

2.

画出该随机过程的若干次实现,观察其形状。

实验结果

3.

编写MATLAB程序计算该随机过程的均值函数、自相关函数、功率谱、包络、包络平方及相位的一维概率密度,画出相应的图形并给出解释。

程序代码:

n=1:1:1024;

h=exp(-n);

c1=randn(1,1024);

a=conv(c1,h);

c2=randn(1,1024);

b=conv(c2,h);

fc=10000;

i=1;

x=zeros(1,1024);

while

i<1025

x(i)=a(i)*cos(2*pi*fc*i)-b(i)*sin(2*pi*fc*i);

i=i+1;

end

subplot(3,2,1);plot(x);title(

x

);axis

tight;

%-----------------------均值

subplot(3,2,2);plot(R);title(

R(x)

);axis

tight;

%-----------------------功率谱密度-------------------------

[S,w]=periodogram(x);

subplot(3,2,3);plot(S);title(

S(w)

);axis

tight;

%-----------------------包络-------------------------

A=zeros(1,1024);

i=1;

while(i<1025)

利用循环,根据A(t)=a(t)2+b(t)2得到包络

A(i)=sqrt(a(i)^2+b(i)^2);

i=i+1;

end

[fA

j]=ksdensity(A);

subplot(3,2,4);plot(fA);

title(

f(A)

);axis

tight;

%-----------------------包络平方-------------------------

i=1;

while(i<1025)

%利用循环得到包络的平方

A2(i)=A(i)^2;

i=i+1;

end

[fA2

j]=ksdensity(A2);

subplot(3,2,5);plot(fA2);title(

f(A^2)

);axis

tight;

%-----------------------相位-------------------------

i=1;

while(i<1025)

%根据φ(t)=arctan?(b(t)/a(t))得到包络相位

fai(i)=atan(b(i)/a(i));

i=i+1;

end

[fp

j]=ksdensity(fai);

subplot(3,2,6);plot(fp);

title(

f(p)

);axis

tight;

实验结果:

m

=0.0038

均值约等于0

包络的概率密度近似为瑞利分布

包络平方的概率密度近似为指数概率密度

包络的相位近似为均匀分布,此时样本数为1024

如果加大样本数至32768,则相位的概率密度函数就更接近于均匀分布了

实验小结

通过本次实验我学会了基于随机过程的莱斯表达式产生窄带随机过程的方法。掌握了窄带随机过程的特性,包括均值、方差、相关函数及功率谱密度等。通过实验验证了窄带随机过程包络的概率密度分布为瑞丽分布,相位的概率密度分布为均匀分布,包络平方的概率密度分布为指数分布。

实验总结

总结这四次随机信号分析实验,我觉得收获最大的地方便是学会利用MATLAB进行随机信号分析。经过此次实验之后,我掌握了随机信号的初始化,信号的各种分析方法,同时也通过MATLAB的画图功能直观的了解了随机信号处理之后的结果。通过这次实验,我收获了很多,同时也非常感谢老师的教导,才有了这样的成果。

24

TAG标签: