Skiming.
11def HION15SkimmingToolCfg(flags):
12 """Configure the example skimming tool"""
13 acc = ComponentAccumulator()
14 JetColl = flags.HeavyIon.HIJetPrefix
15 ExtraData = []
16 ExtraData += ['xAOD::JetContainer/'+JetColl+'AntiKt2HIJets']
17 ExtraData += ['xAOD::JetContainer/'+JetColl+'AntiKt4HIJets']
18
19 acc.addSequence( seqAND("HION15Sequence") )
20 acc.getSequence("HION15Sequence").ExtraDataForDynamicConsumers = ExtraData
21 acc.getSequence("HION15Sequence").ProcessDynamicDataDependencies = True
22
23
24 filterList = []
25 from DerivationFrameworkHI import ListTriggers
26 from DerivationFrameworkTools.DerivationFrameworkToolsConfig import xAODStringSkimmingToolCfg
27 from CoolConvUtilities.ParticleTypeUtil import getTypeForRun
28 info=getTypeForRun(flags.Input.RunNumbers[0])
29 isSmallSystem = False
30 if (info.getBeam1Type() < 11) or (info.getBeam2Type() < 11):
31 isSmallSystem = True
32 if not flags.Input.isMC and not flags.Overlay.DataOverlay:
33 print(
'project: ', flags.Input.ProjectName,
', isSmallSystem: ', isSmallSystem)
34 TriggerDict = ListTriggers.GetTriggers(flags.Input.ProjectName, isSmallSystem)
35 for key in TriggerDict:
36 filterList_trig = []
37 expression = 'count('+JetColl+'AntiKt4HIJets.pt >' + str(TriggerDict[key]) + '*GeV) >=1 || count('+JetColl+'AntiKt2HIJets.pt >' + str(TriggerDict[key]) + '*GeV) >=1 '
38
39 HION15StringSkimmingTool = acc.addPublicTool(acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(
40 flags, name = "HION15StringSkimmingTool_"+key, expression = expression)), primary = True)
41 filterList_trig += [HION15StringSkimmingTool]
42
43 HION15TriggerSkimmingTool = CompFactory.DerivationFramework.TriggerSkimmingTool(name = "HION7TriggerSkimmingTool_"+key, TriggerListOR = [key])
44 acc.addPublicTool(HION15TriggerSkimmingTool)
45 filterList_trig += [HION15TriggerSkimmingTool]
46
47 HION15SkimmingTool_trig = CompFactory.DerivationFramework.FilterCombinationAND(name="HION7SkimmingTool_trig_"+key, FilterList=filterList_trig)
48 acc.addPublicTool(HION15SkimmingTool_trig)
49 filterList += [HION15SkimmingTool_trig]
50
51 else:
52 expression = 'count('+JetColl+'AntiKt2HIJets.pt > 15000) > 1 || count('+JetColl+'AntiKt4HIJets.pt > 15000) > 1'
53 HION15StringSkimmingTool = acc.addPublicTool(acc.getPrimaryAndMerge(xAODStringSkimmingToolCfg(
54 flags, name = "HION15StringSkimmingTool", expression = expression)), primary = True)
55 filterList += [HION15StringSkimmingTool]
56
57 HION15SkimmingTool = CompFactory.DerivationFramework.FilterCombinationOR(name="HION15SkimmingTool", FilterList=filterList)
58 acc.addPublicTool(HION15SkimmingTool, primary = True)
59
60 return(acc)
61
void print(char *figname, TCanvas *c1)