help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cellfun and parcellfun


From: David Bateman
Subject: Re: cellfun and parcellfun
Date: Mon, 14 Jun 2010 19:16:14 +0200
User-agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090706)

Robert Patterson wrote:
On Fri, 2010-06-11 at 23:28 +0200, David Bateman wrote:
It should be relatively easy to do this except for the care needed with the fact that the randlib generators all use the same state and the mersenne twister based generators have separate states and so rand("state", "reset") should change only the uniform generators state, but rand("seed", "reset") should change all of them.


I think I am doing something pretty stupid in trying to reset my RNGs:

octave:187> rand("state", 123); rande()
ans =  0.042798
octave:188> rand("state", 123); rande()
ans =  0.49064
octave:189> rand("state", 123); rande()
ans =  4.2087

I was expecting to get the same value each time.  Is the hash used to
initialise the Mersenne Twister non-deterministic?

Thanks

Robert


The older randlib generators have the same base generator so the above will work if you replace "state" by "seed". However the cost of that will be speed and a short length of the pseudo random sequence...

The Mersenne Twister hash is deterministic but you have to initialize each generator separately

octave:1> rande("state",123); rande()
ans =  0.27640
octave:2> rande("state",123); rande()
ans =  0.27640
octave:3> rande("state",123); rande()
ans =  0.27640

D.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]