如何为Dieharder测试工具编写并添加自定义RNG?
基于3段帐篷映射的*伪随机数生成器(RNG)*实现代码片段
我正在编写一款伪随机数生成器(RNG),采用了3段式帐篷映射的算法,并且基于dieharder库的接口规范来开发,目前完成的代码片段如下:
#include <dieharder/libdieharder.h> static unsigned long int tent3_get (void *vstate); static double tent3_get_double (void *vstate); static void tent3_set (void *vstate, unsigned long int s); typedef struct { double seed; } tent3_state_t; static unsigned long int tent3_get (void *vstate) { double nextx = seed; double current = nextx; if(current <= 1.0/3.0){ nextx = 3.0 * current; }else if(current <= 2.0/3.0){ nextx = 3.0 * current - 1.0; }else if(current <...
内容的提问来源于stack exchange,提问作者StarChar
相关产品推荐
相关产品推荐

