ATLAS Offline Software
Bmumu_metadata.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
11 
12 namespace DerivationFramework {
13 
14  //--------------------------------------------------------------------------
15  Bmumu_metadata::Bmumu_metadata(const std::string& t,
16  const std::string& n,
17  const IInterface* p) :
19 
20  // configuration defaults etc.
21  recordPropertyI("verbose", 0);
22  recordPropertyB("isSimulation", false);
23  recordPropertyS("projectTag", "__NONE__");
24  recordPropertyB("isRelease21" , true);
25  recordPropertyS("mcCampaign", "__NONE__");
26  recordPropertyS("triggerStream", "__NONE__");
27 
28  // MC dataset number lists
29  recordPropertyVI("mcBsmumu" , {});
30  recordPropertyVI("mcBplusJpsiKplus" , {});
31  recordPropertyVI("mcBsJpsiPhi" , {});
32  recordPropertyVI("mcBplusJpsiPiplus", {});
33  recordPropertyVI("mcBhh" , {});
34 
35  // MC datasets without trigger information
36  recordPropertyVI("mcNoTrigger" , {});
37 
38  // special data runs
39  recordPropertyVI("specDataRuns", {});
40 
41  // special MC channels
42  recordPropertyVI("specMcChannels", {});
43 
44  // blind search
45  recordPropertyB("doBmumuBlinding" , true);
46  recordPropertyB("doCutBlinded" , true);
47  recordPropertyB("blindOnlyAllMuonsTight", true);
48  recordPropertyS("BlindingKey" , "");
49  recordPropertyS("BlindedVars" , "");
50  recordPropertyS("BlindingFlag" , "");
51 
52  // include trigger
53  recordPropertyB("doTriggerInfo" , true);
54 
55  // include soft B tagging vertex containers
56  recordPropertyB("doAddSoftBVertices" , true);
57 
58  // trigger navigation thinning
59  recordPropertyB("doTrigNavThinning", true);
60  recordPropertyVS("TrigNavThinList" , {});
61 
62  // wide mumu mass range
63  recordPropertyB("doUseWideMuMuMassRange", false);
64 
65  // use mass calculated using the combined muon track information in cuts?
66  recordPropertyB("useMuCalcMass", true);
67 
68  // use calibrated muons instead of the original ones
69  recordPropertyI("useCalibratedMuons", 0);
70 
71  // adjust primary track to muon kinematics for MUCALC mass
72  recordPropertyB("adjustMucalcKinematics", false);
73 
74  // add MUCALC mass from non-modified muons for debugging
75  recordPropertyB("addMucalcMassForDebug", false);
76 
77  // primary vertex types to consider for MinChi2ToAnyPV
78  recordPropertyVI("MinChi2ToAnyPVTypes", {1, 3});
79 
80  // JpsiFinder: muAndMu or TrackAndTrack option?
81  recordPropertyB("JfTwoMuons" , true );
82  recordPropertyB("JfTwoTracks", false);
83 
84  // JpsiFinder: TrackThresholdPt
85  recordPropertyD("JfTrackThresholdPt", 0.);
86 
87  // muon calibration and smearing tool configuration
88  recordPropertyS("McstYear" , "Data16");
89  recordPropertyS("McstRelease" , "_NONE_");
90  recordPropertyB("McstStatComb" , true);
91  recordPropertyB("McstSagittaCorr" , true);
92  recordPropertyS("McstSagittaRelease" , "_NONE_");
93  recordPropertyB("McstDoSagittaMCDistortion", false);
94  recordPropertyB("McstSagittaCorrPhaseSpace", true);
95 
96  // muon collections
97  recordPropertyS("MuonCollection" , "Muons");
98  recordPropertyS("CalMuonCollection" , "Muons");
99  recordPropertyS("UsedMuonCollection" , "Muons");
100  recordPropertyVS("AllMuonCollections", {} );
101 
102  // Global mass values (in MeV, from PDG 2015)
103  recordPropertyD("GlobalMuonMass" , 105.6584);
104  recordPropertyD("GlobalPionMass" , 139.57061);
105  recordPropertyD("GlobalKaonMass" , 493.677 );
106  recordPropertyD("GlobalJpsiMass" , 3096.92 );
107  recordPropertyD("GlobalBplusMass", 5279.29 );
108  recordPropertyD("GlobalB0Mass" , 5279.61 );
109  recordPropertyD("GlobalBsMass" , 5366.79 );
110 
111  // mass ranges
112  recordPropertyD("GlobalBMassUpperCut" , 7000.);
113  recordPropertyD("GlobalBMassLowerCut" , 3500.);
114  recordPropertyD("GlobalDiMuonMassUpperCut", 7000.);
115  recordPropertyD("GlobalDiMuonMassLowerCut", 2000.);
116  recordPropertyD("GlobalJpsiMassUpperCut" , 7000.);
117  recordPropertyD("GlobalJpsiMassLowerCut" , 2000.);
118  recordPropertyD("GlobalBlindUpperCut" , 5166.);
119  recordPropertyD("GlobalBlindLowerCut" , 5526.);
120  recordPropertyD("GlobalTrksMassUpperCut" , 7500.);
121  recordPropertyD("GlobalTrksMassLowerCut" , 3000.);
122 
123  // Global chi2 cut for vertexing
124  recordPropertyD("GlobalChi2CutBase", 15.0);
125  // Different chi2 cuts for 2-, 3- and 4-prong vertices
126  recordPropertyD("Chi2Cut2Prong" , 30.0);
127  recordPropertyD("Chi2Cut3Prong" , 45.0);
128  recordPropertyD("Chi2Cut4Prong" , 60.0);
129 
130  // Cut values for kaon candidates
131  recordPropertyD("GlobalKaonPtCut" , 1000.); // MeV
132  recordPropertyD("GlobalKaonEtaCut", 2.5 );
133 
134  // MCP cuts for JpsiFinder
135  recordPropertyB("useJpsiFinderMCPCuts", false);
136 
137  // reject muons in JpsiPlus1Track or JpsiPlus2Track finders
138  recordPropertyS("GlobalMuonsUsedInJpsi", "NONE"); // turn off by default
139 
140  // run number
141  recordPropertyI("runNumber", -1);
142 
143  // MC channel number
144  recordPropertyI("mcChNumber", -1);
145 
146  // channels to be processed
147  recordPropertyVS("doChannels", {});
148 
149  // vertex types to be done
150  recordPropertyI("doVertexType", 7);
151 
152  // minimum number of tracks in PV considered for PV association
153  recordPropertyI("minNTracksInPV", 0);
154 
155  // mode of minLogChi2ToAnyPV calculation
156  recordPropertyI("AddMinChi2ToAnyPVMode", 0);
157 
158  // record 3-dimensional proper time in addition
159  recordPropertyB("do3dProperTime", false);
160 
161  // thinning level
162  recordPropertyI("thinLevel", 0);
163 
164  // selection expression
165  recordPropertyS("SelExpression", "");
166 
167  // MC truth decay parents
168  recordPropertyVI("TruthDecayParents", {});
169 
170  // vertex isolation properties
171  recordPropertyVS("IsoTrackCategoryName" , {});
172  recordPropertyVS("IsoTrackCutLevel" , {});
173  recordPropertyVD("IsoTrackPtCut" , {});
174  recordPropertyVD("IsoTrackEtaCut" , {});
175  recordPropertyVI("IsoTrackPixelHits" , {});
176  recordPropertyVI("IsoTrackSCTHits" , {});
177  recordPropertyVI("IsoTrackbLayerHits" , {});
178  recordPropertyVI("IsoTrackIBLHits" , {});
179  recordPropertyVD("IsolationConeSizes" , {});
180  recordPropertyVD("IsoTrkImpLogChi2Max" , {});
181  recordPropertyVI("IsoDoTrkImpLogChi2Cut", {});
182  recordPropertyVL("useIsoTrackTypes" , {});
183  recordPropertyB("IsoUseOptimizedAlgo" , true);
184  recordPropertyS("IsoTvaWorkingPoint" , "Nominal");
185  recordPropertyVS("IsoIncludes" , {});
186 
187 
188  // muon isolation properties (muons of B candidate)
189  recordPropertyVS("MuIsoTrackCategoryName" , {});
190  recordPropertyVS("MuIsoTrackCutLevel" , {});
191  recordPropertyVD("MuIsoTrackPtCut" , {});
192  recordPropertyVD("MuIsoTrackEtaCut" , {});
193  recordPropertyVI("MuIsoTrackPixelHits" , {});
194  recordPropertyVI("MuIsoTrackSCTHits" , {});
195  recordPropertyVI("MuIsoTrackbLayerHits" , {});
196  recordPropertyVI("MuIsoTrackIBLHits" , {});
197  recordPropertyVD("MuIsolationConeSizes" , {});
198  recordPropertyVD("MuIsoTrkImpLogChi2Max" , {});
199  recordPropertyVI("MuIsoDoTrkImpLogChi2Cut", {});
200  recordPropertyVL("useMuIsoTrackTypes" , {});
201  recordPropertyS("MuIsoTvaWorkingPoint" , "Nominal");
202  recordPropertyVS("MuIsoIncludes" , {});
203 
204  // closest track properties
205  recordPropertyVS("CloseTrackCategoryName" , {});
206  recordPropertyVS("CloseTrackCutLevel" , {});
207  recordPropertyVD("CloseTrackPtCut" , {});
208  recordPropertyVD("CloseTrackEtaCut" , {});
209  recordPropertyVI("CloseTrackPixelHits" , {});
210  recordPropertyVI("CloseTrackSCTHits" , {});
211  recordPropertyVI("CloseTrackbLayerHits" , {});
212  recordPropertyVI("CloseTrackIBLHits" , {});
213  recordPropertyVL("useCloseTrackTypes" , {});
214  recordPropertyVS("CloseTrackChi2SetName" , {});
215  recordPropertyVI("CloseTrackCorrChi2" , {});
216  recordPropertyVB("CloseTrackMinDCAin3D" , {});
217  recordPropertyVD("CloseTrackMaxLogChi2" , {});
218  recordPropertyVD("NCloseTrackMaxLogChi2" , {});
219  recordPropertyS("CloseTrackTvaWorkingPoint", "Nominal");
220  recordPropertyVS("CloseTrackIncludes" , {});
221 
222  // debug track types for isolation and closest track tools
223  recordPropertyI("DebugTrackTypes", 0);
224 
225  // track-to-vertex association check tool
226  recordPropertyI("DebugTrkToVtxMaxEvents" , 0);
227 
228  // output containers and branch prefixes
229  // (mostly used for isolation tools)
230  recordPropertyS("TrkPartContName", "InDetTrackParticles");
231  recordPropertyS("PVContName" , "PrimaryVertices");
232  recordPropertyVS("VtxContNames" , {} );
233  recordPropertyVS("RefPVContNames", {} );
234  recordPropertyVS("BranchPrefixes", {} );
235 
236  }
237  //--------------------------------------------------------------------------
238 } // namespace
DerivationFramework::BPhysMetadataBase::recordPropertyD
virtual void recordPropertyD(const std::string &name, double val)
Definition: BPhysMetadataBase.cxx:176
DerivationFramework::BPhysMetadataBase::recordPropertyB
virtual void recordPropertyB(const std::string &name, bool val)
Definition: BPhysMetadataBase.cxx:181
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Bmumu_metadata.h
Store JO metadata specific to the Bmumu analysis.
DerivationFramework::BPhysMetadataBase::recordPropertyVD
virtual void recordPropertyVD(const std::string &name, const std::vector< double > &val)
Definition: BPhysMetadataBase.cxx:203
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
DerivationFramework::Bmumu_metadata::Bmumu_metadata
Bmumu_metadata(const std::string &t, const std::string &n, const IInterface *p)
Main constructor.
Definition: Bmumu_metadata.cxx:15
beamspotman.n
n
Definition: beamspotman.py:731
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::BPhysMetadataBase::recordPropertyVL
virtual void recordPropertyVL(const std::string &name, const std::vector< long > &val)
Definition: BPhysMetadataBase.cxx:197
DerivationFramework::BPhysMetadataBase::recordPropertyVB
virtual void recordPropertyVB(const std::string &name, const std::vector< bool > &val)
Definition: BPhysMetadataBase.cxx:209
DerivationFramework::BPhysMetadataBase::recordPropertyS
virtual void recordPropertyS(const std::string &name, const std::string &val)
Definition: BPhysMetadataBase.cxx:186
DerivationFramework::BPhysMetadataBase::recordPropertyVI
virtual void recordPropertyVI(const std::string &name, const std::vector< int > &val)
Definition: BPhysMetadataBase.cxx:191
AthAlgTool
Definition: AthAlgTool.h:26
DerivationFramework::BPhysMetadataBase::recordPropertyVS
virtual void recordPropertyVS(const std::string &name, const std::vector< std::string > &val)
Definition: BPhysMetadataBase.cxx:215
DerivationFramework::BPhysMetadataBase::recordPropertyI
virtual void recordPropertyI(const std::string &name, int val)
Definition: BPhysMetadataBase.cxx:166
DerivationFramework::BPhysMetadataBase
Definition: BPhysMetadataBase.h:44