我有一些遗留的C++代码,用于生成均匀分布随机数和高斯分布。它实现了George Marsaglia博士的算法,速度非常快。(我使用它们来生成大量样本进行蒙特卡罗高维积分。)
我认为重构生成器和分布以适应新的C++11 std::random方案是一个好主意。
有没有人能指点我一个std::random的教程或好的参考资料,其中包括如何扩展它所需的必要信息?最好提供示例代码。
更新。感谢大家的帮助。我现在已经编写了一个可直接替换Visual C++ 2010附带的std::normal_distribution的程序。在我的电脑上,当使用默认引擎时,这个替代程序比原来的快26%。我有点失望差距不够大,但嘿,这是我的问题。 :-)
我认为重构生成器和分布以适应新的C++11 std::random方案是一个好主意。
有没有人能指点我一个std::random的教程或好的参考资料,其中包括如何扩展它所需的必要信息?最好提供示例代码。
更新。感谢大家的帮助。我现在已经编写了一个可直接替换Visual C++ 2010附带的std::normal_distribution的程序。在我的电脑上,当使用默认引擎时,这个替代程序比原来的快26%。我有点失望差距不够大,但嘿,这是我的问题。 :-)