#ifndef detector_efficiency_h #define detector_efficiency_h #include #include "TROOT.h" #include "TNtuple.h" #include "TString.h" #include "TFile.h" #include "TCanvas.h" #include "TH1F.h" #include "TGraph.h" #include "TGraphErrors.h" #include "TChain.h" #include "TLine.h" #include "TH2F.h" #include "TCut.h" #include "TStyle.h" #include "Event.h" //#include "TSystem.h" /*--------------------------------------------------*/ /// List of functions void Init(); void Add_Root_File(Int_t* grp); void Cer_plot(TChain*chain, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void Cer_plot(TTree*tree, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void Beta_plot(TChain*chain, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void Aero_plot(TChain*chain, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void Aero_plot(TTree*target_tree, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void Cal_plot(TTree*target_tree, TString plot_title, TCut data_cut, Float_t threshhold, Float_t bin_min, Float_t bin_max, Int_t bin_num); void check_plots(TChain*chain, TString parameter, TString log); void plot_cointime_finebin(TChain*chain, TString plot_title, Float_t bin_min, Float_t bin_max, Int_t bin_num); void plot_beta_finebin(TChain*chain, TString plot_title, Float_t bin_min, Float_t bin_max, Int_t bin_num); void plot_beta_vs_cointime_finebin(TChain*chain, TString plot_title, Float_t x_bin_min, Float_t x_bin_max, Int_t x_bin_num, Float_t y_bin_min, Float_t y_bin_max, Int_t y_bin_num); Int_t plot_beta_vs_cointime_finebin_cut(TChain*chain, TCut cut, TString plot_title, Float_t x_bin_min, Float_t x_bin_max, Int_t x_bin_num, Float_t y_bin_min, Float_t y_bin_max, Int_t y_bin_num); void plot_beta_vs_cointime_finebin_pretty(TChain*chain, TString plot_title, Float_t x_bin_min, Float_t x_bin_max, Int_t x_bin_num, Float_t y_bin_min, Float_t y_bin_max, Int_t y_bin_num); //void Coin_time_loop(Int_t* grp); void Coin_time_loop(std::vector grp); void Run_by_Run(Int_t run_num, Float_t x_bin_min, Float_t x_bin_max, Int_t x_bin_num, Float_t y_bin_min, Float_t y_bin_max, Int_t y_bin_num); void Read_Offset(); float Get_Offset(int); /// hsbeta float Int_t Calculate_efficiency(TH2F* myhist_2D); /// hsbeta with fixed value Int_t Calculate_efficiency(TH2F* myhist_2D, Float_t hsbeta_limit); void DrawGoodBox(float x_center, float y_center); void DrawRandomBox(float x_center, float y_center); void Histogram_output(TH2F *hist); bool Check_exists(std::vector vectora, int number); void Write_overall(); Float_t Calculate_tail_x (Float_t xx, Float_t yy); Float_t Calculate_miss_x (Float_t x_boundary, Float_t y_boudary, Float_t y_pos); TChain* globchain1; TChain* globchain2; TChain* globchain3; TChain* globchain4; TChain* globchain_total; TFile* file_out; TDirectory* test_dir; TDirectory* beta_coin_dir; TDirectory* aerogel_dir; TDirectory* cer_dir; TDirectory* cal_dir; TH2F* Q2_2p4_EB_4p2_combine; TH2F* Q2_6p5_EB_5p2_combine; TH2F* Q2_4p4_EB_3p7_combine; TH2F* Q2_5p4_EB_4p7_combine; TH2F* total_hbeta_cointime; float beta_cut; float global_centered_hsbeta_cut; float gradi; void loop_run(int run_num); fstream offset_file_in; std::map offset_map; /*--------------------------------------------------*/ TString plot_put_dir; TH2F* test_beta_vs_cointime; FILE* efficiency_file; float gcer_eff, gaero_eff, gbeta_eff, cal_eff; float gcer_eff_err, gaero_eff_err, gbeta_eff_err, cal_eff_err; #endif