ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/EGEnergyCorrector.h
Revision: 1.1
Committed: Thu Sep 8 15:51:23 2011 UTC (13 years, 7 months ago) by bendavid
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_025pre1
Log Message:
Add tool and required changes for photon energy regression

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id $
3     //
4     // EGEnergyCorrector
5     //
6     // Helper Class for photon Identification decisions.
7     //
8     // Authors: J.Bendavid
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef MITPHYSICS_UTILS_EGEnergyCorrector_H
12     #define MITPHYSICS_UTILS_EGEnergyCorrector_H
13    
14     #include "MitAna/DataTree/interface/Photon.h"
15     #include "MitAna/DataTree/interface/PhotonCol.h"
16     #include "MitAna/DataTree/interface/TrackCol.h"
17     #include "MitAna/DataTree/interface/Electron.h"
18     #include "MitAna/DataTree/interface/ElectronCol.h"
19     #include "MitAna/DataTree/interface/BaseVertex.h"
20     #include "MitAna/DataTree/interface/DecayParticleCol.h"
21     #include "MitAna/DataTree/interface/VertexCol.h"
22     #include "MitAna/DataTree/interface/BeamSpotCol.h"
23     #include "MitAna/DataTree/interface/TriggerObjectCol.h"
24     #include "MitAna/DataTree/interface/MCParticleCol.h"
25     #include "MitAna/DataTree/interface/SuperCluster.h"
26     #include "MitAna/DataTree/interface/SuperClusterCol.h"
27     #include "MitCommon/MathTools/interface/MathUtils.h"
28     #include "MitPhysics/Utils/interface/PhotonFix.h"
29     #include "MitPhysics/Utils/interface/PhotonTools.h"
30    
31    
32     class TRandom3;
33     namespace TMVA {
34     class Reader;
35     }
36    
37     namespace mithep {
38     class EGEnergyCorrector {
39     public:
40     EGEnergyCorrector();
41     ~EGEnergyCorrector();
42    
43     void Initialize(Bool_t ismc, TString phfixstring, TString phfixfile, TString ebweights, TString ebvarweights, TString eeweights, TString eevarweights);
44     Bool_t IsInitialized() const { return fIsInitialized; }
45    
46     void CorrectEnergyWithError(Photon *p);
47     std::pair<double,double> CorrectedEnergyWithError(const Photon *p);
48    
49     protected:
50     PhotonFix fPhFix;
51     TMVA::Reader *fReadereb;
52     TMVA::Reader *fReaderebvariance;
53     TMVA::Reader *fReaderee;
54     TMVA::Reader *fReadereevariance;
55    
56     TString fMethodname;
57    
58     Bool_t fIsInitialized;
59     Bool_t fIsMC;
60    
61     Float_t r9;
62     Float_t e5x5norm;
63     Float_t scrawe;
64     Float_t scpsenorm;
65     Float_t sceta;
66     Float_t scphi;
67     Float_t scetawidth;
68     Float_t scphiwidth;
69     Float_t hovere;
70     Float_t sigietaieta;
71     Float_t etac;
72     Float_t etas;
73     Float_t etam;
74     Float_t phic;
75     Float_t phis;
76     Float_t phim;
77     Float_t xz;
78     Float_t xc;
79     Float_t xs;
80     Float_t xm;
81     Float_t yz;
82     Float_t yc;
83     Float_t ys;
84     Float_t ym;
85    
86     Float_t fSpectator;
87    
88    
89     ClassDef(EGEnergyCorrector, 0) // Muon tools
90     };
91     }
92    
93     #endif