是否有一种方法可以返回MonteCarloSimulation
的标量结果之外的附加值?我已经看了文档和这个例子,但是没有找到一个方法。
我的用例:在make_simulator
中,我使用生成器生成一个高斯向量,然后对该向量进行一些处理,我想返回该值和我的结果。就像"域"一样到"图像"我需要两者来做进一步的计算。谢谢!
无法从输出函数返回更多数据。MonteCarloSimulation
返回一个结果列表,其中每个结果只有generator_snapshot
(RNG)和output
(float)。
函数make_simulator
应该仅取决于给定的generator
。所以在理论上,你可以取generator_snapshot
并再次调用一个类似于make_simulator
的函数,重新计算高斯向量,图像,或任何你喜欢的RNG。这可能会浪费一些计算时间,但应该总是可行的。
还有另一种方法:MonteCarloSimulation
返回的结果列表顺序与make_simulator
调用的顺序完全匹配因此,如果您对您的簿记很小心,在make_simulator
中,您可以将额外的数据附加到"图像"的全局列表中。然后在蒙特卡罗完成后,您将有例如100个图像和100个模拟输出,并且您可以将它们一起zip()
。
总结:没有办法返回更多的数据从make_simulator
,但你可以改变你的make_simulator
复制任何数据,它需要到某个地方,你可以抓住它。