I am currently investigating the importance sampling being used in the B02 example and am not quite understanding how the TrackIDs and ParentIDs are being set for the newly created tracks. In the source code it looks like the tracks are being copied using
new G4Track( G4Track& ), but this sets the IDs to 0. However, when I look at the tracks information they seem to have been assigned track and parent IDs similarly to how secondary particles are assigned. Where in the process of the new track creation does this happen?
Is there a way to track the split tracks as if they were primary particles? (e.g. anything with parentID == 0 is a primary particle in an analog simulation, but that’s not true in a simulation with importance sampling)