File indexing completed on 2024-04-06 12:23:26
0001 #ifndef PhysicsTools_Heppy_RochCor2012_h
0002 #define PhysicsTools_Heppy_RochCor2012_h
0003
0004
0005
0006
0007 #include <iostream>
0008
0009 #include <TChain.h>
0010 #include <TClonesArray.h>
0011 #include <TString.h>
0012 #include <map>
0013
0014 #include <TSystem.h>
0015 #include <TROOT.h>
0016 #include <TMath.h>
0017 #include <TLorentzVector.h>
0018 #include <TRandom3.h>
0019
0020 namespace heppy {
0021
0022 class RochCor2012 {
0023 public:
0024 RochCor2012();
0025 RochCor2012(int seed);
0026 ~RochCor2012();
0027
0028 void momcor_mc(TLorentzVector&, float, float, int);
0029 void momcor_data(TLorentzVector&, float, float, int);
0030
0031 void musclefit_data(TLorentzVector&, TLorentzVector&);
0032
0033 float zptcor(float);
0034 int etabin(float);
0035 int phibin(float);
0036
0037 private:
0038 TRandom3 eran;
0039 TRandom3 sran;
0040
0041
0042 static const float netabin[9];
0043
0044 static const double pi;
0045
0046 static const float genm_smr;
0047 static const float genm;
0048
0049 static const float mrecm;
0050 static const float drecm;
0051 static const float mgscl_stat;
0052 static const float mgscl_syst;
0053 static const float dgscl_stat;
0054 static const float dgscl_syst;
0055
0056
0057 static const float delta;
0058 static const float delta_stat;
0059 static const float delta_syst;
0060
0061 static const float sf;
0062 static const float sf_stat;
0063 static const float sf_syst;
0064
0065 static const float apar;
0066 static const float bpar;
0067 static const float cpar;
0068 static const float d0par;
0069 static const float e0par;
0070 static const float d1par;
0071 static const float e1par;
0072 static const float d2par;
0073 static const float e2par;
0074
0075
0076
0077
0078 static const float dcor_bf[8][8];
0079 static const float dcor_ma[8][8];
0080 static const float mcor_bf[8][8];
0081 static const float mcor_ma[8][8];
0082 static const float dcor_bfer[8][8];
0083 static const float dcor_maer[8][8];
0084 static const float mcor_bfer[8][8];
0085 static const float mcor_maer[8][8];
0086
0087
0088
0089 static const float dmavg[8][8];
0090 static const float dpavg[8][8];
0091 static const float mmavg[8][8];
0092 static const float mpavg[8][8];
0093
0094
0095
0096 static const int nptbins = 84;
0097 static const float ptlow[85];
0098
0099 static const float zptscl[84];
0100 static const float zptscler[84];
0101
0102 float mptsys_mc_dm[8][8];
0103 float mptsys_mc_da[8][8];
0104 float mptsys_da_dm[8][8];
0105 float mptsys_da_da[8][8];
0106
0107 float gscler_mc_dev;
0108 float gscler_da_dev;
0109 };
0110 }
0111
0112 #endif