d3-force/src/lcg.js
2020-08-15 13:30:35 +02:00

10 lines
245 B
JavaScript

// https://en.wikipedia.org/wiki/Linear_congruential_generator#Parameters_in_common_use
const a = 1664525;
const c = 1013904223;
const m = 4294967296; // 2^32
export default function() {
let s = 1;
return () => (s = (a * s + c) % m) / m;
}