内容发布更新时间 : 2024/11/19 14:50:24星期一 下面是文章的全部内容请认真阅读。
运行结果为:均值为0.49937,方差为0.083626表示所产生数据的方差,而(0-1)之间的均匀分布的随机数的数学期望为0.5,与上面所求出的0. 49937很接近,方差0. 083626近似与0,于是这种产生方法已经符合要求。
2.高斯分布:
(x?u)高斯分布的概率密度函数如下:? 21p(x)?e2?2??
2其产生方法是在均匀分布随机数的基础上通过函数变换法来产生。产生步骤是①产生均匀分布的随机数。②产生服从标准正态分布的随机数。③由标准正态分布产生一般正态分布。
zi??2lnuicos(2?vi)
1)参数:μ=0,σ=0 ,计算10000点随机数。 程序如下:
x=rand(1,10000); y=rand(1,10000); i=1:1:10000;
z(i)=sqrt(-2*log(x(i))).*cos(2.*pi.*y(i)); w(i)=sqrt(-2*log(x(i))).*sin(2.*pi.*y(i)); e=mean(z)
d=var(z) n=-5:0.05:5; subplot(1,2,1); hist(z,n);
title('正态分布直方图-1');
text(-6,-20,strcat('均值是',num2str(e))); text(2,-20,strcat('方差是',num2str(d))); subplot(1,2,2); hist(w,n); e=mean(w) d=var(w)
title('正态分布直方图-2');
text(-6,-20,strcat('均值是',num2str(e))); text(2,-20,strcat('方差是',num2str(d))); 运行结果如下:
运行结果为:(1)均值为-0.0069,方差为1.0014,标准高斯分布数学期望为0,与上面所求出的-0.0069很接近;方差1,与1.0014近似,于是这种产生方法已经符合要求。
2)参数:μ=2,σ=2,计算10000点随机数。 程序如下: 一般高斯分布 a=2;b=2;
x=rand(1,10000); y=rand(1,10000); i=1:1:10000;
z(i)=sqrt(-2*log(x(i))).*cos(2.*pi.*y(i)); v=b*u+a; e=mean(v) d=var(v) n=-10:0.2:10; hist(v,n);
title('一般正态分布直方图');
text(-6,-20,strcat('均值是',num2str(e))); text(2,-20,strcat('方差是',num2str(d)));
运行结果如下:
运行结果为:在横坐标为2附近得到峰值;均值为-2.0202,方差为3.7686,一般高斯分布数学期望为2,与上面所求出的-2.0202很接近;方差4,与3.7686接近,于是这种产生方法已经符合要求。
3.瑞利分布随机数的产生
概率密度函数:
?x?x22??P(x)???2e?0?2x?0x?0;
产生思想:利用直接抽样法产生; 具体实现方法:
a.先调用产生(0-1)之间的均匀分布的函数(y==rand(n,1)); b.然后作z??2lny;
c.令y??z,于是向量y就是要产生的瑞利分布的随机数; 计算10000点随机数。 程序如下:
x=rand(10000,1); for i=1:10000 if (x(i)==0) x(i)=0.0001; end end
u=(-2)*log(x); y=1*sqrt(u); e=mean(y); d=var(y); hist(y,20);
title('瑞利分布直方图');
text(0,-120,strcat('均值是',num2str(e)));
text(3,-120,strcat('方差是',num2str(d))); 运行结果如下:
?均值和方差为:1.2448和0.42292,而瑞利分布的数学期望计算式为:
?2其中σ=1,代入计算得:1.253,与上面所求出的随机数的平均值1. 2448相当
4??2?接近,瑞利分布方差的计算公式为:2当??1时代入计算得0.42920与
0. 42292相当接近。
4.指数分布随机数的产生
概率密度函数:
x?1???P(x)???e??0x?0x?0;
产生思想:利用直接抽样法; 具体实现方法:
先调用产生(0-1)之间的均匀分布的函数(x=rand(n,1));
y??1然后作向量;
?lnx(?为参数)于是向量y就是所要产生的指数分布的随机