1 | Take the choice: |
2 | m = 231 |
3 | a = 1103515245 |
4 | c = 12345 |
5 | Implemented in C as (64 bit) |
6 | newran = [a*oldran+c] & MASK |
7 | floatran = newran/2147483648.0 |
8 | oldran = newran |
9 | floatran is uniformly distributed in [0,1] |
10 | MASK has lower 31 bits = 1and all higher bits = 0 |
11 | This intuitively says that lower order bits of a complex multiplication are "essentially" random |