10 name = chainDict[
'chainName']
11 chainPart = chainDict[
'chainParts'][0]
12 cut_pt =
float(chainPart[
'threshold']) * GeV
13 ditau_tag_str = chainPart[
'ditauTag']
14 pattern =
r"ditauOmni([0-9]+)Trk([0-9])"
15 match = re.match(pattern, ditau_tag_str)
17 log.error(f
"Invalid ditau tag: {ditau_tag_str}")
18 raise ValueError(f
"Invalid ditau tag: {ditau_tag_str}")
19 id_cut =
float(f
'0.{match.group(1)}')
20 n_trk =
int(match.group(2))
22 log.error(f
"Invalid ditau tag: {ditau_tag_str}")
23 log.error(
"it doesn't make sense to require less than 3 tracks in a ditau subjet")
24 raise ValueError(f
"Invalid ditau tag: {ditau_tag_str}")
26 from AthenaConfiguration.ComponentFactory
import CompFactory
27 currentHypo = CompFactory.TrigDiTauHypoTool(
29 ditau_pt_threshold=cut_pt,
30 ditau_id_score=id_cut,
31 ditau_lead_max_trk=n_trk,
32 ditau_subl_max_trk=n_trk,