double cls_random::randomBeta(
    double alpha,
    double beta)
{
    /*Johnk's beta generator*/
    double u, v;
    double x, y;
    do 
    {
        u=cls_random::randomUniform();
        v=cls_random::randomUniform();
        x=pow(u,1/alpha);
        y=pow(v,1/beta);
    } while (x+y>1);
    return x/(x+y);
}

期望:C++生成随机数:Beta分布(beta distribution)

方差:V=C++生成随机数:Beta分布(beta distribution)

 

wiki: http://en.wikipedia.org/wiki/Beta_distribution

相关文章:

  • 2021-09-03
  • 2021-04-17
  • 2021-08-19
  • 2021-07-08
  • 2022-01-05
  • 2021-04-15
  • 2022-01-04
猜你喜欢
  • 2021-10-30
  • 2021-09-14
  • 2021-06-03
  • 2022-01-05
  • 2021-10-22
  • 2021-08-19
  • 2021-08-09
相关资源
相似解决方案