ra4_macros  bede988c286599a3a84b77a4d788ac0a971e89f9
plot_mj_bdt_aux.hpp
Go to the documentation of this file.
1 // plot_mj_bdt_aux: trains various BDTs which combine MJ, njets, and HT. Plots ROCs with them
2 
3 #ifndef H_PLOT_MJ_BDT_AUX
4 #define H_PLOT_MJ_BDT_AUX
5 
6 #include <vector>
7 #include "TH1D.h"
8 #include "TGraph.h"
9 #include "TString.h"
10 
11 class marker_class {
12 public:
13  marker_class(float icut, float isize, int icolor, int istyle);
14  float cut, size;
15  int color, style;
16 };
17 
18 class sample_class {
19 public:
20  sample_class(TString ilabel, std::vector<TString> ifiles, TString icut="1");
21  TString label, cut;
22  std::vector<TString> files;
23 };
24 
25 class var_class {
26 public:
27  var_class(std::vector<sample_class> samples, TString ivarname, float iminx, float imaxx, TString ititle,
28  int icolor, int istyle=1, std::vector<marker_class> icuts=std::vector<marker_class>());
29  TString title, varname;
30  float minx, maxx;
31  std::vector<marker_class> cuts;
32  int color, style;
33  std::vector<sample_class> samples;
34 };
35 
36 class bdtvar_class {
37 public:
38  bdtvar_class(TString variable, TString name, char type, TString unit="GeV");
39  TString variable, name;
40  char type;
41  TString unit;
42 };
43 
44 class bdt_class {
45 public:
46  bdt_class(std::vector<bdtvar_class> ivars, TString isignal, TString ibkg);
47  std::vector<bdtvar_class> vars;
48  TString signal, bkg, name;
49 };
50 
51 TGraph MakeROC(TH1D &good, TH1D &bad, const bool less_is_better, std::vector<marker_class> cuts);
52 void DrawROC(std::vector<var_class> vars, TString cuts, TString tag);
53 void plotROC(TString bdtfolder);
54 void trainBDT(TString ntufolder, TString bdtfolder);
55 
56 
57 
58 
59 #endif
TGraph MakeROC(TH1D &good, TH1D &bad, const bool less_is_better, std::vector< marker_class > cuts)
TString signal
TString varname
std::vector< marker_class > cuts
void DrawROC(std::vector< var_class > vars, TString cuts, TString tag)
std::vector< TString > files
void plotROC(TString bdtfolder)
marker_class(float icut, float isize, int icolor, int istyle)
std::vector< bdtvar_class > vars
std::vector< sample_class > samples
void trainBDT(TString ntufolder, TString bdtfolder)