26 gStyle->SetOptStat(1);
30 cout <<
"Error, could not open input file: " <<
filename << endl;
35 f->GetObject(
"wcsimT", wcsimT);
38 wcsimT->SetBranchAddress(
"wcsimrootevent",&wcsimrootsuperevent);
42 wcsimT->GetBranch(
"wcsimrootevent")->SetAutoDelete(kTRUE);
51 cout <<
"Number of tube hits " << wcsimrootevent->
GetNumTubesHit() << endl;
52 cout <<
"Number of Cherenkov tube hits " << wcsimrootevent->
GetNcherenkovhits() << endl;
53 cout <<
"Number of Cherenkov tube hits " << wcsimrootevent->
GetCherenkovHits()->GetEntries() << endl;
55 cout <<
"Number of digitized tube hits " << wcsimrootevent->
GetNumDigiTubesHit() << endl;
56 cout <<
"Number of digitized Cherenkov tube hits " << wcsimrootevent->
GetNcherenkovdigihits() << endl;
57 cout <<
"Number of digitized Cherenkov tube hits " << wcsimrootevent->
GetCherenkovDigiHits()->GetEntries() << endl;
59 cout <<
"Number of photoelectron hit times " << wcsimrootevent->
GetCherenkovHitTimes()->GetEntries() << endl;
63 TH1D *PE =
new TH1D(
"PEmult",
"Photoelectron multiplicty", 16,-0.5,15.5);
64 PE->SetXTitle(
"Photoelectrons");
66 TH1D *PMT_hits =
new TH1D(
"PMT_hits",
"Hits vs PMT detector number", 120000,-0.5,120000-0.5);
69 for (
int i = 0;
i<max;
i++){
82 TH2D *QvsT =
new TH2D(
"QvsT",
"charge vs. time", 40, 900, 1400, 40, -0.5, 15.5);
83 QvsT->SetXTitle(
"time");
84 QvsT->SetYTitle(
"charge");
87 for (
int i = 0;
i<max;
i++){
95 QvsT->Fill(cDigiHit->
GetT(), cDigiHit->
GetQ());
101 TProfile * temp_profile;
102 float win_scale=0.75;
105 TCanvas *c1 =
new TCanvas(
"c1",
"c1",700*n_wide*win_scale,500*n_high*win_scale);
106 c1->Divide(n_wide,n_high);
111 temp=QvsT->ProjectionY();
112 temp->SetTitle(
"charge");
114 c1->GetPad(2)->SetLogy();
117 temp=QvsT->ProjectionX();
118 temp->SetTitle(
"hits vs time");
120 c1->GetPad(3)->SetLogy();
123 temp_profile=QvsT->ProfileX();
124 temp_profile->SetTitle(
"average charge vs time");
125 temp_profile->Draw();
130 c1->GetPad(5)->SetLogy();
Class holding digitised hit (aka digit or digi) information (after PMT & electronics simulation + tri...
Int_t GetNumDigiTubesHit() const
int read_PMT(const char *filename="../wcsim.root")
Int_t GetNcherenkovhits() const
TClonesArray * GetCherenkovHits() const
Int_t GetNcherenkovdigihits() const
Class storing trigger information.
Int_t GetTotalPe(int i) const
WCSimRootTrigger * GetTrigger(int number)
TClonesArray * GetCherenkovHitTimes() const
Int_t GetNumTubesHit() const
Class containing event information.
Int_t GetNcherenkovdigihits_slots() const
Class holding true (Cherenkov photon + dark noise) hit information.
TClonesArray * GetCherenkovDigiHits() const