|Message: Possible bug in /random/setSeeds||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
I have encountered what I think is a bug in the implementation of the /random/setSeeds UI command. If I give the command really big seeds (i.e. 64-bit unsigned ints - equivalent to unsigned long long) then the seeds get truncated to LONG_MAX, and all runs are identical.
I was able to invoke this behaviour with a line like this:
/random/setSeeds 13276097254191301585 12293527212019250050
In this case the first two lines of G4Master_currentRun.rndm generated by setting /random/setSavingFlag 1 were:
If I then use a different pair of seeds:
/random/setSeeds 13042601405858215769 11535660870399727092
I get the exact same starting condition:
After a little bit of digging, I found that in the method StoI of G4UIMessenger, the conversion to long int behaves strangely and returns LONG_MAX for values larger than LONG_MAX. This means it is very easy to accidentally seed simulations with identical seeds.
The solution is obviously to use seeds smaller than LONG_MAX (2147483647 or larger, depending on the system), but maybe a warning for seeds larger than this should be incorporated?