十种概率密度函数.docVIP

  • 24
  • 0
  • 约1.47万字
  • 约 18页
  • 2017-04-14 发布于江苏
  • 举报
一十种概率密度函数 function zhifangtu(x,m) %画数据的直方图,x表示要画的随机数,m表示所要画的条数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% a=min(x); b=max(x); l=length(x); h=(b-a)/m; %量化x x=x/h; x=ceil(x); w=zeros(1,m); for i=1:l for j=1:m if (x(i)==j) %x(i)落在j的区间上,则w(j)加1 w(j)=w(j)+1; else continue end end end w=w/(h*l); z=a:h:(b-h); bar(z,w); title(直方图) function y=junyun(n) %0-1的均匀分布,n代表数据量,一般要大于1024 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% y=ones(1,n); x=ones(1,n); m=100000; x0=mod(ceil(m*rand(1,1)),m); x0=floor(x0/2); x0=2*x0+1; u=11; x(1)=x0; for i=1:n-1 x(i+1)=u*x(i)+0; x(i+1)=mod(x(i+1),m); x(i)=x(i)/m; end %x(n)单位化 x(n)=x(n)/m; y=x; function y=zhishu(m,n) %指数分布,m表示指数分布的参数,m不能为0.n表示数据量,n一般要大于1024 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% x=junyun(n); for i=1;n if (x(i)==0) x(i)=0.0001; else continue; end end u=log(x); y=-(1/m)*u; function y=ruili(m,n) %瑞利分布,m是瑞利分布的参数,n代表数据量,n一般要大于1024 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% x=junyun(n); for i=1:n if (x(i)==0) x(i)=0.0001; else continue; end end u=(-2)*log(x); y=m*sqrt(u); function y=weibuer(a,b,n) %韦布尔分布,a,b表示参数,b不能为0.n表示数据量,一般要大于1024 %a=1时,是指数分布 %a=2时,是瑞利分布 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% x=junyun(n); for i=1:n if (x(i)==0) x(i)=0.0001; else continue; end end u=-log(x); y=b*u.^(1/a); function y=swerling(n) %swelingII分布 %%%%%%%%%%%%%%%%%%%%%% r=ones(1,n); u=junyun(n); v=junyun(n); for i=1:n if (u(i)==0) u(i)=0.0001; else continue end end for i=1:n if (u(i)==v(i)) u(i)=u(i)+0.0001 else continue end end t=-2*log(u); h=2*pi*v; x=sqrt(t).*cos(h); z=sqrt(t).*sin(h); y=(r/2).*(x.^2+z.^2); function y=bernoulli(p,n) %产生数据量为n的贝努利分布,其中p属于(0-1)之间。 %----------------------- % u=junyun(n); y=zeros(1,n); for i=1:n if(u(i)=p) y(i)=1;

文档评论(0)

1亿VIP精品文档

相关文档