//----------------------------------------------------------------------------- // plot calorimetry histograms: supposed to be executed in INTERPRETED mode // plot = 1: //----------------------------------------------------------------------------- void plot(DataVal& x, int run, int slide_number=0) { char name[100], title[100]; if (slide_number <= 0) { // print help printf("----------------------------------------------------\n"); printf("call signature: plot_cal(DataAna* x, int run_number, int slide_number)\n\n"); printf("slide#1: N(towers), EM spectrum above the threshold,"); printf(" HAD spectrum above the threshold\n\n"); printf("slide#2: eta-phi occupancies for EM and HAD,"); printf(" different ADC channels - separately\n\n"); printf("slide#3: JETCLU validation plots \n\n"); printf("slide#4: LEVEL1 validation plots \n\n"); printf("----------------------------------------------------\n"); return; } if (slide_number == 1) { sprintf(name,"run_%i_slide_%i_cal",run,slide_number); sprintf(title,"run %i slide %i (CALORIMETER)",run, slide_number); new_slide(name,title,2,4); p1->cd(1); gPad->SetLogy(1); x.fHCal.fNTowers->Draw(); p1->cd(2); gPad->SetLogy(1); x.fHCal.fEmPmt->Draw(); p1->cd(3); gPad->SetLogy(1); x.fHCal.fHadPmt->Draw(); } else if (slide_number == 2) { sprintf(name,"run_%i_slide_%i_cal",run,slide_number); sprintf(title,"run %i slide %i (CALORIMETER)",run, slide_number); new_slide(name,title,2,4); p1->cd(1); x.fHCal.fEmEtaPhi[0]->Draw("box"); p1->cd(2); x.fHCal.fEmEtaPhi[0]->Draw("lego1"); p1->cd(3); x.fHCal.fEmEtaPhi[1]->Draw("box"); p1->cd(4); x.fHCal.fEmEtaPhi[1]->Draw("lego1"); p1->cd(5); x.fHCal.fHadEtaPhi[0]->Draw("box"); p1->cd(6); x.fHCal.fHadEtaPhi[0]->Draw("lego1"); p1->cd(7); x.fHCal.fHadEtaPhi[1]->Draw("box"); p1->cd(8); x.fHCal.fHadEtaPhi[1]->Draw("lego1"); } else if (slide_number == 3) { sprintf(name,"run_%i_slide_%i_jetclu",run,slide_number); sprintf(title,"run %i slide %i (JETCLU)",run, slide_number); new_slide(name,title,2,4); p1->cd(1); x.fHJetClu.fNJets->Draw(); p1->cd(2); x.fHJetClu.fJetEt->Draw(); p1->cd(3); x.fHJetClu.fJetEta->Draw(); p1->cd(4); x.fHJetClu.fJetPhi->Draw(); p1->cd(5); x.fHJetClu.fSeedEt->Draw(); } else if (slide_number == 4) { sprintf(name,"run_%i_slide_%i_level1",run,slide_number); sprintf(title,"run %i slide %i (LEVEL1)",run, slide_number); new_slide(name,title,2,4); p1->cd(1); x.fHL1.fUnprescaledBits->Draw(); p1->cd(2); x.fHL1.fMyronFlag->Draw(); p1->cd(3); x.fHL1.fPrescaledBits->Draw(); p1->cd(4); x.fHL1.fBunchCounter->Draw(); p1->cd(5); x.fHL1.fCalibType->Draw(); p1->cd(6); x.fHL1.fAbortMarker->Draw(); p1->cd(7); x.fHL1.fB0Marker->Draw(); p1->cd(8); x.fHL1.fBCMarker->Draw(); } }