forked from github/server
rearranging deckchairs on the HMS Random Numbers.
This commit is contained in:
parent
388ea174ef
commit
e7b93adb75
|
@ -18,6 +18,7 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
#include <platform.h>
|
#include <platform.h>
|
||||||
#include "rand.h"
|
#include "rand.h"
|
||||||
|
#include "mtrand.h"
|
||||||
#include "rng.h"
|
#include "rng.h"
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
@ -67,9 +68,6 @@ bool chance(double x)
|
||||||
return rng_double() < x;
|
return rng_double() < x;
|
||||||
}
|
}
|
||||||
|
|
||||||
extern double genrand_real2(void);
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct random_source {
|
typedef struct random_source {
|
||||||
double (*double_source) (void);
|
double (*double_source) (void);
|
||||||
} random_source;
|
} random_source;
|
||||||
|
|
|
@ -10,25 +10,17 @@
|
||||||
#ifndef UTIL_RNG_H
|
#ifndef UTIL_RNG_H
|
||||||
#define UTIL_RNG_H
|
#define UTIL_RNG_H
|
||||||
|
|
||||||
|
#define RNG_MT
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define RNG_MT
|
/* generates a random number on [0,1)-real-interval */
|
||||||
|
double rng_injectable_double(void);
|
||||||
|
|
||||||
#ifdef RNG_MT
|
#ifdef RNG_MT
|
||||||
/* initializes mt[N] with a seed */
|
# include "mtrand.h"
|
||||||
extern void init_genrand(unsigned long s);
|
|
||||||
|
|
||||||
/* generates a random number on [0,0xffffffff]-interval */
|
|
||||||
extern unsigned long genrand_int32(void);
|
|
||||||
|
|
||||||
/* generates a random number on [0,1)-real-interval */
|
|
||||||
extern double rng_injectable_double(void);
|
|
||||||
|
|
||||||
/* generates a random number on [0,0x7fffffff]-interval */
|
|
||||||
long genrand_int31(void);
|
|
||||||
|
|
||||||
# define rng_init(seed) init_genrand(seed)
|
# define rng_init(seed) init_genrand(seed)
|
||||||
# define rng_int (int)genrand_int31
|
# define rng_int (int)genrand_int31
|
||||||
# define rng_uint (unsigned int)genrand_int32
|
# define rng_uint (unsigned int)genrand_int32
|
||||||
|
|
Loading…
Reference in New Issue