LDMX Software
|
Public Member Functions | |
BertiniEventTopologyProcess (bool count_light_ions=true) | |
virtual bool | acceptEvent () const =0 |
virtual bool | acceptProjectile (const G4HadProjectile &projectile) const =0 |
virtual bool | acceptTarget (const G4Nucleus &targetNucleus) const =0 |
G4HadFinalState * | ApplyYourself (const G4HadProjectile &projectile, G4Nucleus &targetNucleus) override |
void | cleanupSecondaries () |
constexpr bool | isLightIon (const int pdgCode) const |
Check if the PDG code corresponds to a light ion nucleus. | |
constexpr bool | skipCountingParticle (const int pdgcode) const |
Whether or not to include a particular particle type in any counting. | |
virtual void | incrementEventWeight (int N) |
Private Attributes | |
bool | count_light_ions_ |
Definition at line 33 of file BertiniEventTopologyProcess.h.
|
inline |
Definition at line 35 of file BertiniEventTopologyProcess.h.
|
override |
Definition at line 13 of file BertiniEventTopologyProcess.cxx.
void simcore::BertiniEventTopologyProcess::cleanupSecondaries | ( | ) |
Definition at line 4 of file BertiniEventTopologyProcess.cxx.
|
inlinevirtual |
Definition at line 125 of file BertiniEventTopologyProcess.h.
|
inlineconstexpr |
Check if the PDG code corresponds to a light ion nucleus.
Nuclear PDG codes are given by ±10LZZZAAAI So to find the atomic number, we first divide by 10 (to lose the I-component) and then take the modulo with 1000.
Definition at line 92 of file BertiniEventTopologyProcess.h.
Referenced by skipCountingParticle().
|
inlineconstexpr |
Whether or not to include a particular particle type in any counting.
Unless count_light_ions_ is set, we don't count anything with a nuclear PDG code. This is consistent with the counting behaviour used in the PhotoNuclearDQM.
If count_light_ions_ is set, we also match PDG codes for nuclei with atomic number < 4.
Definition at line 113 of file BertiniEventTopologyProcess.h.
References isLightIon().
|
private |
Definition at line 132 of file BertiniEventTopologyProcess.h.