ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h
(Generate patch)

Comparing UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h (file contents):
Revision 1.13 by khahn, Mon May 21 22:30:16 2012 UTC vs.
Revision 1.15 by khahn, Sun Jun 3 15:51:56 2012 UTC

# Line 1 | Line 1
1 + #include "Array.h"
2   #include "Electron.h"
3   #include "Muon.h"
4   #include "Vertex.h"
# Line 5 | Line 6
6   #include "PFCandidateCol.h"
7   #include "PileupEnergyDensity.h"
8  
9 + #include "TLorentzVector.h"
10 +
11   #include "MuonTools.h"
12   #include "ElectronTools.h"
13  
# Line 144 | Line 147
147   #define MUON_ISOMVA_LOOSE_FORPFID_CUT_OPT_BIN5  -0.9946
148   #endif
149  
150 < #define ELECTRON_REFERENCE_PFISO_CUT  0.25
151 < #define MUON_REFERENCE_PFISO_CUT      0.25
152 < /* #define ELECTRON_REFERENCE_PFISO_CUT  0.4  */
153 < /* #define MUON_REFERENCE_PFISO_CUT      0.4  */
150 > /* #define ELECTRON_REFERENCE_PFISO_CUT  0.25 */
151 > /* #define MUON_REFERENCE_PFISO_CUT      0.25 */
152 > #define ELECTRON_REFERENCE_PFISO_CUT  0.4  
153 > #define MUON_REFERENCE_PFISO_CUT      0.4  
154  
155   Float_t computePFMuonIso(const mithep::Muon *muon,
156 <                         const mithep::Vertex & vtx,
156 >                         const mithep::Vertex * vtx,
157                           const mithep::Array<mithep::PFCandidate> * fPFCandidates,
158                           const Double_t dRMax);
159  
160   Float_t computePFEleIso(const mithep::Electron *electron,
161 <                        const mithep::Vertex & fVertex,
161 >                        const mithep::Vertex * fVertex,
162                          const mithep::Array<mithep::PFCandidate> * fPFCandidates,
163                          const Double_t dRMax);
164  
165   SelectionStatus electronIsoSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
166 < SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
166 > SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex *, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
167   bool pairwiseIsoSelection( ControlFlags &, vector<SimpleLepton> &, float rho );
168   bool noIso(ControlFlags &, vector<SimpleLepton> &, float rho);
169  
170   void initMuonIsoMVA();
171   SelectionStatus muonIsoMVASelection(ControlFlags &ctrl,
172                                      const mithep::Muon * mu,
173 <                                    const mithep::Vertex & vtx,
173 >                                    const mithep::Vertex * vtx,
174                                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
175                                      const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
176                                      mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 176 | Line 179 | SelectionStatus muonIsoMVASelection(Cont
179   //hacked version
180   SelectionStatus muonIsoMVASelection(ControlFlags &ctrl,
181                                      const mithep::Muon * mu,
182 <                                    const mithep::Vertex & vtx,
182 >                                    const mithep::Vertex * vtx,
183                                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
184                                      float rho,
185                                      mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 184 | Line 187 | SelectionStatus muonIsoMVASelection(Cont
187                                      vector<const mithep::Electron*> electronsToVeto);
188   double muonPFIso04(ControlFlags &ctrl,
189                     const mithep::Muon * mu,
190 <                   const mithep::Vertex & vtx,
190 >                   const mithep::Vertex * vtx,
191                     const mithep::Array<mithep::PFCandidate> * fPFCandidates,
192                     const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
193                     mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 193 | Line 196 | double muonPFIso04(ControlFlags &ctrl,
196   // hacked version
197   double muonPFIso04(ControlFlags &ctrl,
198                     const mithep::Muon * mu,
199 <                   const mithep::Vertex & vtx,
199 >                   const mithep::Vertex * vtx,
200                     const mithep::Array<mithep::PFCandidate> * fPFCandidates,
201                     float rho,  // the hack
202                     mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 202 | Line 205 | double muonPFIso04(ControlFlags &ctrl,
205   //
206   SelectionStatus muonReferenceIsoSelection(ControlFlags &ctrl,
207                                            const mithep::Muon * mu,
208 <                                          const mithep::Vertex & vtx,
208 >                                          const mithep::Vertex * vtx,
209                                            const mithep::Array<mithep::PFCandidate> * fPFCandidates,
210                                            const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
211                                            mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 211 | Line 214 | SelectionStatus muonReferenceIsoSelectio
214   // hacked version
215   SelectionStatus muonReferenceIsoSelection(ControlFlags &ctrl,
216                                            const mithep::Muon * mu,
217 <                                          const mithep::Vertex & vtx,
217 >                                          const mithep::Vertex * vtx,
218                                            const mithep::Array<mithep::PFCandidate> * fPFCandidates,
219                                            float,
220                                            mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
# Line 221 | Line 224 | SelectionStatus muonReferenceIsoSelectio
224   void initElectronIsoMVA();
225   SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
226                                      const mithep::Electron * ele,
227 <                                    const mithep::Vertex & vtx,
227 >                                    const mithep::Vertex * vtx,
228                                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
229                                      const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
230                                      mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
# Line 230 | Line 233 | SelectionStatus electronIsoMVASelection(
233   //hacked version
234   SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
235                                      const mithep::Electron * ele,
236 <                                    const mithep::Vertex & vtx,
236 >                                    const mithep::Vertex * vtx,
237                                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
238                                          float rho,
239                                      mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
# Line 247 | Line 250 | float electronPFIso04(ControlFlags &ctrl
250   // hacked version
251   float electronPFIso04(ControlFlags &ctrl,
252                        const mithep::Electron * ele,
253 <                      const mithep::Vertex & vtx,
253 >                      const mithep::Vertex * vtx,
254                        const mithep::Array<mithep::PFCandidate> * fPFCandidates,
255                        float rho, // the hack
256                        mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
# Line 256 | Line 259 | float electronPFIso04(ControlFlags &ctrl
259   //
260   SelectionStatus electronReferenceIsoSelection(ControlFlags &ctrl,
261                                                const mithep::Electron * ele,
262 <                                              const mithep::Vertex & vtx,
262 >                                              const mithep::Vertex * vtx,
263                                                const mithep::Array<mithep::PFCandidate> * fPFCandidates,
264                                                const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
265                                                mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
# Line 265 | Line 268 | SelectionStatus electronReferenceIsoSele
268   // hacked version
269   SelectionStatus electronReferenceIsoSelection(ControlFlags &ctrl,
270                                                const mithep::Electron * ele,
271 <                                              const mithep::Vertex & vtx,
271 >                                              const mithep::Vertex * vtx,
272                                                const mithep::Array<mithep::PFCandidate> * fPFCandidates,
273                                                float,
274                                                mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
275                                                vector<const mithep::Muon*> muonsToVeto,
276                                                vector<const mithep::Electron*> electronsToVeto);
277 +
278 + double  dbetaCorrectedIsoDr03(ControlFlags & ctrl,
279 +                              const mithep::PFCandidate * photon,
280 +                              const mithep::Muon * mu, // need to veto          
281 +                              const mithep::Array<mithep::PFCandidate> * fPFCandidates);
282 +
283 + double  dbetaCorrectedIsoDr03(ControlFlags & ctrl,
284 +                              const mithep::PFCandidate * photon,
285 +                              const mithep::Electron * el, // need to veto              
286 +                              const mithep::Array<mithep::PFCandidate> * fPFCandidates);
287 +
288 + double  betaCorrectedIsoDr03(ControlFlags & ctrl,
289 +                             const mithep::PFCandidate * photon,
290 +                             const mithep::Muon * mu, // need to veto          
291 +                             const mithep::Array<mithep::PFCandidate> * fPFCandidates);
292 +
293 + double  betaCorrectedIsoDr03(ControlFlags & ctrl,
294 +                             const mithep::PFCandidate * photon,
295 +                             const mithep::Electron * el, // need to veto              
296 +                             const mithep::Array<mithep::PFCandidate> * fPFCandidates);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines