指数分布の変量が必要ですが、これを行うのはかなり効率的です。
double exp_variate(double lambda){
return -log(my_random_function())/lambda;
}
ここで、my_random_functionはdouble xを与えるので、 (厳密に)または0 < x < 1
を取得しないことを意味します。0と1の値を除外した乱数を取得するにはどうすればよいですか。誰かが以前にこれを尋ねたことがあると確信していますが、私はそれを見ることができません。また、指数分布の値を生成する他の方法も利用できます。-log(0)
0
編集:>から<