您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 工作范文 > 实验一 随机信号的产生、相关分析及其应用实验
电子1401**********12016-11-04大连理工大学实验预习报告学院(系):信息与通信工程学院专业:电子信息工程班级:1401姓名:*****学号:*****组:___实验时间:2016/10/31实验室:C227实验台:指导教师:李小兵实验I:随机信号的产生、相关分析及其应用实验一、实验目的和要求通过实验理解掌握随机信号样本生成的原理和方法、掌握随机过程相关函数的计算原理和方法。训练MATLAB程序代码编写能力,要求完成以下工作,并将实验结果与理论分析对照。1.基于均匀分布伪随机数,掌握均匀分布白噪声典型生成方法。2.基于均匀分布伪随机数,掌握高斯分布白噪声典型生成方法。3.掌握随机信号相关函数计算、相关分析及实现方法。二、实验原理和内容1实验原理较简单的伪随机序列产生方法是采用数论中基于数环理论的线性同余法(乘同余法、混合同余法),其迭代公式的一般形式为f(x)=(r*x+b)ModM,其离散形式为s(n+1)=[r*s(n)+b]ModM。其中,s(n)为n时刻的随机数种子,r为扩展因子,b为固定扰动项,M为循环模,ModM表示对M取模。为保证s(n)的周期为M,r的取值应满足r=4k+1,pM2,k与p的选取应满足:rM,r(M-1)+1231-1。通常公式中参数常用取值为s(0)=12357,r=2045,b=1,M=1048576。较简单的高斯白噪声产生方法是基于概率论中的中心极限定理。即无穷多个同分布随机变量之和构成随机变量服从高斯分布。方便起见,可用N个(通常N=12)均匀分电子1401**********22016-11-04布随机变量之和Xi近似高斯分布随机变量。若Xi,i=0,1,…,11在[0,1)上服从均匀分布,则Y=近似服从均值为0,方差为1的高斯分布。随机信号相关函数计算、相关分析及实现方法原理:离散随机序列自相关函数定义为Rx(m)=E[x(n)x(n+m)]。对于各态历经随机过程,统计平均可用时间平均代替,即Rx(m)=工程实践中,无法获得无限长数据,只能用有限平均来近似,即Rx(m)=,m=0,1,…,K-1;KN。为保证估计质量,通常要求KN。此时Rx(m)也可以简化为。同理,也类似地计算互相关函数。2实验内容(1)编程实现产生10000个在(0,1)区间均匀分布随机数。计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。(2)编程实现产生10000个N(3,4)高斯随机数。计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。(3)编程实现产生10000个N(1,2)高斯随机数和10000个N(3,4)高斯随机数。计算其自相关函数,计算两个高斯随机信号的互相关函数。(4)生成一个10000点高斯随机信号x(n):N(1,4)。将该信号延迟N点,N200,得到随机信号y(n)。计算两个信号的互相关函数,搜索峰值位置估算延迟。3实验仪器设备微型计算机、Matlab开发环境(本报告采用MATLAB2016a)三、实验步骤(1)实现产生10000个在(0,1)区间均匀分布随机数。(2)计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。(3)编程实现产生10000个N(3,4)高斯随机数。(4)计算生成随机数的1~4阶矩,最大值,最小值,频度直方(5)编程实现产生10000个N(1,2)高斯随机数和10000个N(3,4)高斯随机数。(6)计算其自相关函数,计算两个高斯随机信号的互相关函数。(7)生成一个10000点高斯随机信号x(n):N(1,4)。(8)将该信号延迟N点,N200,得到随机信号y(n)。、(9)计算两个信号的互相关函数,搜索峰值位置估算延迟。电子1401**********32016-11-04四、实验数据记录表格表1-1实验内容(1)数据处理记录表均值均方值三阶原点矩四阶原点矩最小值最大值表1-2实验内容(2)数据处理记录表均值均方值三阶原点矩四阶原点矩最小值最大值表1-3实验内容(4)数据处理记录表峰值位置延迟估算电子1401**********42016-11-04大连理工大学实验报告学院(系):信息与通信工程学院专业:电子信息工程班级:1401姓名:*****学号:*****组:___实验时间:2016/10/31实验室:C227实验台:指导教师:实验I:随机信号的产生、相关分析及其应用实验一、实验目的和要求通过实验理解掌握随机信号样本生成的原理和方法、掌握随机过程相关函数的计算原理和方法。训练MATLAB程序代码编写能力,要求完成以下工作,并将实验结果与理论分析对照。1.基于均匀分布伪随机数,掌握均匀分布白噪声典型生成方法。2.基于均匀分布伪随机数,掌握高斯分布白噪声典型生成方法。3.掌握随机信号相关函数计算、相关分析及实现方法。二、实验原理和内容1实验原理较简单的伪随机序列产生方法是采用数论中基于数环理论的线性同余法(乘同余法、混合同余法),其迭代公式的一般形式为f(x)=(r*x+b)ModM,其离散形式为s(n+1)=[r*s(n)+b]ModM。其中,s(n)为n时刻的随机数种子,r为扩展因子,b为固定扰动项,M为循环模,ModM表示对M取模。为保证s(n)的周期为M,r的取值应满足r=4k+1,pM2,k与p的选取应满足:rM,r(M-1)+1231-1。通常公式中参数常用取值为s(0)=12357,r=2045,b=1,M=1048576。2实验内容(1)编程实现产生10000个在(0,1)区间均匀分布随机数。计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。(2)编程实现产生10000个N(3,4)高斯随机数。计算生成随机数的1~4阶矩,最电子1401**********52016-11-04大值,最小值,频度直方图。(3)编程实现产生10000个N(1,2)高斯随机数和10000个N(3,4)高斯随机数。计算其自相关函数,计算两个高斯随机信号的互相关函数。(4)生成一个10000点高斯随机信号x(n):N(1,4)。将该信号延迟N点,N200,得到随机信号y(n)。计算两个信号的互相关函数,搜索峰值位置估算延迟。三、主要仪器设备微型计算机、Matlab开发环境(本报告采用MATLAB2016a)(注:以下为代码内容已经有详细的说明已包括步骤和操作办法)四、实验步骤与操作方法实验内容(1):编程实现产生10000个在(0,1)区间均匀分布随机数。计算生成随机数的1~4阶矩,最大值,最小值,频度直方图代码如下:%%清除以前数据缓存以及命令行窗口的显示clearclc%%均匀分布随机数的产生%生成10000数据s=randuniform(1048576,1,2045,12357,10000);%%画线figure,plot(s)%全部title('全部数据连线')figure,plot(s(1:100))%前100个数据title('前100个数据连线')%%画点figure,plot(s,'.')%全部title('全部数据画点')figure,plot(s(1:100),'*')%前100个数据title('前100个数据画点')%%画直方图电子1401**********62016-11-04hist(s)title('10个区间')hist(s,100)title('100个区间')%%估计随机数的分布[f,xi]=ksdensity(s);figure,plot(xi,f);title('利用MATLAB函数ksdensity估计得概率密度')%%随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩m=zeros(1,4);%生成[0000]fori=1:10000m(1)=m(1)+s(i);%均值m(2)=m(2)+s(i)^2;%二阶矩m(3)=m(3)+s(i)^3;%三阶m(4)=m(4)+s(i)^4;%四阶endm5=max(s);%最大值m6=min(s);%最小值m=m/10000;disp(['均值=',num2str(m(1))]);disp(['均方值=',num2str(m(2))]);disp(['三阶原点矩=',num2str(m(3))]);disp(['四阶原点矩=',num2str(m(4))]);disp(['最大值=',num2str(m5)]);disp(['最小值=',num2str(m6)]);%对比:Matlab函数disp('========以下对比Matlab库函数生成的数据========')disp('=====按任意键继续=====')pause;%生成10000数据电子1401**********72016-11-04sm=rand(1,10000);%画线figure,plot(sm)%全部title('全部数据连线')figure,plot(sm(1:100))%前100个数据title('前100个数据连线')%画点figure,plot(sm,'.')%全部title('全部数据画点')figure,plot(sm(1:100),'*')%前100个数据title('前100个数据画点')%画直方图hist(sm)title('10个区间')hist(sm,100)title('100个区间')%估计随机数的分布[f,xi]=ksdensity(sm);figure,plot(xi,f);title('利用MATLAB函数ksdensity估计得概率密度')%求随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩m=zeros(1,4);%生成[0000]fori=1:10000m(1)=m(1)+sm(i);%均值m(2)=m(2)+sm(i)^2;%二阶矩m(3)=m(3)+sm(i)^3;%三阶m(4)=m(4)+sm(i)^4;%四阶endm5=max(sm);%最大值m6=min(sm);%最小值电子1401**********82016-11-04m=m/10000;disp(['均值=',num2str(m(1))]);disp(['均方值=',num2str(m(2))]);disp(['三阶原点矩=',num2str(m(3))]);disp(['四阶原点矩=',num2str(m(4))]);disp(['最大值=',num2str(m5)]);disp(['最小值=',num2str(m6)]);实验内容(2):编程实现产生10000个N(3,4)高斯随机数。计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。代码如下:%%清除以前数据缓存以及命令行窗口的显示clearclc%%高斯分布随机数的产生%生成10000数据m=0;a=1;num=10000;s=rnd(m,a,num);%rnd()自己编写的产生高斯随机数的函数%%画线figure,plot(s)%全部title('全部数据连线')figure,plot(s(1:100))%前100个数据title('前100个数据连线')%%画点figure,plot(s,'.')%全部title('全部数据画点')figure,plot(s(1:100),'*')%前100个数据title('前100个数据画点')%%画直方图hist(s)title('10个区间')hist(s,100)title('100个区间')%%估计随机数的分布电子1401**********92016-11-04[f,xi]=ksdensity(s);figure,plot(xi,f);title('利用MATLAB函数ksdensity估计得概率密度')%%求随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩、最大值和最小值m=zeros(1,4);%生成[0000]fori=1:10000m(1)=m(1)+s(i);%均值m(2)=m(2)+s(i)^2;%二阶矩m(3)=m(3)+s(i)^3;%三阶m(4)=m(4)+s(i)^4;%四阶endm
本文标题:实验一 随机信号的产生、相关分析及其应用实验
链接地址:https://www.777doc.com/doc-4240432 .html