Period Length of the random numbers generated by rand() and randn()
15 views (last 30 days)
from what I understand, (uniform) random number generators will produce numbers that at some point will repeat.
Is this always the case? Is it possible to read somewhere how long this period length is for the uniform number generator rand()?
And does randn() use rand()? Is there a way to see how randn() is coded?
What I actually would like to know is the Period Length of randn(), if the output of this is actually repeating after a while.
Thank you very much for your help! :)
Steven Lord on 8 May 2023
See the "Choosing a Random Number Generator" section on this documentation page for a brief description of each of the available random number generators in MATLAB and their approximate periods.
We do not distribute the source code for either rand or randn.
More Answers (1)
Jonas on 8 May 2023
Edited: Jonas on 8 May 2023
don't confuse yourself, random number do not have a period length, but what you actually mean may be the rate e.g. after which a number may appear again. this is not deterministic, but you can measure e.g. the mean number of lements after which a specific number appears again:
short example with numbers 1 to 100
as you can see, this number is near the number of possible integer values
but the output almost never repeats itself if there are enough ouput values possible. E.g. if you have 1000 possible outputs and a sequence of 1e6 values, the probability of an exact repetition is (1/1000)^(1e6)
note again: random numbers are random, if you have uniform distribution, the probability of a specific number is always the the same, regardless if you have drawn a number for the first time or for the 1000th time.