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