As discussed on JIRA, we can reduce some maintenance burden by using the generic TrigComboHypoTool
class to apply di-object selections (dphi
,dR
,invm
,mT
) when only kinematic selection is needed, i.e. no object-specific quality criteria. This tool cannot be used unambiguously on combinations of more than two objects.
To support the use case of legs with multiplicity=2, extensions were needed in the tool -- I took the opportunity to reorganise the code somewhat. We now require that:
- For a different-leg selection like
varAB
, this can only be applied to two legs of multiplicity 1. - For a same-leg selection like
varAA
, this can only be applied to one leg of multiplicity 2. If the chain is intended to select on a higher multiplicity, then the additional objects should be defined in extra legs. As an example, one chain had to be changed:HLT_e24_lhmedium_2g12_loose_02dRAB_L1EM20VH_3EM10VH
-->HLT_e24_lhmedium_g12_loose_g12_loose_02dRAB_02dRAC_L1EM20VH_3EM10VH
Previously, thedR
would always be done between the electron and the 2nd photon. Now the electron must be isolated from both photons explicitly.
For single-leg chains such as HLT_2mu6_10invmAA70_L1MU6
, we need to skip the leg-matching, as only the chain ID is appended.
Verified that the test chains w/o probe suffix using generic TrigComboHypoTool
match the feature/event counts of the signature-specific ComboHypoTools, and the event counts with probe suffix also agree, while the feature counts are substantially reduced.