ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/IsolationTools.h
(Generate patch)

Comparing UserCode/MitPhysics/Utils/interface/IsolationTools.h (file contents):
Revision 1.10 by fabstoec, Wed Apr 6 18:03:48 2011 UTC vs.
Revision 1.23 by ceballos, Sat Apr 28 11:34:09 2012 UTC

# Line 13 | Line 13
13  
14   #include <TMath.h>
15   #include "MitAna/DataTree/interface/Track.h"
16 + #include "MitAna/DataTree/interface/Photon.h"
17   #include "MitAna/DataTree/interface/BasicCluster.h"
18   #include "MitAna/DataTree/interface/SuperCluster.h"
19   #include "MitAna/DataTree/interface/CaloTower.h"
# Line 21 | Line 22
22   #include "MitAna/DataTree/interface/ElectronCol.h"
23   #include "MitAna/DataTree/interface/PFCandidateCol.h"
24   #include "MitAna/DataTree/interface/TrackCol.h"
25 + #include "MitAna/DataTree/interface/DecayParticleCol.h"
26 + #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
27 + #include "MitPhysics/Utils/interface/ElectronTools.h"
28  
29   namespace mithep
30   {
# Line 38 | Line 42 | namespace mithep
42        static Double_t CaloTowerEmIsolation(const ThreeVector *p, Double_t extRadius,
43                                             Double_t intRadius, Double_t etLow,
44                                             const mithep::Collection<mithep::CaloTower> *caloTowers);
45 <      static Double_t PFMuonIsolation(const Muon *p, const PFCandidateCol *PFCands,
46 <                                      const Vertex *vertex, Double_t  delta_z, Double_t ptMin,
47 <                                      Double_t extRadius, Double_t intRadius, int isoType,
48 <                                      Double_t beta, const MuonCol *goodMuons,
49 <                                      const ElectronCol *goodElectrons);
45 >      static Double_t PFMuonIsolation(const Muon *p, const PFCandidateCol *PFCands, const Vertex *vertex,
46 >                                      Double_t  delta_z = 0.1, Double_t ptMin = 1.0,
47 >                                      Double_t extRadius = 0.4, Double_t intRadiusGamma = 0.07, Double_t intRadius = 0.0);
48 >      static Double_t PFMuonIsolation(const Muon *p, const PFCandidateCol *PFCands,
49 >                                      const MuonCol *goodMuons, const ElectronCol *goodElectrons,
50 >                                      const Vertex *vertex, Double_t  delta_z, Double_t ptMin,
51 >                                      Double_t extRadius, Double_t intRadiusGamma, Double_t intRadius);
52        static Double_t PFElectronIsolation(const Electron *p, const PFCandidateCol *PFCands,
53                                            const Vertex *vertex, Double_t  delta_z, Double_t ptMin,
54 <                                          Double_t extRadius, Double_t intRadius, int isoType,
55 <                                          Double_t beta, const MuonCol *goodMuons,
56 <                                          const ElectronCol *goodElectrons);
57 <      static Double_t BetaM(const TrackCol *tracks, const Muon *p, const Vertex *vertex,
54 >                                          Double_t extRadius, Double_t intRadius, Int_t PFCandidateType = -1);
55 >      static Double_t PFElectronIsolation(const Electron *p, const PFCandidateCol *PFCands,
56 >                                          const MuonCol *goodMuons, const ElectronCol *goodElectrons,
57 >                                          const Vertex *vertex, Double_t  delta_z, Double_t ptMin,
58 >                                          Double_t extRadius, Double_t intRadius, Int_t PFCandidateType = -1);
59 >      static Double_t PFElectronIsolation2012(const Electron *ele, const Vertex *vertex,
60 >                                              const PFCandidateCol *PFCands,
61 >                                              const PileupEnergyDensityCol *PileupEnergyDensity,
62 >                                              ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaTarget,
63 >                                              const ElectronCol *goodElectrons,
64 >                                              const MuonCol *goodMuons, Double_t dRMax = 0.4);
65 >       static Double_t BetaM(const TrackCol *tracks, const Muon *p, const Vertex *vertex,
66                              Double_t ptMin, Double_t  delta_z, Double_t extRadius,
67                              Double_t intRadius);
68        static Double_t BetaE(const TrackCol *tracks, const Electron *p, const Vertex *vertex,
# Line 63 | Line 77 | namespace mithep
77                                           Double_t etaStrip,
78                                           Double_t maxD0,
79                                           mithep::TrackQuality::EQuality,
80 <                                         const mithep::Collection<mithep::Track> *tracks);
80 >                                         const mithep::Collection<mithep::Track> *tracks,
81 >                                         UInt_t maxNExpectedHitsInner = 999,
82 >                                         const mithep::DecayParticleCol *conversions = 0);
83 >
84 >      // methods for Hgg BaseLien Selection. These isolation are stupid, but what can we do.... ;(
85 >      static Double_t CiCTrackIsolation(const mithep::Photon*,
86 >                                        const BaseVertex*,
87 >                                        Double_t extRadius,
88 >                                        Double_t intRadius,
89 >                                        Double_t ptLow,
90 >                                        Double_t etaStrip,
91 >                                        Double_t maxD0,
92 >                                        Double_t maxDZ,
93 >                                        const mithep::Collection<mithep::Track> *tracks,
94 >                                        unsigned int* worstVtxIdx = NULL,
95 >                                        const mithep::Collection<mithep::Vertex> *vtxs = NULL,
96 >                                        const mithep::Collection<mithep::Electron> *eles = NULL,
97 >                                        bool print=false,
98 >                                        double* ptmax=NULL,
99 >                                        double* dRmax=NULL);
100 >
101  
102      ClassDef(IsolationTools, 0) // Isolation tools
103    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines