Collection of seedable Pseudorandom Number Generators
npm install rng``shell`
$ npm install rng
`shell`
$ component install jhermsmeier/rng.js
`shell`
$ bower install rng
`javascript`
// Require the module
var Random = require( 'rng' )
// Instantiate a new Mersenne Twister with a seed
var mt = new Random.MT( seed )
// ...
`html`
`javascriptRandom
// RNG.js exports the global , so you're good to go.`
// Instantiate a new Mersenne Twister with a seed
var mt = new Random.MT( seed )
as PRNG.
All other classes inherit from RNG().#### Methods
Number
next()
Get a random byte [0,255]Number
random()
Same as uniform(), just to be compatible with the Math.random() style APINumber
uniform()
Get a uniform random number between 0 and 1Number
normal()
Get normally distributed number, with a mean 0, variance 1Number
range( min, max )
Get random integer in range [min,max]Number
exp()
Get exponentionally distributed number with lambda 1Number
poisson( mean )
Get poisson distributed number, the mean defaulting to 1Number
gaussian( a )`
#### Not (yet?) implemented:
- ISAAC - ISAAC (indirection, shift, accumulate, add, count)
- MWC - Multiply-With-Carry
- CMWC - Complementary-Multiply-With-Carry
- LCG - Linear Congruential Generator
- ICG - Inversive Congruential Generator
- LFG - Lagged Fibonacci Generator
- LFSR - Linear Feedback Shift Register
- NRPF - Naor-Reingold Pseudorandom Function
- BBS - Blum Blum Shub