JeffersonLab / halld_sim

Simulation for the GlueX Experiment in Hall D
6 stars 10 forks source link

Inconsistent particle IDs in bggen_upd #301

Open aaust opened 1 year ago

aaust commented 1 year ago

A recent set of configuration files for bggen_upd do not follow the particle ID convention defined in particleType.h. This may cause problems in hdgeant4 and down the line from there.

Here is an example: https://github.com/JeffersonLab/halld_sim/blob/master/src/programs/Simulation/bggen_upd/run/run_sigmac_dstar_1.ffr#L74 Particle D*- is specified as 185 here, while it is 196 in the GlueX convention.

e-gen commented 11 months ago

BGGEN writes out the GEANT id number and the PDG code. The GEANT numbers are taken from GEANT3, up to id=49. GEANT4, as far as I understand, uses a name identifier rather than a number. Typically, all the short living particles decay in BGGEN, and only the long-living (as pi+ or Lambda0) are left to decay in GEANT. The BGGEN ids for these long-living particles match the table particleType.h. That table overwrote several GEANT3 definitions at id<49, replacing, for example, charmed particles with rhos etc. PYTHIA does not know the GEANT numbering and is using the unique PDG code. Potentially, one may want to leave a decay of, say, etaprime (missing in the GEANT3 numbering scheme id<50) to GEANT, if such decays are well simulated in GEANT. One can always redefine etaprime in BGGEN using a command *PARTICLE Also, reading in the BGGEN data with any other code, one can use the PDG particle code instead of the GEANT number. This code is unique, while the GEANT numbering is arbitrary.