1
我在CUDA中使用自定义的随机数函数rand48。该函数不允许设置上限,但我要求输出在0和1之间。自定义rand48的上界
我想我错过了一些东西,但是如何将输出转换为介于0和1之间的长度的数字可以改变,例如697135872将需要除以亿和29186668将需要由100000000
谢谢大家
我在CUDA中使用自定义的随机数函数rand48。该函数不允许设置上限,但我要求输出在0和1之间。自定义rand48的上界
我想我错过了一些东西,但是如何将输出转换为介于0和1之间的长度的数字可以改变,例如697135872将需要除以亿和29186668将需要由100000000
谢谢大家
分如果你的PRNG行为就像rand
然后它会产生0和RAND_MAX
之间的数字均匀概率。你只需要乘以1.f/RAND_MAX
。
如果您在不同的情况下划分不同的数字,您将以非均匀分布结束。
您的PRNG会在某个范围内返回一个不变的分布吗?你想返回一个'浮动'吗? – Potatoswatter 2010-04-02 22:20:52
它与标准的rand()相同,并且是一个浮动将是伟大的。 – 2010-04-02 22:26:44