mkzz 发表于 2022-10-31 10:23:16

ran1(idum)的问题 有人可以解答一下吗 球球了

本帖最后由 mkzz 于 2022-10-31 10:24 编辑

如附件所示,它在前面声明了idum,
idum=747
后面在用ran随机数的时候是这样的ran1(idum),我想问一下这样生成的随机数是什么范围的呀?
它在书中还解释了,说这个ran1(idum)是根据Numerical Recipes Press et al. (1999). 这一版中规定的随机数生成器来的。
希望有人解答

青衣巷 发表于 2022-10-31 19:49:31

以下是 《NUmerical Recipes》书中关于 ran1 函数的说明。

“Minimal” random number generator of Park and Miller with Bays-Durham shuffle and
added safeguards. Returns a uniform random deviate between 0.0 and 1.0 (exclusive of
the endpoint values). Call with idum a negative integer to initialize; thereafter, do not
alter idum between successive deviates in a sequence. RNMX should approximate the largest
floating value that is less than 1.

结果是 [0,1) 半开半闭区间

mkzz 发表于 2022-10-31 23:35:19

青衣巷 发表于 2022-10-31 19:49
以下是 《NUmerical Recipes》书中关于 ran1 函数的说明。

“Minimal” random number generator of Park...

就是其实无关于是否对idum 赋值,无论给idum赋值多少,ran1(idum)生成的随机数都是0-1吗

青衣巷 发表于 2022-11-1 20:28:11

是的。idum 只是一个种子。
如果 idum 每次是固定的。那么得到的随机数也是相同的。

其实,现在语法里有了 random_seed 和 random_number,完全可以用这两个标准函数。

你可以参考http://random.w.fcode.cn/

mkzz 发表于 2022-11-1 22:21:39

青衣巷 发表于 2022-11-1 20:28
是的。idum 只是一个种子。
如果 idum 每次是固定的。那么得到的随机数也是相同的。



好嘞,非常感谢
页: [1]
查看完整版本: ran1(idum)的问题 有人可以解答一下吗 球球了