Skip to content

Bugfix for status values of quasi-stable particles in the new-style truth handling

John Chapman requested to merge jchapman/athena:ATLPHYSVAL-960_bugfix2_main into main

Follows !63059 (merged). In the case that we are removing quasi-stable particle decays and child particles from the GenEvent before starting the (Geant4) simulation, then the status values of child particles produced by pre-defined quasi-stable particle decays should be set to 1 (or 2 if they themselves have pre-defined decays) rather than 20001 (the status value usually used to indicate a new secondary particle created during simulation).

Needed for ATLPHYSVAL-960

For reference: A quasi-stable particle is defined as one which has been decayed by the generator, but could potentially deposit energy in sensitive regions of the detector. It is therefore passed to Geant4, which propagates it through the detector then allows it to undergo its pre-defined decay.

Sketch of how GenParticle status should be updated for the new scheme.

Scenario Old status Old barcode New status
Nth Truth particle created+decayed during evgen (including particles produced in pre-defined decays) 2 N 2
Nth Truth Particle created, but not decayed during evgen (including particles produced in pre-defined decays) 1 N 1
Nth Secondary particle created by an interaction/decay during sim 1 200000 + N 20001
Generator created particle with has survived M interactions during sim (B = original barcode) 1 B + M*1000000 1 + M*100000
Secondary particle created during sim, which has survived M interactions (B = original barcode) 1 B + M*1000000 20001 + M*100000

Sketch of how GenVertex status should be updated for the new scheme.

Scenario Old status Old barcode New status
Nth Truth vertex created during evgen <1000 (generator specific) -N <1000 (same as old scheme)
Nth Truth vertex created during sim 1000 + G4 process -200000 - N 20000 + 1000 + G4 process

Merge request reports