On 8/23/2021 4:46 PM, Thierry Horsin via ntg-context wrote:
Hi everybody.
I wonder how does math.random() work in context. I found that this subject was discussed more than ten years ago by Otared and Taco and Thomas. It is clear to me how to obtain new results upon typesetting the same file by changing the value of math.randomseed (with os.time()).
If you don't change the seed, you get the same result upon each typesetting, and a seed is given in the .tuc file.
For example I have this:
["randomseed"]=0x1.0741c18b8a4ep-6
How do I use (and is it possible to) this value to have the same result of math.random() upon typesetting another file (with a different name) ?
I could provide a same fixed seed in both files, but for some reasons I would like to re-use some previous results of math.random() for which no seed was initially given in another .tex file.
You have to go low level ...
% \ctxlua{utilities.randomizer.setseed(0x1.0741c18b8a4ep-6)}
% \ctxlua{utilities.randomizer.setseed(0x1.6822232009d5p-5)}
\setrandomseed{123}
\starttext
test \randomnumber{1}{100}
test \randomnumber{1}{100}
test \randomnumber{1}{100}
\stoptext
btw, the 0x representation is lua's low level binary representation of a double.
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 |
www.pragma-ade.nl |
www.pragma-pod.nl-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist :
ntg-context@ntg.nl /
http://www.ntg.nl/mailman/listinfo/ntg-contextwebpage :
http://www.pragma-ade.nl /
http://context.aanhet.netarchive :
https://bitbucket.org/phg/context-mirror/commits/wiki :
http://contextgarden.net___________________________________________________________________________________