File indexing completed on 2025-08-05 08:13:21
0001 #include <iostream>
0002 #include <fstream>
0003 #include <vector>
0004 #include <utility>
0005
0006 #include "sPhenixStyle.h"
0007 #include "sPhenixStyle.C"
0008
0009 using namespace std;
0010
0011
0012 Int_t SeedPlots()
0013 {
0014
0015
0016 SetsPhenixStyle();
0017 TH1::SetDefaultSumw2();
0018 TH2::SetDefaultSumw2();
0019
0020
0021
0022 TString input_file = "/sphenix/user/tmengel/JetPerformancePPG/RandomConeAna/condor/merging/rootfiles/Jet30Debug.root";
0023 TString output_file = "Jet30_SeedPlots.root";
0024
0025
0026 TFile *f = new TFile(input_file, "READ");
0027 if(!f->IsOpen() || f->IsZombie()){ std::cout << "File " << input_file << " is zombie" << std::endl; return -1; }
0028
0029
0030 TTree *t = (TTree*)f->Get("T");
0031 if(!t){ std::cout << "Tree event_info not found in " << input_file << std::endl; return -1; }
0032
0033
0034 std::vector<float> * m_rawseedEta = 0;
0035 std::vector<float> * m_rawseedPhi = 0;
0036 std::vector<float> * m_rawseedPt = 0;
0037 std::vector<int> * m_rawseedCut = 0;
0038
0039 std::vector<float> * m_subseedEta = 0;
0040 std::vector<float> * m_subseedPhi = 0;
0041 std::vector<float> * m_subseedPt = 0;
0042 std::vector<int> * m_subseedCut = 0;
0043
0044 std::vector<float> * m_tower_pt = 0;
0045 std::vector<float> * m_tower_iter_pt = 0;
0046 std::vector<float> * m_tower_rand_pt = 0;
0047 std::vector<float> * m_tower_iter_rand_pt = 0;
0048
0049 t->SetBranchAddress("rawseedEta", &m_rawseedEta);
0050 t->SetBranchAddress("rawseedPhi", &m_rawseedPhi);
0051 t->SetBranchAddress("rawseedPt", &m_rawseedPt);
0052 t->SetBranchAddress("rawseedCut", &m_rawseedCut);
0053 t->SetBranchAddress("subseedEta", &m_subseedEta);
0054 t->SetBranchAddress("subseedPhi", &m_subseedPhi);
0055 t->SetBranchAddress("subseedPt", &m_subseedPt);
0056 t->SetBranchAddress("subseedCut", &m_subseedCut);
0057 t->SetBranchAddress("tower_pt", &m_tower_pt);
0058 t->SetBranchAddress("tower_iter_pt", &m_tower_iter_pt);
0059 t->SetBranchAddress("tower_pt_rand", &m_tower_rand_pt);
0060 t->SetBranchAddress("tower_iter_pt_rand", &m_tower_iter_rand_pt);
0061
0062 int nentries = t->GetEntries();
0063
0064
0065 TH1F * h_rawseedPt = new TH1F("h_rawseedPt", "h_rawseedPt", 100, 0, 100);
0066 TH1F * h_subseedPt = new TH1F("h_subseedPt", "h_subseedPt", 100, 0, 100);
0067 TH1F * h_rawseedEta = new TH1F("h_rawseedEta", "h_rawseedEta", 100,-1.5,1.5);
0068 TH1F * h_subseedEta = new TH1F("h_subseedEta", "h_subseedEta", 100,-1.5,1.5);
0069 TH1F * h_rawseedPhi = new TH1F("h_rawseedPhi", "h_rawseedPhi", 100,-TMath::Pi(),TMath::Pi());
0070 TH1F * h_subseedPhi = new TH1F("h_subseedPhi", "h_subseedPhi", 100,-TMath::Pi(),TMath::Pi());
0071 TH1F * h_rawseedCut = new TH1F("h_rawseedCut", "h_rawseedCut", 10, 0, 10);
0072 TH1F * h_subseedCut = new TH1F("h_subseedCut", "h_subseedCut", 10, 0, 10);
0073 TH1F * h_tower_pt = new TH1F("h_tower_pt", "h_tower_pt", 100, -50, 50);
0074 TH1F * h_tower_iter_pt = new TH1F("h_tower_iter_pt", "h_tower_iter_pt", 100, -50, 50);
0075 TH1F * h_tower_rand_pt = new TH1F("h_tower_rand_pt", "h_tower_rand_pt", 100, -50, 50);
0076 TH1F * h_tower_iter_rand_pt = new TH1F("h_tower_iter_rand_pt", "h_tower_iter_rand_pt", 100, -50, 50);
0077
0078
0079 TH1F * h_nseed = new TH1F("h_nseed", "h_nseed", 100, 0, 100);
0080 TH1F * h_nsubseed = new TH1F("h_nsubseed", "h_nsubseed", 100, 0, 100);
0081
0082
0083
0084 for(int i = 0; i < nentries; ++i)
0085 {
0086 t->GetEntry(i);
0087
0088
0089 for(int j =0; j < m_rawseedPt->size(); j++) h_rawseedPt->Fill(m_rawseedPt->at(j));
0090 for(int j =0; j<m_subseedPt->size(); j++) h_subseedPt->Fill(m_subseedPt->at(j));
0091 for(int j =0; j<m_rawseedEta->size(); j++) h_rawseedEta->Fill(m_rawseedEta->at(j));
0092 for(int j =0; j<m_subseedEta->size(); j++) h_subseedEta->Fill(m_subseedEta->at(j));
0093 for(int j =0; j<m_rawseedPhi->size(); j++) h_rawseedPhi->Fill(m_rawseedPhi->at(j));
0094 for(int j =0; j<m_subseedPhi->size(); j++) h_subseedPhi->Fill(m_subseedPhi->at(j));
0095 for(int j =0; j<m_rawseedCut->size(); j++) h_rawseedCut->Fill(m_rawseedCut->at(j));
0096 for(int j =0; j<m_subseedCut->size(); j++) h_subseedCut->Fill(m_subseedCut->at(j));
0097 for(int j =0; j<m_tower_pt->size(); j++) h_tower_pt->Fill(m_tower_pt->at(j));
0098 for(int j =0; j<m_tower_iter_pt->size(); j++) h_tower_iter_pt->Fill(m_tower_iter_pt->at(j));
0099 for(int j =0; j<m_tower_rand_pt->size(); j++) h_tower_rand_pt->Fill(m_tower_rand_pt->at(j));
0100 for(int j =0; j<m_tower_iter_rand_pt->size(); j++) h_tower_iter_rand_pt->Fill(m_tower_iter_rand_pt->at(j));
0101
0102
0103
0104 h_nseed->Fill(m_rawseedPt->size());
0105 h_nsubseed->Fill(m_subseedPt->size());
0106
0107 }
0108
0109
0110 TFile *fout = new TFile(output_file, "RECREATE");
0111
0112
0113 h_rawseedPt->Write();
0114 h_subseedPt->Write();
0115 h_rawseedEta->Write();
0116 h_subseedEta->Write();
0117 h_rawseedPhi->Write();
0118 h_subseedPhi->Write();
0119 h_rawseedCut->Write();
0120 h_subseedCut->Write();
0121 h_tower_pt->Write();
0122 h_tower_iter_pt->Write();
0123 h_tower_rand_pt->Write();
0124 h_tower_iter_rand_pt->Write();
0125 h_nseed->Write();
0126 h_nsubseed->Write();
0127
0128
0129 f->Close();
0130
0131
0132 fout->Close();
0133
0134
0135 return 0;
0136 }
0137