Please use the Savannah support thread sr #106967 for comments.
The existing Monte Carlo status code convention: 0 null entry 1 final state (not decayed or fragmented) 2 decayed or fragmented 3 documentation line 4-10 reserved for future standards 11-200 used by event generators and equivalent to a null entry 201- available for use by detector simulation, etc.
An overview of the status code discussion is in sr#.
The proposal of using the new status code 4 for a beam particle is accepted.
The proposal of considering status codes in the range 11-200 as equivalent to status code 2, instead of 0, is rejected.
Event generators do not all use status code 2 in the same way. The status code 2 should be used only for physical particles that have been decayed.
It is expected that status code 1 will be changed to status 2 if a particle that is not decayed by an event generator is subsequently decayed, e.g., during detector simulation. In fact, this convention is being followed.
HepMC does not enforce status code conventions, but it can provide helper functions.
HepMC will not ever change a status code, but does allow users to change status codes (e.g., when a particle decays during detector simulation).
New helper functions will be added to GenParticle. Users are invited to use these methods instead of checking the status code value directly.
- bool GenParticle::is_undecayed()
returns true only if status==1
- bool GenParticle::has_decayed()
returns true only if status==2
- bool GenParticle::is_beam()
returns true only if status==4
Please use the Savannah sr #106967 for comments.