File indexing completed on 2025-01-18 10:18:21
0001
0002
0003
0004
0005
0006
0007
0008 void hit_map_epic(const char *dfname, const char *cfname = 0)
0009 {
0010 auto fcfg = new TFile(cfname ? cfname : dfname);
0011 auto geometry = dynamic_cast<CherenkovDetectorCollection*>(fcfg->Get("CherenkovDetectorCollection"));
0012 auto fdata = new TFile(dfname);
0013 TTree *t = dynamic_cast<TTree*>(fdata->Get("t"));
0014 auto event = new CherenkovEvent();
0015 t->SetBranchAddress("e", &event);
0016
0017 int nEvents = t->GetEntries();
0018
0019 auto hxy = new TH2D("hxy", "", 650, -650., 650., 650, -650.0, 650.);
0020
0021 for(unsigned ev=0; ev<nEvents; ev++) {
0022 t->GetEntry(ev);
0023
0024 for(auto particle: event->ChargedParticles()) {
0025
0026 for(auto rhistory: particle->GetRadiatorHistory()) {
0027 auto history = particle->GetHistory (rhistory);
0028
0029 for(auto photon: history->Photons()) {
0030 if (!photon->WasDetected() ) continue;
0031
0032 TVector3 phx = photon->GetDetectionPosition();
0033 hxy->Fill(phx.X(), phx.Y());
0034 }
0035 }
0036 }
0037
0038 }
0039
0040 gStyle->SetOptStat(0);
0041 auto cv = new TCanvas("cv", "", 1000, 1000);
0042 hxy->GetXaxis()->SetTitle("Sensor plane X, [mm]");
0043 hxy->GetYaxis()->SetTitle("Sensor plane Y, [mm]");
0044 hxy->GetXaxis()->SetTitleOffset(1.20);
0045 hxy->GetYaxis()->SetTitleOffset(1.40);
0046 hxy->Draw("COL");
0047 }