如何产生二维泊松分布的随机数?

来源:百度知道 编辑:UC知道 时间:2024/05/26 01:16:28
在一个无限大的平面区域,撒播节点为二维泊松分布,如何模拟出这些节点的x,y坐标?
请问一楼,这个是一维的吗?

const int MAX_VAL = 10000;

double U_Rand( double a,double b ) // 均匀分布
{
double x=random( MAX_VAL );

return a + (b - a)*x/(MAX_VAL - 1);
}

double P_Rand( double Lamda ) // 泊松分布
{
double x=0,b=1,c=exp( -Lamda ),u;

do{
u = U_Rand( 0,1 );
b *= u;
if( b >= c )
x ++;
}while( b >= c );

return x;
}