离散时间随机过程建模实验报告.docx

上传人:b****8 文档编号:10797807 上传时间:2023-02-23 格式:DOCX 页数:11 大小:132.19KB
下载 相关 举报
离散时间随机过程建模实验报告.docx_第1页
第1页 / 共11页
离散时间随机过程建模实验报告.docx_第2页
第2页 / 共11页
离散时间随机过程建模实验报告.docx_第3页
第3页 / 共11页
离散时间随机过程建模实验报告.docx_第4页
第4页 / 共11页
离散时间随机过程建模实验报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

离散时间随机过程建模实验报告.docx

《离散时间随机过程建模实验报告.docx》由会员分享,可在线阅读,更多相关《离散时间随机过程建模实验报告.docx(11页珍藏版)》请在冰豆网上搜索。

离散时间随机过程建模实验报告.docx

离散时间随机过程建模实验报告

实验报告

姓名:

实验名称:

离散时间随机过程建模

学号:

课程名称:

统计信号处理基础

班级:

实验室名称:

组号:

实验日期:

2012.10.10

一、实验目的、要求

本实验的目的是在了解了Matlab编程语言的编程和调试的基础上,利用Matlab本身自带的函数来验证随机信号建模,并掌握子函数的编写方法。

计算机根据理论模型生成随机数,学生需要根据观测的数据编程来计算随机过程的参数。

本实验主要是为了让学生在充分理解不同的随机过程建模的理论方法的基础上,用计算机来认识理论和仿真模型之间的差异。

要求包括以下几个部分:

1.要求独立完成实验的内容所要求的各项功能,编制完整的Matlab程序,并在程序中注释说明各段程序的功能。

2.要填写完整的实验报告,报告应包含程序、图形和结论。

要求记录在实验过程中碰到的问题,以及解决的方法和途径。

3.实验报告是现场用Word填写并打印完成。

个人或组必须在报告上署名。

二、实验环境

验所要求的设备:

每组包含完整的计算机1台;

可共用的打印机1台,A4纸张若干;

计算机上安装的软件包括:

Matlab6.5以上(应包含SignalProcessingToolbox,FilterDesignToolbox);Word2000以上;

三、实验原理

实验内容包括2个,

实验1.本实验主要是采用FIR最小二乘逆滤波器来实现反卷积。

假定观测的数据

是由信号

通过脉冲响应为

的滤波器而生成的。

如果从

中恢复的信号

是一组脉冲序列,

其中

的取值为

25

40

55

65

85

95

110

130

140

155

1

0.8

0.7

0.5

0.7

0.2

0.9

0.5

0.6

0.3

a.根据上面的关系,画出观测数据

,并看看是否能通过

的峰值来确定

的幅度和位置。

(需要调用conv函数)

程序

n=[0:

50];

g=cos((n-25)/5).*exp(-(n-25).*(n-25)/100);

g(51:

200)=0;

x=zeros(200,1);

x(25)=1;x(40)=0.8;x(55)=0.7;x(65)=0.5;

x(85)=0.7;x(95)=0.2;x(110)=0.9;x(130)=0.5;

x(140)=0.6;x(155)=0.2;

y=conv(x,g);

figure

(1)

subplot(3,1,1),plot(g);title('滤波器冲击响应');xlabel('n');ylabel('响应幅值');

subplot(3,1,2),plot(x);title('输入序列x');xlabel('n');ylabel('幅值');

subplot(3,1,3),plot(y);title('滤波器输出');xlabel('n');ylabel('幅值');

图形

b.用教材中给出的spike.m函数来设计长度

的最小二乘逆滤波器

,并确定最佳的延迟。

程序

err1=10;N=50;n1=0;

forn0=0:

200;

[h,err]=spike(g,n0,N);

iferr

err1=err;H=h;n1=n0;end

end

figure

(2)

plot(H);title('逆滤波器冲击响应');xlabel('n');ylabel('幅值');

图形

最佳延迟为37

c.用估计的

来滤波

,并画出滤波器的输出

,图中的峰值的位置和幅度是否与

中的结果一致。

程序

x1=conv(y,H);

n2=[-37:

length(x1)-38];

figure(3)

subplot(2,1,1),plot(x);title('输入序列x(n)');xlabel('n');ylabel('幅值');

subplot(2,1,2),plot(n2,x1);axis([0,200,0,1]);title('逆滤波器输出y');xlabel('n');ylabel('幅值');

图形

d.如果观测数据中还包含噪声,即观测数据为

,其中

是方差为

的高斯白噪声,分别取

,重复b和c中的计算分析。

评论这时获得的结果。

0.0001时

程序

v=0.0001;

y1=y(1:

205)+v.*randn(1,205);

x2=conv(y1,H);n3=[-n1:

length(x2)-n1-1];

figure(4)

subplot(2,1,1),plot(x);title('输入序列x(n)');xlabel('n');ylabel('幅值');

subplot(2,1,2),plot(n3,x2);axis([0,200,0,5]);title('逆滤波器输出y1');xlabel('n');ylabel('幅值');

图形

0.001时

程序

v=0.001;

y1=y(1:

205)+v.*randn(1,205);

x2=conv(y1,H);

n3=[-n1:

length(x2)-n1-1];

figure(4)

subplot(2,1,1),plot(x);title('输入序列x(n)');xlabel('n');ylabel('幅值');

subplot(2,1,2),plot(n3,x2);axis([0,200,0,5]);title('逆滤波器输出y1');xlabel('n');ylabel('幅值');

图形

e.如果

的测量也包含噪声,即

,而

是在

间均匀分布的白噪声,重复b和c中的计算分析。

评论这时获得的结果。

程序

r=0.001/12.*rand(1,length(g));

g1=g+r;

y2=conv(x,g1);

H1=[];err0=1;

forn0=0:

200;

[h,err]=spike(g1,n0,N);

iferr

err0=err;H1=h;N0=n0;end

end

figure(5)

plot(H1);title('逆滤波器冲击响应');xlabel('n');ylabel('幅值');

x3=conv(y2,H1);n2=[-37:

length(x3)-n1-1];

figure(6)

subplot(2,1,1),plot(x);title('输入序列x(n)');xlabel('n');ylabel('幅值');

subplot(2,1,2),plot(n2,x3);axis([0,200,0,1]);title('逆滤波器输出y2');xlabel('n');ylabel('幅值');

图形

实验2.本实验是用计算机编程来求解ARMA过程的模型参数。

a.根据教材上给出的方法,编写一个给定自相关序列

,采用修改的Yule-Walker方程方法来求解

模型参数的程序

程序

function[be,ae]=arma1(r,p,q)

r1=r(1,p+2*q+1:

end-1);

r2=r(1,p+2*q+1:

-1:

2*q+2);

R1=toeplitz(r1,r2);

r3=r(1,p+2*q+2:

end)';

ae=[1;-inv(R1)*r3];

R2=toeplitz(r(1,p+q+1:

2*q+p+1),r(1,p+q+1:

-1:

q+1));

c=R2*ae;

d=conv(c,flipud(ae));

dc=d(p+2:

end,1);

pd=[flipud(dc);d(p+1,1);dc];

ifq==0

rt=[];

be=zp2tf(rt,[],1);

else

rt=roots(pd);

be=zp2tf(rt(q+1:

end,1),[],1);

end

图形

b.让单位方差的高斯白噪声通过下列滤波器

得到观测数据

的100个样本,画出

的理论功率谱。

程序

A=[1,-1.978,2.853,-1.877,0.904];

B=[1,-0.9,0.18];

v=randn(1,100);

x=filter(B,A,v);

p=length(A)-1;q=length(B)-1;

rx=xcorr(x,p+q,'biased');

pw=abs(fft(rx))/100;

figure

(1)

plot(pw);title('理论功率谱');xlabel('n');ylabel('幅值');

图形

c.用a中编制的程序根据观测数据来求解

模型的参数,把计算结果与理论模型的系数相比,有什么结论。

重复10次不同的样本实现,并计算10次的模型参数再取平均,与理想的系数相比,平均是否有效果。

程序

sa=zeros(5,1);sb=zeros(1,3);

fori=1:

10

v=randn(1,100);

x=filter(B,A,v);

rx=xcorr(x,length(A)+length(B)-2,'biased');

[b,a]=arma1(rx,p,q);

sa=sa+a;sb=sb+b;

end

b1=sb./10

a1=sa./10

err1=sum((b-B).*(b-B))+sum((a-A').*(a-A'))

err10=sum((b1-B).*(b1-B))+sum((a1-A').*(a1-A'))

图形

A=1-1.9782.853-1.8770.904

B=1-0.90.18

b=1.0000-0.51060.3082

a=1.0000-1.89612.7162-1.75490.8683

b1=1.0000-0.98980.4565

a1=1.0000-2.20473.2952-2.30711.1074

平均效果不佳

指导教师评语:

 

成绩:

指导教师签名:

批阅日期:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文化宗教

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1