Redian新闻
>
c++里如何产生一个standard normal sample
avatar
t*t
2
google: box-muller

【在 b*****k 的大作中提到】
: bow
avatar
n*t
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
avatar
b*k
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
: {

avatar
e*r
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
: {

avatar
t*t
6
please read C FAQ 13.17. Did I suggest you to read all C FAQs?

【在 e******r 的大作中提到】
: 这个CODE产生的好象总是一个值,好象用的始终是一个SEED.
avatar
e*r
7
我这是在提醒 ballack 注意, 呵呵

【在 t****t 的大作中提到】
: please read C FAQ 13.17. Did I suggest you to read all C FAQs?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。