参考http://www.cnblogs.com/tsingke/p/6194737.html
采用box-muller方法:
#include
#include
double gaussrand2(double mu,double sigma){
static double u,v;
static int phase=0;
double z;
if(phase==0){
u=rand()/(RAND_MAX+1.0);
v=rand()/(RAND_MAX+1.0);
z=sqrt(-2.0*log(u))*sin(2.0*pi*v);
}
else{
z=sqrt(-2.0*log(u))*cos(2.0*pi*v);
}
phase=1-phase;
return(mu+z*sigma);
}