The event mixer as currently written has two configurations. A configuration that randomly chooses from the list of events within the file. And a second configuration that keeps the events in the order that they were originally in. The first configuration allows for the reuse of events, up to reuse with in the job. The second doesn't really allow for event reuse. Nova would like a third configuration. One that doesn't allow for the reuse of events within a job, but does randomize the events.
The reason that we need such a configuration is we intend to mix multiple events into one event. As the mixer is currently configured it is possible to rarely choose the sub-event twice (or more) times for mixing into the final output event. This creates a situation where two identical sub-events are overlaid on top of each other. For example two identical neutrino interactions would be placed in the detector occupying the same space at the same time.
#1 Updated by Rob Kutschke about 7 years ago
I would like to make sure that I understand. Suppose that I am reading a file of signal events using the RootInput source module and that I am mixing in background events from a mixing input file. For definiteness say that the input file contains events with event numbers 1...1000. Now suppose that I mix in exactly two of these background events for every signal event. If I select the random mode, you are saying that from time to time, the code might choose two copies of event 1 for the two mixed in events?
If so, this sounds to me like a bug in random mode. So I would phrase this as a request to fix the bug, not a request for a new mode.
#2 Updated by Christopher Green about 7 years ago
- Due date set to 09/30/2013
- Status changed from New to Accepted
- Target version set to 1.09.00
- Start date deleted (
- Estimated time set to 8.00 h
- SSI Package art added
- SSI Package deleted (
This is not a bug. When the mixing facilities were implemented, sampling with replacement was agreed upon as the implementation of the "random" mixing feature. That does carry with it a very small possibility that the same secondary event might be selected twice for mixing into a given primary event.
Sampling without replacement is certainly something that can be implemented as a new feature. It is more expensive in terms of memory, but not overly so.
#3 Updated by Rob Kutschke about 7 years ago
After the discussion at lunch today, we decided that we would like the random mode to ensure that, within a given primary event, the same mix-in event is not reused. It is OK if a mix-in is reused on subsequent event(s), even the next event. We understand, and are happy with, that feature of sampling with replacement.
To be complete. If the Detail module asks for N events, please ensure that the mixing code chooses N unique mix-in events.