# csutil/randomgen.h File Reference

Random number generator. More...

`#include "csextern.h"`

`#include "cstypes.h"`

Go to the source code of this file.

## Classes | |

class | csRandomGen |

Portable random number generator class. More... |

## Detailed Description

Random number generator.

This random number generator originally appeared in "Toward a Universal Random Number Generator" by George Marsaglia and Arif Zaman. Florida State University Report: FSU-SCRI-87-50 (1987)

It was later modified by F. James and published in "A Review of Pseudo- random Number Generators"

THIS IS THE BEST KNOWN RANDOM NUMBER GENERATOR AVAILABLE. (However, a newly discovered technique can yield a period of 10^600. But that is still in the development stage.)

It passes ALL of the tests for random number generators and has a period of 2^144, is completely portable (gives bit identical results on all machines with at least 24-bit mantissas in the floating point representation).

The algorithm is a combination of a Fibonacci sequence (with lags of 97 and 33, and operation "subtraction plus one, modulo one") and an "arithmetic sequence" (using subtraction).

Definition in file randomgen.h.

Generated for Crystal Space 2.0 by doxygen 1.6.1