Akzeptierte Antwort

Jan
Jan am 20 Jun. 2017
Bearbeitet: Jan am 20 Jun. 2017

0 Stimmen

No, this is not possible in Matlab. As far as I know, you can seed it with 32 bits only - but I'm still such surprised about this, that I hope I've overseen a detail.

1 Kommentar

Noam Mazor
Noam Mazor am 22 Jun. 2017
Thanks! Is there a simple way to use the C implementation as an external lib and to initialize it from there?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Peter Perkins
Peter Perkins am 28 Jun. 2017

0 Stimmen

The "array" you are talking about is typically a state vector, right? You can set the generator state:
>> r = RandStream.getGlobalStream
r =
mt19937ar random stream (current global stream)
Seed: 0
NormalTransform: Ziggurat
>> s = r.State;
>> rand(1,5)
ans =
0.09754 0.2785 0.54688 0.95751 0.96489
>> r.State = s;
>> rand(1,5)
ans =
0.09754 0.2785 0.54688 0.95751 0.96489

1 Kommentar

Noam Mazor
Noam Mazor am 28 Jun. 2017
Hi, No, the C implementation has a function (init_by_array) that maps arbitrary array (in any length) into a state vector.
Thanks!

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Random Number Generation finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 20 Jun. 2017

Kommentiert:

am 28 Jun. 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by