1 |
#ifndef WWAnalysis_AnalysisStep_RochCor_h
|
2 |
#define WWAnalysis_AnalysisStep_RochCor_h
|
3 |
|
4 |
//// VERSION 4, taken from http://www-cdf.fnal.gov/~jyhan/cms_momscl/cms_rochcor_manual.html on 19 september 2012
|
5 |
//// moved static const float from .h to .cc to make the gcc434 happy
|
6 |
|
7 |
#include <iostream>
|
8 |
#include <TChain.h>
|
9 |
#include <TClonesArray.h>
|
10 |
#include <TString.h>
|
11 |
#include <map>
|
12 |
|
13 |
#include <TSystem.h>
|
14 |
#include <TROOT.h>
|
15 |
#include <TMath.h>
|
16 |
#include <TLorentzVector.h>
|
17 |
#include <TRandom3.h>
|
18 |
|
19 |
|
20 |
class rochcor {
|
21 |
public:
|
22 |
rochcor();
|
23 |
rochcor(int seed);
|
24 |
~rochcor();
|
25 |
|
26 |
void momcor_mc(TLorentzVector&, float, float, int, bool);
|
27 |
void momcor_data(TLorentzVector&, float, float, int);
|
28 |
|
29 |
void musclefit_data(TLorentzVector& , TLorentzVector&);
|
30 |
|
31 |
float zptcor(float);
|
32 |
int etabin(float);
|
33 |
int phibin(float);
|
34 |
|
35 |
private:
|
36 |
|
37 |
TRandom3 eran;
|
38 |
TRandom3 sran;
|
39 |
|
40 |
|
41 |
// static float netabin[9] = {-2.4,-2.1,-1.4,-0.7,0.0,0.7,1.4,2.1,2.4};
|
42 |
static const float netabin[9];
|
43 |
|
44 |
////^^^^^------------ GP BEGIN
|
45 |
static const double pi;
|
46 |
static const float genm_smr; //gen mass peak with eta dependent gaussian smearing => better match in Z mass profile vs. eta/phi
|
47 |
static const float genm; //gen mass peak without smearing => Z mass profile vs. eta/phi in CMS note
|
48 |
|
49 |
static const float recmA; //rec mass peak in MC (2011A)
|
50 |
static const float drecmA; //rec mass peak in data (2011A)
|
51 |
static const float mgsclA_stat; //stat. error of global factor for mass peak in MC (2011A)
|
52 |
static const float mgsclA_syst; //syst. error of global factor for mass peak in MC (2011A)
|
53 |
static const float dgsclA_stat; //stat. error of global factor for mass peak in data (2011A)
|
54 |
static const float dgsclA_syst; //syst. error of global factor for mass peak in data (2011A)
|
55 |
static const float recmB; //rec mass peak in MC (2011B)
|
56 |
static const float drecmB; //rec mass peak in data (2011B)
|
57 |
static const float mgsclB_stat; //stat. error of global factor for mass peak in MC (2011B)
|
58 |
static const float mgsclB_syst; //syst. error of global factor for mass peak in MC (2011B)
|
59 |
static const float dgsclB_stat; //stat. error of global factor for mass peak in data (2011B)
|
60 |
static const float dgsclB_syst; //syst. error of global factor for mass peak in data (2011B)
|
61 |
|
62 |
//iteration2 after FSR : after Z Pt correction
|
63 |
static const float deltaA;
|
64 |
static const float deltaA_stat;
|
65 |
static const float deltaA_syst;
|
66 |
|
67 |
static const float sfA;
|
68 |
static const float sfA_stat;
|
69 |
static const float sfA_syst;
|
70 |
|
71 |
static const float deltaB;
|
72 |
static const float deltaB_stat;
|
73 |
static const float deltaB_syst;
|
74 |
|
75 |
static const float sfB;
|
76 |
static const float sfB_stat;
|
77 |
static const float sfB_syst;
|
78 |
|
79 |
static const float apar; //+- 0.002
|
80 |
static const float bpar; //+- 1.57968e-06
|
81 |
static const float cpar; //+- 1.92775e-06
|
82 |
static const float d0par; //+- 3.16301e-06
|
83 |
static const float e0par; //+- 0.0249021
|
84 |
static const float d1par; //+- 1.12386e-05
|
85 |
static const float e1par; //+- 0.17896
|
86 |
static const float d2par; //+- 5.68386e-06
|
87 |
static const float e2par; //+- 0.0431732
|
88 |
////^^^^^------------ GP END
|
89 |
|
90 |
//---------------------------------------------------------------------------------------------
|
91 |
|
92 |
static const float dcor_bfA[8][8];
|
93 |
static const float dcor_maA[8][8];
|
94 |
static const float mcor_bfA[8][8];
|
95 |
static const float mcor_maA[8][8];
|
96 |
static const float dcor_bfAer[8][8];
|
97 |
static const float dcor_maAer[8][8];
|
98 |
static const float mcor_bfAer[8][8];
|
99 |
static const float mcor_maAer[8][8];
|
100 |
|
101 |
static const float dcor_bfB[8][8];
|
102 |
static const float dcor_maB[8][8];
|
103 |
static const float mcor_bfB[8][8];
|
104 |
static const float mcor_maB[8][8];
|
105 |
static const float dcor_bfBer[8][8];
|
106 |
static const float dcor_maBer[8][8];
|
107 |
static const float mcor_bfBer[8][8];
|
108 |
static const float mcor_maBer[8][8];
|
109 |
|
110 |
//=======================================================================================================
|
111 |
|
112 |
static const float dmavgA[8][8];
|
113 |
static const float dpavgA[8][8];
|
114 |
static const float mmavgA[8][8];
|
115 |
static const float mpavgA[8][8];
|
116 |
|
117 |
static const float dmavgB[8][8];
|
118 |
static const float dpavgB[8][8];
|
119 |
static const float mmavgB[8][8];
|
120 |
static const float mpavgB[8][8];
|
121 |
|
122 |
//===============================================================================================
|
123 |
//parameters for Z pt correction
|
124 |
static const int nptbins=84;
|
125 |
static const float ptlow[85];
|
126 |
|
127 |
static const float zptscl[84];
|
128 |
static const float zptscler[84];
|
129 |
|
130 |
float mptsys_mc_dm[8][8];
|
131 |
float mptsys_mc_da[8][8];
|
132 |
float mptsys_da_dm[8][8];
|
133 |
float mptsys_da_da[8][8];
|
134 |
|
135 |
};
|
136 |
|
137 |
#endif
|