Explain this one line of code
古いコメントを表示
Hi,
Can anyone explain to me this one line, what actually this one line do ?
rand('state',sum(100*clock)); % resetting of the random table
採用された回答
その他の回答 (2 件)
Ben11
2014 年 7 月 7 日
0 投票
I think this ensures that random numbers generated from different calls are all different since you use the current date/time in your call. You might want to take a look at this:
in which The Mathworks discourages using this syntax and proposes alternatives.
Shashank Prasanna
2014 年 7 月 7 日
編集済み: Shashank Prasanna
2014 年 7 月 7 日
Aftab, Random number generators are really pseudorandom (deterministic). This means for a given "seed" you can consistently regenerate the same sequence. This is useful if you want to re-run your experiment or perform multiple experiments on the same random stream.
In short, yes, using clock to reset the seed with generate a different stream each time since the clock is different each moment. However the recommended way to change the seed is to use the RNG function:
rng('shuffle')
Also all the link provided by SS and Ben are relevant.
カテゴリ
ヘルプ センター および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!