gngauss1.m

来自「本程序实现对多进制PSK数字调制系统的仿真。程序运行需要几分钟」· M 代码 · 共 20 行

M
20
字号
function[gsrv1,gsrv2]=gngauss(m,sgma)
%             [gsrv1,gsrv2]=gngauss(m,sgma)
%             [gsrv1,gsrv2]=gngauss(sgma)
%             [gsrv1,gsrv2]=gngauss
%             GNGAUSS产生两个均值为m、标准差sgma的、互相独立的
%             高斯随机变量。如果缺少其中一个输入参数,则取均值
%             为0。如果既没有给出均值也没有给出方差,本函数将
%             产生两个标准高斯随机变量。
if nargin==0,
	m=0;sgma=1;
elseif nargin==1,
	sgma=m;m=0;
end;

u=rand;                %在区间(0,1)内的均匀随机变量
z=sgma*(sqrt(2*log(1/(1-u))));   %瑞利分布随机变量
u=rand;                %在区间(0,1)内的均匀随机变量
gsrv1=m+z*cos(2*pi*u);
gsrv2=m+z*sin(2*pi*u);

⌨️ 快捷键说明

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