Ran001: combined congruential with shuffle. Returns integer random numbers uniformly distributed within [0,2147483646].
Notes: - Minimal random number generator of Park and Miller with Bays-Durham shuffle and added safeguards. - The period is 2^31-2 = 2.1*10^9. If your application needs more numbers in sequence than 1% of the random generators period, i.e. 10^7, then use a more elaborate random generator. There are no statistical tests known that it fails to pass, execpt when the number of calls starts to become on the order of the period. When you need longer random sequences you should use another random generator, for example Ran002 or Ran013. - Reference: Algorithm "ran1" published in "Portable Random Number Generators", William H. Press and Saul A. Teukolsky Computers in Phyics, Vol. 6, No. 5, Sep/Oct 1992 - At least 32 bit long int is required, but works with any larger word lengths
Constructor | Description |
Full Usage:
Ran001()
|
|
Full Usage:
Ran001(the_seed)
Parameters:
uint32
|
|
Instance member | Description |
Full Usage:
this.Long
Returns: uint32
Modifiers: abstract |
|