b*****k 发帖数: 33 | | t****t 发帖数: 6806 | 2 google: box-muller
【在 b*****k 的大作中提到】 : bow
| n******t 发帖数: 4406 | 3 工作目录下就有这么个code,顺便给你粘贴了:
double gaussrand()
{
static double V2, fac;
static int phase = 0;
double S, Z, U1, U2, V1;
if (phase)
Z = V2 * fac;
else
{
do {
U1 = (double)rand() / RAND_MAX;
U2 = (double)rand() / RAND_MAX;
V1 = 2 * U1 - 1;
V2 = 2 * U2 - 1;
S = V1 * V1 + V2 * V2;
} while(S >
【在 b*****k 的大作中提到】 : bow
| b*****k 发帖数: 33 | 4 多谢两位
【在 n******t 的大作中提到】 : 工作目录下就有这么个code,顺便给你粘贴了: : double gaussrand() : { : static double V2, fac; : static int phase = 0; : double S, Z, U1, U2, V1; : if (phase) : Z = V2 * fac; : else : {
| e******r 发帖数: 220 | 5 这个CODE产生的好象总是一个值,好象用的始终是一个SEED.
【在 n******t 的大作中提到】 : 工作目录下就有这么个code,顺便给你粘贴了: : double gaussrand() : { : static double V2, fac; : static int phase = 0; : double S, Z, U1, U2, V1; : if (phase) : Z = V2 * fac; : else : {
| t****t 发帖数: 6806 | 6 please read C FAQ 13.17. Did I suggest you to read all C FAQs?
【在 e******r 的大作中提到】 : 这个CODE产生的好象总是一个值,好象用的始终是一个SEED.
| e******r 发帖数: 220 | 7 我这是在提醒 ballack 注意, 呵呵
【在 t****t 的大作中提到】 : please read C FAQ 13.17. Did I suggest you to read all C FAQs?
|
|