SusyNtuple
|
00001 // Dear emacs, this is -*- c++ -*- 00002 #ifndef SUSYNTUPLE_JET_H 00003 #define SUSYNTUPLE_JET_H 00004 00005 #include "SusyNtuple/Particle.h" 00006 #include "SusyNtuple/SusyNtSys.h" 00007 00008 namespace Susy 00009 { 00011 class Jet : public Particle 00012 { 00013 public: 00014 Jet(){ clear(); } 00015 virtual ~Jet(){}; 00016 Jet(const Jet &); 00018 Jet& operator=(const Jet &); 00019 00020 float jvf; 00021 float jvt; 00022 float detEta; 00023 float emfrac; 00024 int truthLabel; 00025 bool matchTruth; 00026 int nTracks; 00027 00028 // btagging 00029 bool bjet; 00030 float effscalefact; 00031 float mv1; 00032 float mv2c20; 00033 float sv1plusip3d; 00034 00035 // Flags/variables for cleaning 00036 bool isBadVeryLoose; 00037 bool isHotTile; 00038 float bch_corr_jet; 00039 float bch_corr_cell; 00040 00041 bool isBadMediumBCH; 00042 bool isBadMediumBCH_up; 00043 bool isBadMediumBCH_dn; 00044 bool isBadTightBCH; 00045 00046 // Systematics 00047 float jer; 00048 std::vector<float> groupedNP; 00049 std::vector<float> FTSys; 00050 00051 //ADD SYS!!! 18x2 + JER 00052 /* 00053 std::vector<float> bjes; 00054 std::vector<float> effNp; 00055 std::vector<float> etaInter; 00056 std::vector<float> flavor; 00057 std::vector<float> pileup; 00058 std::vector<float> punchThrough; 00059 std::vector<float> singlePart; 00060 //std::vector<float> relativeNC; 00061 */ 00062 00063 // Shift energy for systematic 00064 void setState(int sys); 00065 00066 // Return flavor tag systematics 00067 float getFTSys(Susy::NtSys::SusyNtSys sys); 00068 void setFTSys(Susy::NtSys::SusyNtSys sys, double scale); 00069 00070 // Print method 00071 void print() const; 00072 00073 // Clear vars 00074 void clear(){ 00075 jvf = jvt = truthLabel = nTracks = 0; 00076 matchTruth = false; 00077 bjet = false; 00078 effscalefact = 0.; 00079 detEta = 0; 00080 emfrac = 0; 00081 mv1 = sv1plusip3d = mv2c20 = 0; 00082 isBadVeryLoose = isHotTile = false; 00083 bch_corr_jet = bch_corr_cell = 0; 00084 isBadMediumBCH = isBadMediumBCH_up = isBadMediumBCH_dn = isBadTightBCH = false; 00085 00086 jer = 0; 00087 groupedNP.resize(3*2,0.0); 00088 FTSys.resize(26*2,0.0); 00089 00090 /* 00091 bjes.resize(2,0.0); 00092 effNp.resize(6*2,0.0); 00093 etaInter.resize(2*2,0.0); 00094 flavor.resize(2*2,0.0); 00095 pileup.resize(4*2,0.0); 00096 punchThrough.resize(2,0.0); 00097 //relativeNC.resize(2,0.0); 00098 singlePart.resize(2,0.0); 00099 */ 00100 00101 00102 Particle::clear(); 00103 } 00104 00105 ClassDef(Jet, 18); 00106 }; 00107 } // Susy 00108 #endif