资源描述:
《随机过程作业一(201111768)new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、随机过程作业一专业:通信与信系统姓名:学号:201111768题目:利用MATLAB产生(0,1)范围内的均匀分布、瑞利分布和正态分布的随机变量的样本,并利用数理统计的方法证明分布正确与否。一、利用MATLAB产生(0,1)范围内的均匀分布(一)采用乘同余数法。给定一个正整数m,如果二个整数a,b分别初以m,如果余数相同,那么称a、b对模m同余。这样产生的就是均匀分布的随机数。(二)MATLAB7.0编程代码(5000个样本)lamda=5^5;M=2^35-31;suijigeshu=5000;X_vecto
2、r=zeros(1,suijigeshu);Randnum_vector=zeros(1,suijigeshu);X_vector(1)=10;fori=1:suijigeshu-1X_vector(i+1)=rem(lamda*X_vector(i),M);Randnum_vector(i+1)=X_vector(i)/M;%ifi==4999endsubplot(2,1,1)plot(Randnum_vector,':');axis([0suijigeshu01]);xlabel('随机数序号');ylab
3、el('均匀分布[0,1]值');title('均匀分布序列');subplot(2,1,2)Randnum_ZhiFangTu_vector=zeros(1,10);j=1;fori=1:suijigeshuj=Randnum_vector(i)/0.1;j=ceil(j);ifj<=0j=1;endifj>=11j=10;endRandnum_ZhiFangTu_vector(j)=Randnum_ZhiFangTu_vector(j)+1;endbar(Randnum_ZhiFangTu_vector);
4、xlabel('统计区间[0,1]');ylabel('统计个数');title('均匀分布随机数序列统计直方图');(三)MATLAB7.0软件环境下测试结果二、生成正态分布(一)基本方法2xx构造YXg(),使Y服从σ=1瑞利分布f()xexp,求222Y2YXg()和相应的5000个随机数。2(二)MATLAB7.0编程代码(5000个样本)lamda=5^5;M=2^35-31;length=5000;X_vector=zeros(1,length);Randnum_vecto
5、r=zeros(1,length);X_vector(1)=10;fori=1:length-1X_vector(i+1)=rem(lamda*X_vector(i),M);Randnum_vector(i+1)=X_vector(i)/M;%ifi==4999%break;endsubplot(2,1,1)plot(Randnum_vector,':');axis([0length01]);xlabel('随机数序号');ylabel('均匀分布[0,1]值');title('均匀分布序列');subplot
6、(2,1,2)Randnum_ZhiFangTu_vector=zeros(1,10);j=1;fori=1:lengthj=Randnum_vector(i)/0.1;j=ceil(j);ifj<=0j=1;endifj>=11j=10;endRandnum_ZhiFangTu_vector(j)=Randnum_ZhiFangTu_vector(j)+1;endbar(Randnum_ZhiFangTu_vector);xlabel('统计区间[0,1]');ylabel('统计个数');title('随机
7、数序列统计直方图');Y_rayleigh_vector=zeros(1,length);Y_rayleigh_vector=sqrt(-2*log(1-Randnum_vector));subplot(2,1,1);plot(Y_rayleigh_vector,':');title('参数为1的瑞利分布Rayleigh随机数序列(5000个数)');xlabel('随机数序号');ylabel('随机数值');subplot(2,1,2);Y_rayleigh_zhifangtu_vector=zeros(1
8、,50);j=1;fori=1:lengthj=Y_rayleigh_vector(i)/0.1;j=ceil(j);ifj<=0j=1;endifj>=50j=50;endY_rayleigh_zhifangtu_vector(j)=Y_rayleigh_zhifangtu_vector(j)+1;endx_axis=zeros(1,50);x_axis=0.1:0.1:5;bar(