Additional Options or features¶
added DIGITIZATION_TIMESTAMP option to pass to digitization routines
added DIGITIZATION_VARIATION option to be used by digitization routines.
added SHIFT_LUND_VERTEX option to shift a file generator vertex. example: -SHIFT_LUND_VERTEX=”(0, 0, -3)cm”
added entry “doubleRotation” for volume rotation: this must be followed by a set of 6 numbers with units, describing two consecutive euler rotations.
GUI background color changed to white
Double radius for hits above thresholds
added JSON ouput for all generator options
Thanks to Richard Holmes: added FILTER_HADRONS options: when set to 1, do not write events if there are no hadrons. Otherwise if nonzero write only events having a hadron with matching ID. For example -FILTER_HADRONS=2212 for protons. Also, do not print progress if evtN hasn’t changed.
added mirror hit process routine as standalone routine and bank
added FILTER_HITS options: when set to 1, do not write events if there are not hits.
Thanks to Richard Holmes: The RERUN_SELECTED option allows one to rerun multiple events whose RNG state was saved in a previous pass.
For example, suppose there is a rare background signature of an electron between 100 MeV and 1 GeV in detector ID 1000 and you want to visualize a few dozen such events to investigate where the background is coming from. You can do a batch run using
to save the RNG states for such events into the directory ./savedirectory. They are saved in files with names like run2event1322.rndm where 2 is the run number and 1322 is the event number. Then you can do an interactive run with the same gcard and option
Here 2 is the run number from the batch run. With this option, instead of generating new primaries as usual or reading them from the start of a generator input file, the same primaries as were used in the saved events are generated or read and they undergo the same processes as before, so these events can be visualized.
Similarly one could rerun these saved events in a batch run with both
to get an output file with the ancestors bank showing information on all trajectories leading to hits in those events. This avoids having to use SAVE_ALL_ANCESTORS=1 on the full run when ancestors for only a few events are of interest.
Thanks to Richard Holmes: SAVE_ALL_ANCESTORS option to save ancestral trajectory to output.
Implement ancestral trajectory saving to output. This is enabled with the option SAVE_ALL_ANCESTORS=1. Then information about any trajectories which are ancestral to hits in the detectors is written to a new bank named ancestors with bank tag 80.
This can be useful particularly in combination with the RNG saving, especially once we work up a convenient way to rerun multiple events with saved RNG: run with SAVE_SELECTED= and the default SAVE_ALL_ANCESTORS=0 to get the RNG for the few events of interest, then rerun them with SAVE_ALL_ANCESTORS=1, then do post-analysis of their trajectory history.
Thanks to Richard Holmes: SAVE_SELECTED option to save selected event RNG states:
Provides and implements a new command line option:-SAVE_SELECTED=“<id>, <pid>, <low limit>, <high limit>, <variable>, <directory>”
This tells GEMC to save the RNG state in a file in directory for events in which there is a hit satisfying: Detector ID matches <id> in all digit positions where <id> does not contain ‘x’ AND
Particle ID is <pid> AND <variable> is in the range from <low limit> to <high limit> <directory> is optional and defaults to the current directory
SAVE_SELECTED=”7xx10000, 11, 0.0MeV, 2000MeV, trackE, ./”
saves RNG state in files in the current directory for events in which there was a hit in detectors 70010000, 70110000, 70210000, etc. by an electron with energy from 0 to 2 GeV.
Thanks to Zhiwen Zhao: fix cylindrical-x and cylindrical-y field map bug
Thanks to Zhiwen Zhao: fix bugs in linear interpolation in cartesian_3d
added hBertiniCaptureAtRest, to process catalogueq
added “PhotoNuclear” entry in the physics option list as a check that this part is not included with the normal phys list constructors.
For the complete list of all changes please visit the changelog.