ra4_macros  bede988c286599a3a84b77a4d788ac0a971e89f9
Namespaces | Functions | Variables
make_card.cxx File Reference
#include "make_card.hpp"
#include <cstdlib>
#include <fstream>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <vector>
#include <string>
#include <unistd.h>
#include <getopt.h>
#include "TMath.h"
#include "TError.h"
#include "TSystem.h"
#include "gamma_params.hpp"
#include "small_tree_quick.hpp"
#include "timer.hpp"
#include "utilities.hpp"
#include "utilities_macros.hpp"

Go to the source code of this file.

Namespaces

 anonymous_namespace{make_card.cxx}
 

Functions

int main (int argc, char *argv[])
 
void GetOptions (int argc, char *argv[])
 
void GetCounts (small_tree_quick &tree, vector< GammaParams > &gp)
 
void CountsToGammas (double sumw, double sumw2, double sumw_backup, double sumw2_backup, double &nraw, double &weight)
 
size_t LookUpBin (small_tree_quick &tree)
 
void GetMCTotals (vector< GammaParams > &mc_gp, const vector< vector< GammaParams > > &bkg_gps)
 
void MockUpData (vector< double > &data, const vector< GammaParams > &sig_gp, const vector< vector< GammaParams > > &bkg_gps)
 
void GetBinMapping (size_t &nr1, vector< size_t > &r1_map, size_t &nr2, vector< size_t > &r2_map, size_t &nr3, vector< size_t > &r3_map, size_t &nr4, vector< size_t > &r4_map)
 
double sqr (double x)
 
void WriteFile (const vector< vector< GammaParams > > &bkg_gps, const vector< string > &bkg_names, const vector< GammaParams > &sig_gp, const vector< GammaParams > &mc_gp, const vector< double > &data_counts)
 
void GetGammaParameters (int &raw_out, double &weight_out, double raw_in, double weight_in, double pred_in)
 
double GetPred (const vector< double > &data, const vector< GammaParams > &mc_gp, const vector< GammaParams > &proc_gp, size_t ir1, size_t ir2, size_t ir3, size_t ir4)
 
void PrintGamma (ofstream &file, const vector< size_t > map, const string &name, size_t iregion, size_t nr1, size_t nr2, size_t nr3, size_t nr4, const vector< GammaParams > &gps, const vector< double > &preds, size_t iproc, size_t nbkgs)
 
string NoDecimal (double x)
 
void PrintSystematics (ofstream &file, size_t nbkgs)
 
void RepLogN (ofstream &file, double val, size_t nbkgs)
 
void RepAsymLogN (ofstream &file, double minus, double plus, size_t nbkgs)
 
string Expand (string in, size_t size)
 
void GammaToLogN13 (ofstream &file, const vector< size_t > &map, size_t nr1, size_t nr2, size_t nr4, const vector< double > &counts, size_t nbkgs)
 
void GammaToLogN2 (ofstream &file, const vector< size_t > &map, size_t nr1, size_t nr2, size_t nr4, const vector< double > &counts, size_t nbkgs)
 
void GammaToLogN13 (ofstream &file, const vector< size_t > &map, size_t nr1, size_t nr2, size_t nr4, const vector< vector< GammaParams > > &gps)
 
void GammaToLogN2 (ofstream &file, const vector< size_t > &map, size_t nr1, size_t nr2, size_t nr4, const vector< vector< GammaParams > > &gps)
 
void PrintDebug (const vector< GammaParams > &gps, const string &name)
 

Variables

int anonymous_namespace{make_card.cxx}::method = 0
 
std::string anonymous_namespace{make_card.cxx}::ntuple_date = "2015_06_05"
 
double anonymous_namespace{make_card.cxx}::lumi = 10.
 
double anonymous_namespace{make_card.cxx}::mc_multiplier = 1.
 
bool anonymous_namespace{make_card.cxx}::no_mc_kappa = false
 
bool anonymous_namespace{make_card.cxx}::no_systematics = false
 
std::string anonymous_namespace{make_card.cxx}::mgluino = "1500"
 
std::string anonymous_namespace{make_card.cxx}::mlsp = "100"
 
double anonymous_namespace{make_card.cxx}::inject_signal = 0.
 
bool anonymous_namespace{make_card.cxx}::do_tk_veto = false
 
double anonymous_namespace{make_card.cxx}::mt_min = 0.
 
double anonymous_namespace{make_card.cxx}::mt_div = 140.
 
double anonymous_namespace{make_card.cxx}::mj_min = 0.
 
double anonymous_namespace{make_card.cxx}::mj_div = 400.
 
int anonymous_namespace{make_card.cxx}::njets_min = 7
 
int anonymous_namespace{make_card.cxx}::njets_div = 9
 
double anonymous_namespace{make_card.cxx}::met_min = 200.
 
double anonymous_namespace{make_card.cxx}::met_div = 400.
 
double anonymous_namespace{make_card.cxx}::ht_min = 500.
 
int anonymous_namespace{make_card.cxx}::nb_min = 2
 
int anonymous_namespace{make_card.cxx}::nb_div = 3
 
bool anonymous_namespace{make_card.cxx}::verbose = false
 
bool anonymous_namespace{make_card.cxx}::set_method = false
 
bool anonymous_namespace{make_card.cxx}::set_ntuple_date = false
 
bool anonymous_namespace{make_card.cxx}::set_lumi = false
 
bool anonymous_namespace{make_card.cxx}::set_mc_multiplier = false
 
bool anonymous_namespace{make_card.cxx}::set_masses = false
 
bool anonymous_namespace{make_card.cxx}::set_inject_signal = false
 
bool anonymous_namespace{make_card.cxx}::set_mt = false
 
bool anonymous_namespace{make_card.cxx}::set_mj = false
 
bool anonymous_namespace{make_card.cxx}::set_njets = false
 
bool anonymous_namespace{make_card.cxx}::set_met = false
 
bool anonymous_namespace{make_card.cxx}::set_ht = false
 
bool anonymous_namespace{make_card.cxx}::set_nb = false
 

Function Documentation

void CountsToGammas ( double  sumw,
double  sumw2,
double  sumw_backup,
double  sumw2_backup,
double &  nraw,
double &  weight 
)

Definition at line 318 of file make_card.cxx.

Referenced by GetCounts().

string Expand ( string  in,
size_t  size 
)

Definition at line 946 of file make_card.cxx.

Referenced by GammaToLogN13(), GammaToLogN2(), and PrintGamma().

void GammaToLogN13 ( ofstream &  file,
const vector< size_t > &  map,
size_t  nr1,
size_t  nr2,
size_t  nr4,
const vector< double > &  counts,
size_t  nbkgs 
)

Definition at line 953 of file make_card.cxx.

References calcKappa(), Expand(), ToString(), and anonymous_namespace{make_card.cxx}::verbose.

Referenced by ToString(), and WriteFile().

void GammaToLogN13 ( ofstream &  file,
const vector< size_t > &  map,
size_t  nr1,
size_t  nr2,
size_t  nr4,
const vector< vector< GammaParams > > &  gps 
)
void GammaToLogN2 ( ofstream &  file,
const vector< size_t > &  map,
size_t  nr1,
size_t  nr2,
size_t  nr4,
const vector< double > &  counts,
size_t  nbkgs 
)

Definition at line 986 of file make_card.cxx.

References calcKappa(), Expand(), ToString(), and anonymous_namespace{make_card.cxx}::verbose.

Referenced by ToString(), and WriteFile().

void GammaToLogN2 ( ofstream &  file,
const vector< size_t > &  map,
size_t  nr1,
size_t  nr2,
size_t  nr4,
const vector< vector< GammaParams > > &  gps 
)
void GetBinMapping ( size_t &  nr1,
vector< size_t > &  r1_map,
size_t &  nr2,
vector< size_t > &  r2_map,
size_t &  nr3,
vector< size_t > &  r3_map,
size_t &  nr4,
vector< size_t > &  r4_map 
)

Definition at line 520 of file make_card.cxx.

References anonymous_namespace{make_card.cxx}::method.

Referenced by WriteFile().

void GetCounts ( small_tree_quick tree,
vector< GammaParams > &  gp 
)
void GetGammaParameters ( int &  raw_out,
double &  weight_out,
double  raw_in,
double  weight_in,
double  pred_in 
)

Definition at line 697 of file make_card.cxx.

Referenced by PrintGamma().

void GetMCTotals ( vector< GammaParams > &  mc_gp,
const vector< vector< GammaParams > > &  bkg_gps 
)

Definition at line 493 of file make_card.cxx.

Referenced by main().

void GetOptions ( int  argc,
char *  argv[] 
)

Definition at line 129 of file make_card.cxx.

References anonymous_namespace{make_card.cxx}::do_tk_veto, anonymous_namespace{make_card.cxx}::ht_min, anonymous_namespace{make_card.cxx}::inject_signal, anonymous_namespace{make_card.cxx}::lumi, anonymous_namespace{make_card.cxx}::mc_multiplier, anonymous_namespace{make_card.cxx}::met_div, anonymous_namespace{make_card.cxx}::met_min, anonymous_namespace{make_card.cxx}::method, anonymous_namespace{make_card.cxx}::mgluino, anonymous_namespace{make_card.cxx}::mj_div, anonymous_namespace{make_card.cxx}::mj_min, anonymous_namespace{make_card.cxx}::mlsp, anonymous_namespace{make_card.cxx}::mt_div, anonymous_namespace{make_card.cxx}::mt_min, anonymous_namespace{make_card.cxx}::nb_div, anonymous_namespace{make_card.cxx}::nb_min, anonymous_namespace{make_card.cxx}::njets_div, anonymous_namespace{make_card.cxx}::njets_min, anonymous_namespace{make_card.cxx}::no_mc_kappa, anonymous_namespace{make_card.cxx}::no_systematics, anonymous_namespace{make_card.cxx}::ntuple_date, anonymous_namespace{make_card.cxx}::set_ht, anonymous_namespace{make_card.cxx}::set_inject_signal, anonymous_namespace{make_card.cxx}::set_lumi, anonymous_namespace{make_card.cxx}::set_masses, anonymous_namespace{make_card.cxx}::set_mc_multiplier, anonymous_namespace{make_card.cxx}::set_met, anonymous_namespace{make_card.cxx}::set_method, anonymous_namespace{make_card.cxx}::set_mj, anonymous_namespace{make_card.cxx}::set_mt, anonymous_namespace{make_card.cxx}::set_nb, anonymous_namespace{make_card.cxx}::set_njets, anonymous_namespace{make_card.cxx}::set_ntuple_date, and anonymous_namespace{make_card.cxx}::verbose.

Referenced by main().

double GetPred ( const vector< double > &  data,
const vector< GammaParams > &  mc_gp,
const vector< GammaParams > &  proc_gp,
size_t  ir1,
size_t  ir2,
size_t  ir3,
size_t  ir4 
)
size_t LookUpBin ( small_tree_quick tree)
int main ( int  argc,
char *  argv[] 
)
void MockUpData ( vector< double > &  data,
const vector< GammaParams > &  sig_gp,
const vector< vector< GammaParams > > &  bkg_gps 
)

Definition at line 508 of file make_card.cxx.

References anonymous_namespace{make_card.cxx}::inject_signal.

Referenced by main().

string NoDecimal ( double  x)

Definition at line 783 of file make_card.cxx.

References rpv_bkg_syst::fixed.

Referenced by WriteFile().

void PrintDebug ( const vector< GammaParams > &  gps,
const string &  name 
)

Definition at line 1086 of file make_card.cxx.

Referenced by main(), and ToString().

void PrintGamma ( ofstream &  file,
const vector< size_t >  map,
const string &  name,
size_t  iregion,
size_t  nr1,
size_t  nr2,
size_t  nr3,
size_t  nr4,
const vector< GammaParams > &  gps,
const vector< double > &  preds,
size_t  iproc,
size_t  nbkgs 
)

Definition at line 745 of file make_card.cxx.

References Expand(), GetGammaParameters(), and ToString().

Referenced by WriteFile().

void PrintSystematics ( ofstream &  file,
size_t  nbkgs 
)
void RepAsymLogN ( ofstream &  file,
double  minus,
double  plus,
size_t  nbkgs 
)

Definition at line 939 of file make_card.cxx.

References ToString().

Referenced by PrintSystematics().

void RepLogN ( ofstream &  file,
double  val,
size_t  nbkgs 
)

Definition at line 932 of file make_card.cxx.

Referenced by PrintSystematics().

double sqr ( double  x)

Definition at line 562 of file make_card.cxx.

void WriteFile ( const vector< vector< GammaParams > > &  bkg_gps,
const vector< string > &  bkg_names,
const vector< GammaParams > &  sig_gp,
const vector< GammaParams > &  mc_gp,
const vector< double > &  data_counts 
)

Definition at line 566 of file make_card.cxx.

References anonymous_namespace{make_card.cxx}::do_tk_veto, parse_card::file, GammaToLogN13(), GammaToLogN2(), GetBinMapping(), GetPred(), anonymous_namespace{make_card.cxx}::ht_min, anonymous_namespace{make_card.cxx}::inject_signal, parse_card::kappa, anonymous_namespace{make_card.cxx}::lumi, anonymous_namespace{make_card.cxx}::mc_multiplier, anonymous_namespace{make_card.cxx}::met_div, anonymous_namespace{make_card.cxx}::met_min, anonymous_namespace{make_card.cxx}::method, anonymous_namespace{make_card.cxx}::mgluino, anonymous_namespace{make_card.cxx}::mj_div, anonymous_namespace{make_card.cxx}::mj_min, anonymous_namespace{make_card.cxx}::mlsp, anonymous_namespace{make_card.cxx}::mt_div, anonymous_namespace{make_card.cxx}::mt_min, anonymous_namespace{make_card.cxx}::nb_div, anonymous_namespace{make_card.cxx}::nb_min, anonymous_namespace{make_card.cxx}::njets_div, anonymous_namespace{make_card.cxx}::njets_min, anonymous_namespace{make_card.cxx}::no_mc_kappa, anonymous_namespace{make_card.cxx}::no_systematics, NoDecimal(), anonymous_namespace{make_card.cxx}::ntuple_date, PrintGamma(), PrintSystematics(), anonymous_namespace{make_card.cxx}::set_ht, anonymous_namespace{make_card.cxx}::set_inject_signal, anonymous_namespace{make_card.cxx}::set_lumi, anonymous_namespace{make_card.cxx}::set_masses, anonymous_namespace{make_card.cxx}::set_mc_multiplier, anonymous_namespace{make_card.cxx}::set_met, anonymous_namespace{make_card.cxx}::set_method, anonymous_namespace{make_card.cxx}::set_mj, anonymous_namespace{make_card.cxx}::set_mt, anonymous_namespace{make_card.cxx}::set_nb, anonymous_namespace{make_card.cxx}::set_njets, and anonymous_namespace{make_card.cxx}::set_ntuple_date.

Referenced by main().