Random module¶
The random module contains basic functions to generate pseudorandom numbers. LSP uses the Mersenne Twister algorithm as its core generator. It has a long period of 2^19937 − 1.
Note
To use the features of this module, you have to put a
special import statement at the begining of your LSP file: use random;
Functions¶
Before using any of the functions below, you have to create a random instance
with the create() function.
-
random.create()¶ -
random.create(seed) Creates a new random generator with the given seed. The seed is optional. If seed is omitted, the current system time is used to initialize the generator.
Parameters: int (seed) – Seed to initialize the pseudorandom generator. Return type: random
Types¶
-
type
random¶ -
init()¶ -
init(seed) Re-initializes the random generator with the given seed or a new seed. The seed is optional. If seed is omitted, the current system time is used to initialize the generator.
-
next(b)¶ -
next(a, b) Returns the next random integer
Nsuch thata <= N < bfora <= bandb < N <= aforb < a. The generated numbers are uniformly distributed between the open range induced by a and b.Return type: int
-
nextUniform(min, max)¶ Returns the next floating point number
Nsuch thata <= N < bfora <= bandb < N <= aforb < a. The generated numbers are uniformly distributed between the open range induced by a and b.This method generates floats with 52 bits of precision on the mantissa.
Return type: double
-
nextNormal()¶ -
nextNormal(mu, sigma) Normal distribution.
Parameters: - mu (double) – Mean of the normal distribution
- sigma (double) – Standard deviation.
-
nextLogNormal()¶ -
nextLogNormal(mu, sigma) Log normal distribution.
Parameters: - mu (double) – Mean of the normal distribution
- sigma (double) – Standard deviation. Must be greather than 0.
-