Closed omar-moreno closed 3 years ago
This is already enabled using a specific format that we made up for the LHEPrimaryGenerator
.
i.e. You can insert the vertex that you want into the LHE file for each event separately.
<event>
...normal LHE format for particles and their momenta...
#vertex x y z [t]
</event>
where the time t
is optional. This would have to be done manually using e.g. a python script.
Without any modification to ldmx-sw, a person could use two primary generators and a time-offset between them in order to have both a dark brem vertex and a A' decay vertex anywhere you want in our detector volumes. If this sounds interesting, reach out because we have a script generating LHE files for cosmic muons that is a good place to start. Of course, the downside to this method is that there cannot be any action upstream of the dark brem vertex.
Now if you are talking about enabling the A' generated by the dark brem process to decay later in the event, that would require more of an effort. The best solution would be to write another custom process APrimeDecay
that would be attached to the A'. We could (similar to the dark brem process) read in an LHE file of A' decays to use for reference if there isn't an analytic method for randomly determing the outgoing particles and their kinematics.
General idea we reached after discussing on slack.
Implementing a custom primary generator which uses the current LHE reader and does the following steps.
Since the A' won't interact with anything else, we can safely put its decay products in as "primaries". We may need to do some fiddling with the A''s track settings using a filter in order to avoid any shenanigans or we could avoid adding the A' at all and only include the visible particles.
@jmlazaro25 is using the two LHE solution so I'm closing this issue.
This is required when looking at long lived visibly decaying dark photons.