babymaker  e95a6a9342d4604277fe7cc6149b6b5b24447d89
weight_tools.hh
Go to the documentation of this file.
1 // WEIGHT_TOOLS: Functions that deal with systematic weights
2 
3 #ifndef H_WEIGHT_TOOLS
4 #define H_WEIGHT_TOOLS
5 
6 #include "SimDataFormats/GeneratorProducts/interface/LHERunInfoProduct.h"
7 
9 
10 private:
11  std::vector<gen::WeightsInfo> theoryWeights;
12  std::vector<double> w_pu_up;
13  std::vector<double> w_pu_nom;
14  std::vector<double> w_pu_down;
15 
16 public:
17  // the enum index corresponds to the index of the variation
20  muFup=1,
22  muRup=3,
28  };
29 
30  float theoryWeight(variationType variation);
31  void getTheoryWeights(edm::Handle<LHEEventProduct> lhe_info);
32  float pileupWeight(unsigned int ntrupv_mean, int type);
33  float triggerEfficiency(int &nmus, int &nels, float &met, std::vector<float> &sys_trig);
34  float topPtWeight(float top_pt1,float top_pt2);
35  float isrWeight(float isrpt);
36  void getPDFWeights(std::vector<float> &sys_pdf, std::vector<float> &w_pdf);
37  weight_tools();
38  ~weight_tools();
39 };
40 
41 #endif
std::vector< double > w_pu_down
Definition: weight_tools.hh:14
float isrWeight(float isrpt)
void getTheoryWeights(edm::Handle< LHEEventProduct > lhe_info)
float pileupWeight(unsigned int ntrupv_mean, int type)
Definition: weight_tools.cc:47
float topPtWeight(float top_pt1, float top_pt2)
float theoryWeight(variationType variation)
std::vector< gen::WeightsInfo > theoryWeights
Definition: weight_tools.hh:11
std::vector< double > w_pu_nom
Definition: weight_tools.hh:13
float triggerEfficiency(int &nmus, int &nels, float &met, std::vector< float > &sys_trig)
Definition: weight_tools.cc:57
std::vector< double > w_pu_up
Definition: weight_tools.hh:12
void getPDFWeights(std::vector< float > &sys_pdf, std::vector< float > &w_pdf)