Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:18:21

0001 
0002 // ? export LD_LIBRARY_PATH=/home/ayk/eic/EicSandbox/build/lib:${LD_LIBRARY_PATH}
0003 //   export LD_LIBRARY_PATH=/home/ayk/eic/irt/build/lib:${LD_LIBRARY_PATH}
0004 //
0005 //   root -l './hit-map-simple.C("pfrich.root")'
0006 //
0007 
0008 void hit_map_simple(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     } //for photon
0035       } //for rhistory
0036     } //for particle
0037     //#endif
0038   } //for ev
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 } // hit_map_simple()