[BLAST_ANAWARE] blastmc users: randomization bug found

From: Aaron Joseph Maschinot (ajmasch@MIT.EDU)
Date: Sat Sep 25 2004 - 10:35:30 EDT


yesterday, i became aware of a bug in blastmc that caused geant to always
generate the same sequence of random numbers. basically, the random
number seeds that the user entered via the RNDM command in the fort.99
file were always being ignored by GEANT. as such, it always produced the
same string of random numbers when used.

it's not quite as bad as it sounds. first of all, this applies only to
blastmc, not dgen. there are two places where random numbers are used
in the full dgen-blastmc monte carlo:

  1) to generate randomly distributed initial kinematics of events

  2) to apply random physics processes (e.g. multiple scattering, energy
     loss, etc.) to particles after step 1) has occurred and the
     generated particles are traversing through the detector/hardware
     setup

step 1) is handled by dgen, not blastmc. as such, this bug does not apply
to the generation of events as long as you've been using dgen (which i
think everyone has). (on the other hand, if you've been using one of
blastmc's paltry event generators, then, yes, this bug unfortunately
applies to you and any files you've generated.)

step 2) is the one that blastmc handles. thus, the same string of random
numbers has been being applied to the physics processes that blastmc has
been applying to propagating particles. however, it's still not quite
as bad as it sounds. since dgen has been handling the event generation
randomness, it follows that the string of random numbers that GEANT uses
will still be applied differently to particles. well, what i mean is
that while the same random numbers are being applied, the randomness of
the event generator means that some events will have longer and shorter
paths (just from different random initial kinematics). different path
lengths will use up different numbers of random numbers generating
physics processes along them. thus, e.g., just because the 44th random
number was an energy loss value in one run doesn't mean that it will be
an energy loss value in all subsequent runs (provided dgen has been
applying randomness correctly). instead, depending on the path length of
the previous events, the 44th random number might be used for a multiple
scattering value or some internal random number or something else. as
such, while using the same string is random numbers is not ideal, it
doesn't mean that the files that have been generated are useless.

and, if you've somehow managed to use only a single monte carlo file for
your analysis, then you can pretty much disregard this e-mail entirely.
this e-mail only applies to subsequent runnings of geant.

i have since fixed the bug. please update your blastmc and Blast_Params
directories. in particular, open the new fort.99 file and check out the
new form of the RNDM command. different strings of random numbers are
generated by this command. you can read the documentation there to see
how to impose your own choice of random number string. *** MAKE SURE YOU
PICK A DIFFERENT VALUE FOR THE RNDM COMMAND FOR EACH MONTE CARLO RUN YOU
GENERATE!!! ***

sorry about this...

aaron



This archive was generated by hypermail 2.1.2 : Mon Feb 24 2014 - 14:07:31 EST