/[PAMELA software]/quicklook/trigger/src/TriggerScanBasic.cpp
ViewVC logotype

Diff of /quicklook/trigger/src/TriggerScanBasic.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by campana, Tue Mar 13 12:04:02 2007 UTC revision 1.9 by mocchiut, Fri Jan 17 15:10:48 2014 UTC
# Line 8  Line 8 
8   * Date 26 Jun 2006: Inserted dependences on OnBoardTime and modified histogram ranges.   * Date 26 Jun 2006: Inserted dependences on OnBoardTime and modified histogram ranges.
9   * Version 1.5 - Modified by G. De Rosa   * Version 1.5 - Modified by G. De Rosa
10   * Date 9 Mar 2007: To read correctly the OBT changed the type of time variables from signed to unsigned   * Date 9 Mar 2007: To read correctly the OBT changed the type of time variables from signed to unsigned
11     * Version 1.6 - Modified by R. Carbone
12     * Date 22 Mar 2011: Modified ranges on Plane Counters and Trigger Counters graphs, optimized for outside belts region
13   *   *
14   * Description:   * Description:
15   * Describe the performance of the Trigger.   * Describe the performance of the Trigger.
# Line 37  Line 39 
39  #include <EventHeader.h>  #include <EventHeader.h>
40  #include <PscuHeader.h>  #include <PscuHeader.h>
41  #include <iostream>  #include <iostream>
42    #include <cstdlib>
43    
44  using namespace std;  using namespace std;
45    
# Line 91  void TriggerScanBasic(TString base, TStr Line 94  void TriggerScanBasic(TString base, TStr
94     while(i < nevents){     while(i < nevents){
95       HeadBr->GetEntry(i);       HeadBr->GetEntry(i);
96       ph = eh->GetPscuHeader();       ph = eh->GetPscuHeader();
97       if((ph->GetOrbitalTime()) <= firstime) firstime=ph->GetOrbitalTime();       if((ULong_t)(ph->GetOrbitalTime()) <= firstime) firstime=ph->GetOrbitalTime();
98       if((ph->GetOrbitalTime()) >= lastime) lastime=ph->GetOrbitalTime();       if((ULong_t)(ph->GetOrbitalTime()) >= lastime) lastime=ph->GetOrbitalTime();
99       i++;       i++;
100       }       }
101        
# Line 342  void TriggerScanBasic(TString base, TStr Line 345  void TriggerScanBasic(TString base, TStr
345    DeadTimeGraph->GetXaxis()->CenterTitle();    DeadTimeGraph->GetXaxis()->CenterTitle();
346    DeadTimeGraph->GetYaxis()->SetTitle("DeadTime(ms)");    DeadTimeGraph->GetYaxis()->SetTitle("DeadTime(ms)");
347    DeadTimeGraph->GetYaxis()->CenterTitle();    DeadTimeGraph->GetYaxis()->CenterTitle();
   //  DeadTimeGraph->SetMaximum(100);  
348    DeadTimeGraph->Draw("AP");    DeadTimeGraph->Draw("AP");
349    //----------    //----------
350    sst.str("");    sst.str("");
# Line 394  void TriggerScanBasic(TString base, TStr Line 396  void TriggerScanBasic(TString base, TStr
396    sst.str("");    sst.str("");
397    sst << "Graph of PMT Plane Counters (S11 AND S12) vs OBT based on " << base.Data();    sst << "Graph of PMT Plane Counters (S11 AND S12) vs OBT based on " << base.Data();
398    TGraph *PMT1Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt1);    TGraph *PMT1Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt1);
399    PMTCanvas->cd(1);    PMTCanvas->cd(1)->SetGridy();
400    sst.str("");    sst.str("");
401    sst << "PMT Plane Counters (S11 AND S12)";    sst << "PMT Plane Counters (S11 AND S12)";
402    PMT1Graph->SetTitle(sst.str().c_str());    PMT1Graph->SetTitle(sst.str().c_str());
# Line 403  void TriggerScanBasic(TString base, TStr Line 405  void TriggerScanBasic(TString base, TStr
405    PMT1Graph->GetXaxis()->CenterTitle();    PMT1Graph->GetXaxis()->CenterTitle();
406    PMT1Graph->GetYaxis()->SetTitle("PMT Plane Counters (over 60 ms)");    PMT1Graph->GetYaxis()->SetTitle("PMT Plane Counters (over 60 ms)");
407    PMT1Graph->GetYaxis()->CenterTitle();    PMT1Graph->GetYaxis()->CenterTitle();
408      PMT1Graph->SetMaximum(300);
409      //PMT1Graph->SetMinimum(100);
410    PMT1Graph->Draw("AP");    PMT1Graph->Draw("AP");
411    //----------    //----------
412    sst.str("");    sst.str("");
413    sst << "Graph PMT Plane Counters (S21 AND S22) vs OBT based on " << base.Data();    sst << "Graph PMT Plane Counters (S21 AND S22) vs OBT based on " << base.Data();
414    TGraph *PMT2Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt2);    TGraph *PMT2Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt2);
415    PMTCanvas->cd(2);    PMTCanvas->cd(2)->SetGridy();
416    sst.str("");    sst.str("");
417    sst << "PMT Plane Counters (S21 AND S22)";    sst << "PMT Plane Counters (S21 AND S22)";
418    PMT2Graph->SetTitle(sst.str().c_str());    PMT2Graph->SetTitle(sst.str().c_str());
# Line 417  void TriggerScanBasic(TString base, TStr Line 421  void TriggerScanBasic(TString base, TStr
421    PMT2Graph->GetXaxis()->CenterTitle();    PMT2Graph->GetXaxis()->CenterTitle();
422    PMT2Graph->GetYaxis()->SetTitle("PMT Plane Counters (over 60 ms)");    PMT2Graph->GetYaxis()->SetTitle("PMT Plane Counters (over 60 ms)");
423    PMT2Graph->GetYaxis()->CenterTitle();    PMT2Graph->GetYaxis()->CenterTitle();
424      PMT2Graph->SetMaximum(80);
425    PMT2Graph->Draw("AP");    PMT2Graph->Draw("AP");
426    //----------    //----------
427    sst.str("");    sst.str("");
428    sst << "Graph PMT Plane Counters (S31 AND S32) vs OBT based on " << base.Data();    sst << "Graph PMT Plane Counters (S31 AND S32) vs OBT based on " << base.Data();
429    TGraph *PMT3Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt3);    TGraph *PMT3Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)pmt3);
430    PMTCanvas->cd(3);    PMTCanvas->cd(3)->SetGridy();
431    sst.str("");    sst.str("");
432    sst << "PMT Plane Counters (S31 AND S32)";    sst << "PMT Plane Counters (S31 AND S32)";
433    PMT3Graph->SetTitle(sst.str().c_str());    PMT3Graph->SetTitle(sst.str().c_str());
# Line 431  void TriggerScanBasic(TString base, TStr Line 436  void TriggerScanBasic(TString base, TStr
436    PMT3Graph->GetXaxis()->CenterTitle();    PMT3Graph->GetXaxis()->CenterTitle();
437    PMT3Graph->GetYaxis()->SetTitle("PMT Plane Rate Counters (over 60 ms)");    PMT3Graph->GetYaxis()->SetTitle("PMT Plane Rate Counters (over 60 ms)");
438    PMT3Graph->GetYaxis()->CenterTitle();    PMT3Graph->GetYaxis()->CenterTitle();
439      PMT3Graph->SetMaximum(70);
440    PMT3Graph->Draw("AP");    PMT3Graph->Draw("AP");
441    //    //
442    //----------    //----------
# Line 446  void TriggerScanBasic(TString base, TStr Line 452  void TriggerScanBasic(TString base, TStr
452    sst << "Graph of Trigger Rate Counters (S11 OR S12) AND (S21 OR S22) AND (S31 OR S32) vs OBT based on " << base.Data();    sst << "Graph of Trigger Rate Counters (S11 OR S12) AND (S21 OR S22) AND (S31 OR S32) vs OBT based on " << base.Data();
453    
454    TGraph *TrigRate0Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate0);    TGraph *TrigRate0Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate0);
455    TrigRate1Canvas->cd(1);    TrigRate1Canvas->cd(1)->SetGridy();
456    sst.str("");    sst.str("");
457    sst << "Trigger Rate Counters (S11 OR S12) AND (S21 OR S22) AND (S31 OR S32)";    sst << "Trigger Rate Counters (S11 OR S12) AND (S21 OR S22) AND (S31 OR S32)";
458    TrigRate0Graph->SetTitle(sst.str().c_str());    TrigRate0Graph->SetTitle(sst.str().c_str());
# Line 455  void TriggerScanBasic(TString base, TStr Line 461  void TriggerScanBasic(TString base, TStr
461    TrigRate0Graph->GetXaxis()->CenterTitle();    TrigRate0Graph->GetXaxis()->CenterTitle();
462    TrigRate0Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate0Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
463    TrigRate0Graph->GetYaxis()->CenterTitle();    TrigRate0Graph->GetYaxis()->CenterTitle();
464      TrigRate0Graph->SetMaximum(100);
465    TrigRate0Graph->Draw("AP");    TrigRate0Graph->Draw("AP");
466    //----------    //----------
467    sst.str("");    sst.str("");
468    sst << "Graph Trigger Rate Counters (S11 AND S12) AND (S21 AND S22) AND (S31 AND S32) vs OBT based on " << base.Data();    sst << "Graph Trigger Rate Counters (S11 AND S12) AND (S21 AND S22) AND (S31 AND S32) vs OBT based on " << base.Data();
469    TGraph *TrigRate1Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate1);    TGraph *TrigRate1Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate1);
470    TrigRate1Canvas->cd(2);    TrigRate1Canvas->cd(2)->SetGridy();
471    sst.str("");    sst.str("");
472    sst << "Trigger Rate Counters (S11 AND S12) AND (S21 AND S22) AND (S31 AND S32)";    sst << "Trigger Rate Counters (S11 AND S12) AND (S21 AND S22) AND (S31 AND S32)";
473    TrigRate1Graph->SetTitle(sst.str().c_str());    TrigRate1Graph->SetTitle(sst.str().c_str());
# Line 469  void TriggerScanBasic(TString base, TStr Line 476  void TriggerScanBasic(TString base, TStr
476    TrigRate1Graph->GetXaxis()->CenterTitle();    TrigRate1Graph->GetXaxis()->CenterTitle();
477    TrigRate1Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate1Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
478    TrigRate1Graph->GetYaxis()->CenterTitle();    TrigRate1Graph->GetYaxis()->CenterTitle();
479      TrigRate1Graph->SetMaximum(60);
480    TrigRate1Graph->Draw("AP");    TrigRate1Graph->Draw("AP");
481    //----------    //----------
482    sst.str("");    sst.str("");
483    sst << "Graph Trigger Rate Counters  (S21 OR S22) AND (S31 OR S32) vs OBT based on " << base.Data();    sst << "Graph Trigger Rate Counters  (S21 OR S22) AND (S31 OR S32) vs OBT based on " << base.Data();
484    TGraph *TrigRate2Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate2);    TGraph *TrigRate2Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate2);
485    TrigRate1Canvas->cd(3);    TrigRate1Canvas->cd(3)->SetGridy();
486    sst.str("");    sst.str("");
487    sst << "Trigger Rate Counters (S21 OR S22) AND (S31 OR S32) ";    sst << "Trigger Rate Counters (S21 OR S22) AND (S31 OR S32) ";
488    TrigRate2Graph->SetTitle(sst.str().c_str());    TrigRate2Graph->SetTitle(sst.str().c_str());
# Line 483  void TriggerScanBasic(TString base, TStr Line 491  void TriggerScanBasic(TString base, TStr
491    TrigRate2Graph->GetXaxis()->CenterTitle();    TrigRate2Graph->GetXaxis()->CenterTitle();
492    TrigRate2Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate2Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
493    TrigRate2Graph->GetYaxis()->CenterTitle();    TrigRate2Graph->GetYaxis()->CenterTitle();
494      TrigRate2Graph->SetMaximum(140);
495    TrigRate2Graph->Draw("AP");    TrigRate2Graph->Draw("AP");
496    //    //
497    //----------    //----------
# Line 494  void TriggerScanBasic(TString base, TStr Line 503  void TriggerScanBasic(TString base, TStr
503    sst << "Graph of Trigger Rate Counters (S21 AND S22) AND (S31 AND S32) vs OBT based on " << base.Data();    sst << "Graph of Trigger Rate Counters (S21 AND S22) AND (S31 AND S32) vs OBT based on " << base.Data();
504    
505    TGraph *TrigRate3Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate3);    TGraph *TrigRate3Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate3);
506    TrigRate2Canvas->cd(1);    TrigRate2Canvas->cd(1)->SetGridy();
507    sst.str("");    sst.str("");
508    sst << "Trigger Rate Counters (S21 AND S22) AND (S31 AND S32)";    sst << "Trigger Rate Counters (S21 AND S22) AND (S31 AND S32)";
509    TrigRate3Graph->SetTitle(sst.str().c_str());    TrigRate3Graph->SetTitle(sst.str().c_str());
# Line 503  void TriggerScanBasic(TString base, TStr Line 512  void TriggerScanBasic(TString base, TStr
512    TrigRate3Graph->GetXaxis()->CenterTitle();    TrigRate3Graph->GetXaxis()->CenterTitle();
513    TrigRate3Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate3Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
514    TrigRate3Graph->GetYaxis()->CenterTitle();    TrigRate3Graph->GetYaxis()->CenterTitle();
515      TrigRate3Graph->SetMaximum(60);
516    TrigRate3Graph->Draw("AP");    TrigRate3Graph->Draw("AP");
517    //----------    //----------
518    sst.str("");    sst.str("");
519    sst << "Graph Trigger Rate Counters S12 AND (S21 AND S22) vs OBT based on " << base.Data();    sst << "Graph Trigger Rate Counters S12 AND (S21 AND S22) vs OBT based on " << base.Data();
520    TGraph *TrigRate4Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate4);    TGraph *TrigRate4Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate4);
521    TrigRate2Canvas->cd(2);    TrigRate2Canvas->cd(2)->SetGridy();
522    sst.str("");    sst.str("");
523    sst << "Trigger Rate Counters S12 AND (S21 AND S22)";    sst << "Trigger Rate Counters S12 AND (S21 AND S22)";
524    TrigRate4Graph->SetTitle(sst.str().c_str());    TrigRate4Graph->SetTitle(sst.str().c_str());
# Line 517  void TriggerScanBasic(TString base, TStr Line 527  void TriggerScanBasic(TString base, TStr
527    TrigRate4Graph->GetXaxis()->CenterTitle();    TrigRate4Graph->GetXaxis()->CenterTitle();
528    TrigRate4Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate4Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
529    TrigRate4Graph->GetYaxis()->CenterTitle();    TrigRate4Graph->GetYaxis()->CenterTitle();
530      TrigRate4Graph->SetMaximum(400);
531    TrigRate4Graph->Draw("AP");    TrigRate4Graph->Draw("AP");
532    //----------    //----------
533    sst.str("");    sst.str("");
534    sst << "Graph Trigger Rate Counters (S11 OR S12) AND (S31 OR S32) vs OBT based on " << base.Data();    sst << "Graph Trigger Rate Counters (S11 OR S12) AND (S31 OR S32) vs OBT based on " << base.Data();
535    TGraph *TrigRate5Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate5);    TGraph *TrigRate5Graph   = new TGraph(nevents, (const Double_t*)time, (const Double_t*)trigrate5);
536    TrigRate2Canvas->cd(3);    TrigRate2Canvas->cd(3)->SetGridy();
537    sst.str("");    sst.str("");
538    sst << "Trigger Rate Counters (S11 OR S12) AND (S31 OR S32)";    sst << "Trigger Rate Counters (S11 OR S12) AND (S31 OR S32)";
539    TrigRate5Graph->SetTitle(sst.str().c_str());    TrigRate5Graph->SetTitle(sst.str().c_str());
# Line 531  void TriggerScanBasic(TString base, TStr Line 542  void TriggerScanBasic(TString base, TStr
542    TrigRate5Graph->GetXaxis()->CenterTitle();    TrigRate5Graph->GetXaxis()->CenterTitle();
543    TrigRate5Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");    TrigRate5Graph->GetYaxis()->SetTitle("Trigger Rate Counters (Hz)");
544    TrigRate5Graph->GetYaxis()->CenterTitle();    TrigRate5Graph->GetYaxis()->CenterTitle();
545      TrigRate5Graph->SetMaximum(170);
546    TrigRate5Graph->Draw("AP");    TrigRate5Graph->Draw("AP");
547    //----------    //----------
548    

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.23