实验一 随机信号的产生相关分析及其应用实验文档格式.docx
- 文档编号:8571469
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:33
- 大小:557.73KB
实验一 随机信号的产生相关分析及其应用实验文档格式.docx
《实验一 随机信号的产生相关分析及其应用实验文档格式.docx》由会员分享,可在线阅读,更多相关《实验一 随机信号的产生相关分析及其应用实验文档格式.docx(33页珍藏版)》请在冰点文库上搜索。
231-1。
通常公式中参数常用取值为s(0)=12357,r=2045,b=1,M=1048576。
较简单的高斯白噪声产生方法是基于概率论中的中心极限定理。
即无穷多个同分布随机变量之和构成随机变量服从高斯分布。
方便起见,可用N个(通常N=12)均匀分.
布随机变量之和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;
K<
N。
为保证估计质量,通常要求K<
<
此时Rx(m)也可以简化为错误!
。
同理,也类似地计算互相关函数。
2实验内容
(1)编程实现产生10000个在(0,1)区间均匀分布随机数。
计算生成随机数的1~4阶矩,最大值,最小值,频度直方图。
(2)编程实现产生10000个N(3,4)高斯随机数。
(3)编程实现产生10000个N(1,2)高斯随机数和10000个N(3,4)高斯随机数。
计算其自相关函数,计算两个高斯随机信号的互相关函数。
(4)生成一个10000点高斯随机信号x(n):
N(1,4)。
将该信号延迟N点,N<
200,得到随机信号y(n)。
计算两个信号的互相关函数,搜索峰值位置估算延迟。
3实验仪器设备
微型计算机、Matlab开发环境(本报告采用MATLAB2016a)
三、实验步骤
(1)实现产生10000个在(0,1)区间均匀分布随机数。
计算生成随机数的
(2)1~4阶矩,最大值,最小值,频度直方图。
编程实现产生10000个N(3,4)高斯随机数。
(3)
计算生成随机数的1~4阶矩,最大值,最小值,频度直方(4)
编程实现产生10000个(5)N(1,2)高斯随机数和10000个N(3,4)高斯随机数。
计算其自相关函数,计算两个高斯随机信号的互相关函数。
(6)
生成一个10000点高斯随机信号x(n):
N(1,4)。
(7)
将该信号延迟N点,N<
200,得到随机信号y(n)(8)。
、
(9)
四、实验数据记录表格
)数据处理记录表实验内容(1表1-1
.
三阶原点矩均值均方值
四阶原点矩最大值最小值
)数据处理记录表2表1-2实验内容(
三阶原点矩均方值均值
最大值最小值四阶原点矩
)数据处理记录表实验内容(4表1-3
延迟估算峰值位置
大连理工大学实验报告
电子信息工程班级:
1401
姓名:
*****学号*****组:
2016/10/31C227
1实验原理
较简单的伪随机序列产生方法是采用数论中基于数环理论的线性同余法(乘同余法、混合同余法),其迭代公式的一般形式为f(x)=(r*x+b)ModM,其离散形式为s(n+1)=[r*s(n)+b]ModM。
(1)编程实现产生10000个在(0,1)区间均匀分布随机数。
计算生成随机数的1~4阶矩,最.
大值,最小值,频度直方图。
三、主要仪器设备
(注:
以下为代码内容已经有详细的说明已包括步骤和操作办法)
四、实验步骤与操作方法
实验内容
(1):
编程实现产生10000个在(0,1)区间均匀分布随机数。
计算生成随机数的1~4阶矩,最大值,最小值,频度直方图
代码如下:
%%清除以前数据缓存以及命令行窗口的显示
clear
clc
%%均匀分布随机数的产生
%生成10000数据
s=randuniform(1048576,1,2045,12357,10000);
%%画线
figure,plot(s)%全部
title('
全部数据连线'
)
figure,plot(s(1:
100))%前100个数据
前100个数据连线'
%%画点
figure,plot(s,'
.'
)%全部
全部数据画点'
100),'
*'
)%前100个数据
前100个数据画点'
%%画直方图
hist(s)
10个区间'
hist(s,100)
100个区间'
%%估计随机数的分布
[f,xi]=ksdensity(s);
figure,plot(xi,f);
利用MATLAB函数ksdensity估计得概率密度'
%%随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩
m=zeros(1,4);
%生成[0000]
fori=1:
10000
m
(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;
%四阶
end
m5=max(s);
%最大值
m6=min(s);
%最小值
m=m/10000;
disp(['
均值='
num2str(m
(1))]);
均方值='
num2str(m
(2))]);
三阶原点矩='
num2str(m(3))]);
四阶原点矩='
num2str(m(4))]);
最大值='
num2str(m5)]);
最小值='
num2str(m6)]);
%对比:
Matlab函数
disp('
========以下对比Matlab库函数生成的数据========'
=====按任意键继续====='
pause;
sm=rand(1,10000);
%画线
figure,plot(sm)%全部
figure,plot(sm(1:
%画点
figure,plot(sm,'
%画直方图
hist(sm)
hist(sm,100)
%估计随机数的分布
[f,xi]=ksdensity(sm);
%求随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩
m
(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;
m5=max(sm);
%最大值
m6=min(sm);
%最小值
实验内容
(2):
编程实现产生10000个N(3,4)高斯随机数。
%%高斯分布随机数的产生
m=0;
a=1;
num=10000;
s=rnd(m,a,num);
%rnd()自己编写的产生高斯随机数的函数
%%求随机数的均值、均方值、一维三阶原点矩、一维四阶原点矩、最大值和最小值
%%对比:
========按任意键继续========'
%pause;
%%生成10000数据
sm=random('
normal'
0,1,1,num);
实验内容(3):
(3)编程实现产生10000个N(1,2)高斯随机数和10000个N(3,4)
高斯随机数。
%定义高斯随机的方差和均值及产生的数量
m1=1;
a1=2;
m2=3;
a2=4;
%利用自带函数产生高斯随机数
d1=random('
norm'
1,2,1,num);
d2=random('
3,4,1,num);
%计算自相关和互相关函数
Rx1=xcorr(d1);
Rx2=xcorr(d1);
Rx1x2=xcorr(d1,d2);
m=-num+1:
num-1;
figure,plot(m,Rx1);
figure,plot(m,Rx2);
figure,plot(m,Rx1x2);
实验内容(4):
a1=4;
fs=500;
N=100;
long=1000;
%由于数据过多,延时图比较不明显,显示1000个数据
x1=random('
1,4,1,num);
x2=random('
x=random('
1,4,1,N);
%产生一个1维N个随机高斯随机数,用来替换延时后的空位
%延时N
fori=1:
10000
if(i<
=100)
x2(i)=0;
%将延时后的前100用零代替
else
x2(i)=x1(i-N);
end
figure,subplot(2,1,1),plot(x1(1:
long));
原随机信号'
subplot(2,1,2),plot(x2(1:
long),'
r'
);
%延迟与原随机信号同一张图中比较
用0替换延时后的延时信号'
[cor11,lag11]=xcorr(x1,x2);
figure,plot(lag11/fs,cor11)
延时100且用高斯随机数替代延时后两个函数的互相关函数'
%求最大值,和延时
max11=0;
if(cor11(1,i)>
max11)
max11=cor11(1,i);
delay11=lag11(1,i);
max11
delay11
if(i>
N)
x2(i)=x1(i-N);
x2(i)=x(i);
%将延时后的前100用产生的高斯随机数代替
用高斯随机数替换后的延时信号'
[cor12,lag12]=xcorr(x1,x2);
figure,plot(lag12/fs,cor12)
max12=0;
if(cor12(1,i)>
max12)
max12=cor12(1,i);
delay12=lag12(1,i);
max12
delay12
附:
本次作业中用到的两个随机信号源代码
1.产生(0,1)区间均匀分布随机数的函数:
functions=randuniform(M,b,r,first,num)
%%调用示例:
s=randuniform(1048576,1,2045,12357,10000)
%其中,s(n)为n时刻的随机数种子,r为扩展因子,b为固定扰动项,M为循环模,ModM表示对M取模。
%通常公式中参数常用取值为s(0)=12357,r=2045,b=1,M=1048576。
s=zeros(1,num);
s
(1)=first;
fori=2:
num
s(i)=mod(s(i-1)*r+b,M);
s=s/M;
2.高斯随机序列产生函数:
function[s1,s2]=rnd(m,a,num)
%其中a是均值,m是方差,num变量则是数据量
s=rnd(0,1,1000),
x1=rand(1,num);
x2=rand(1,num);
y1=sqrt(-2*log(x1)).*cos(2*pi*x2);
y2=sqrt(-2*log(x1)).*sin(2*pi*x2);
s1=a*y1+m;
s2=a*y2+m;
五、实验数据记录和处理2)结果:
实验内容(
图(自编(自编函数)100001-1.1:
个均匀随机数的连线图:
图1-1.410000个均匀随机变量频度直方图函数)
图图1-1.5:
估得的概率密度图(自编函数)1001-1.2:
前个均匀随机数连线图(自编函数)
图(库函数)10000个均匀随机数数据点图10000(自编函数)1-1.6图:
1-1.3.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验一 随机信号的产生相关分析及其应用实验 实验 随机 信号 产生 相关 分析 及其 应用