Change Reference Time of Sensor Objects & MCParticles
Description
Currently, all recorded time stamps are relative to the event start time (i.e. start of particle tracking). While this is quite nice from a framework perspective, it is not very helpful when looking at sensor quantities, as everything is shifted by the particle arrival time at the given sensor.
Proposal
Change the timestamps of individual sensor objects such that they always refer to the arrival time of the MCParticle
instead of the global event time. The MCParticle
would then in addition store its arrival time at the sensor it belongs to, so all information is preserved.
Use cases
Whenever one is interested in time performance of sensors, as the reference point of time is always the deposition, i.e. the arrival time of the particle, and not the time when the particle started traveling down the beam line or was released by the source.
Feature checklist
Make sure these are completed before closing the issue, with a link to the relevant commit.
-
Change the way the time is calculated for DepositedCharge
, make sure subsequent objects such asPropagatedCharge
inherit this correctly -
Make sure the MCParticle
receives the proper arrival timestamp and that we are able to calculate the "global time" from this plus propagation information -
Add a section "Timing in Allpix Squared" to the user manual -
Add appropriate test cases for measuring time of MCParticle and DepositedCharge