6def createHIRecConfigFlags():
7 flags=AthConfigFlags()
8
9 flags.addFlag("HeavyIon.doGlobal", True)
10 flags.addFlag("HeavyIon.Global.doEventShapeSummary", True)
11 flags.addFlag("HeavyIon.Global.EventShape", "HIEventShape")
12
13 flags.addFlag("HeavyIon.doJet", True)
14 flags.addFlag("HeavyIon.Jet.doTrackJetSeed", True)
15 flags.addFlag("HeavyIon.Jet.ApplyTowerEtaPhiCorrection", lambda prevFlags: prevFlags.Reco.HIMode is HIMode.HI)
16 flags.addFlag("HeavyIon.Jet.HarmonicsForSubtraction", lambda prevFlags: [2, 3, 4] if prevFlags.Reco.HIMode is HIMode.HI else [])
17 flags.addFlag("HeavyIon.Jet.SeedPtMin", lambda prevFlags: 25000 if prevFlags.Reco.HIMode is HIMode.HI else 8000)
18 flags.addFlag("HeavyIon.Jet.RecoOutputPtMin", lambda prevFlags: 25000 if prevFlags.Reco.HIMode is HIMode.HI else 8000)
19 flags.addFlag("HeavyIon.Jet.TrackJetPtMin", lambda prevFlags: 7000 if prevFlags.Reco.HIMode is HIMode.HI else 4000)
20 flags.addFlag("HeavyIon.Jet.HIClusterGeoWeightFile", "auto")
21 flags.addFlag("HeavyIon.Jet.ClusterKey", lambda prevFlags: "DFHIClusters" if prevFlags.HeavyIon.isDerivation else "HIClusters")
22 flags.addFlag("HeavyIon.Jet.Internal.ClusterKey", lambda prevFlags: "DFHIClusters_temp" if prevFlags.HeavyIon.isDerivation else "HIClusters_temp")
23 flags.addFlag("HeavyIon.Jet.WriteHIClusters", lambda prevFlags: prevFlags.Reco.HIMode is not HIMode.UPC)
24 flags.addFlag("HeavyIon.Jet.RValues", [2,4])
25 flags.addFlag("HeavyIon.Jet.CaliRValues", ["2","3","4","10"])
26
27 flags.addFlag("HeavyIon.Egamma.doSubtractedClusters", lambda prevFlags: prevFlags.Reco.HIMode is HIMode.HI)
28 flags.addFlag("HeavyIon.Egamma.EventShape", "HIEventShape_iter_egamma")
29 flags.addFlag("HeavyIon.Egamma.SubtractedCells", "SubtractedCells")
30 flags.addFlag("HeavyIon.Egamma.UncalibCaloTopoCluster", "SubtractedCaloTopoClusters")
31 flags.addFlag("HeavyIon.Egamma.EgammaTopoCluster", "SubtractedEgammaTopoClusters")
32 flags.addFlag("HeavyIon.Egamma.CaloTopoCluster", lambda prevFlags: "SubtractedCaloCalTopoClusters" if prevFlags.Calo.TopoCluster.doTopoClusterLocalCalib else prevFlags.HeavyIon.Egamma.UncalibCaloTopoCluster)
33
34 flags.addFlag("HeavyIon.redoTracking", True)
35 flags.addFlag("HeavyIon.redoEgamma", True)
36
37 flags.addFlag("HeavyIon.isDerivation", False)
38 flags.addFlag("HeavyIon.HIJetPrefix", lambda prevFlags: "DF" if prevFlags.HeavyIon.isDerivation else "")
39 flags.addFlag("HeavyIon.doHIBTagging", True)
40 flags.addFlag("HeavyIon.FTagModifiers", lambda prevFlags: ["QGTagging", "NNJVT"] if prevFlags.HeavyIon.doHIBTagging else [] )
41 flags.addFlag("HeavyIon.FTagTruthModifiers", lambda prevFlags: ["JetGhostLabel", "JetGhostInitialLabel", "PartonTruthLabel", "JetDeltaRInitialLabel:5000", "JetDeltaRLabel:5000"] if prevFlags.HeavyIon.doHIBTagging and prevFlags.Input.isMC else [] )
42 flags.addFlag("HeavyIon.MinTrackPt", 0.9)
43
44
45 return flags