gngauss.m

来自「计算OAM的系统误码率的matlab仿真程序与说明文档」· M 代码 · 共 18 行

M
18
字号
function grsv=gngauss(m,sgma)
%产生两个统计独立的高斯分布的随机数
%m=0,sgma为方差
%输入格式为grsv=gngauss(sgma)时m=0
if(nargin==0)
    m=0; 
    sgma=1;
elseif nargin==1
    sgma=m; 
    m=0;
end
u=rand;                        %产生一个(0,1)间均匀分布的随机数u
z=sgma*(sqrt(2*log(1/(1-u)))); %利用u产生一个瑞利分布的随机数
u=rand;                        %重新产生(0,1)间均匀分布的随机数
grsv(1)=m+z*cos(2*pi*u);
grsv(2)=m+z*cos(2*pi*u);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?