42 #include <../../nrnconf.h> 116 u = ~((v - w) * (v + w));
118 m ^= (((u >> 16) | (u << 16)) ^ 0x4b0f3b58) + w *
v;
123 u = ~((v - w) * (v + w));
125 n ^= (((u >> 16) | (u << 16)) ^ 0xe874f0c3) + w *
v;
131 u = (v - w) * (v + w);
132 m ^= (((u >> 16) | (u << 16)) ^ 0x96aa3a59) + w *
v;
137 u = (v - w) * (v + w);
138 n ^= (((u >> 16) | (u << 16)) ^ 0xaa5835b9) + w *
v;
161 static const double SHIFT32 = 1.0 / 4294967296.0;
double * hoc_pgetarg(int narg)
int const size_t const size_t n
double mcell_ran4a(uint32_t *high)
static const double SHIFT32
double mcell_ran4(uint32_t *high, double *x, unsigned int n, double range)
double nrnRan4dbl(uint32_t *idx1, uint32_t idx2)
void mcell_ran4_init(uint32_t low)
uint32_t mcell_iran4(uint32_t *high)
uint32_t nrnRan4int(uint32_t *idx1, uint32_t idx2)