鉴于我们开始调用具有负整数[种子]的函数ran2,它将产生一系列随机数。如果使用相同的种子,则可以精确地重新生成序列。随机数发生器函数ran2数字配方
现在我的问题是,是否有一种方法可以直接进入序列中的某个点,然后从该点开始继续?例如,如果某种子的随机数是0.35,0.32,0.44,0.32,0.66,0.32,0.45。
如果我们知道产生这个序列的种子,有没有办法让函数返回0.66,然后从那个点开始继续?
我想用它的方式是在模拟中。因此,如果我的模拟在某个点结束,我需要重新启动它,我应该继续使用相同的随机数序列。 谢谢。
哪个ran2是这个? – 2010-03-10 23:16:32
为什么不维护一堆模拟状态(特定的随机数字只是另一条信息),以便您更容易地回溯/恢复/暂停/重放? – dirkgently 2010-03-10 23:17:29
@Igancio。 从数字食谱:科学计算的艺术。 http://www.nr.com/ Fortran版本。但我想这应该与程序的语言无关。 – floatingpoint 2010-03-10 23:27:27