我正在閱讀生成隨機數的代碼片段。但我不知道它是哪種發行版。誰能告訴我它是哪種發行版?這個代碼代表哪種分佈?
#include<cmath>
double rand(double min, double max)
{
return min+(max-min)*rand()/(RAND_MAX+1.0);
}
double normal(double x, double miu,double sigma)
{
return 1.0/sqrt(2*pi)/sigma*exp(-1*(x-miu)*(x-miu)/(2*sigma*sigma));
}
double randn(double miu,double sigma, double min ,double max)
{
double x,y,dScope;
do{
x=rand(min,max);
y=normal(x,miu,sigma);
dScope=rand(0.0,normal(miu,miu,sigma));
}while(dScope>y);
return x;
}
我用參數(0,0.01,-0.6,0.6)調用函數randn。我想知道randn代表哪種發行版?它讓我困惑不已,dScope用了什麼? 共有14951個樣本。直方圖如下:
您是否嘗試繪製直方圖? – Alex
@亞歷克斯等一下,我會試試。 – maple
您使用了哪些功能參數? – Alex