/[PAMELA software]/quicklook/tracker/flight/macros/FTrkCalibQLook_EXPERT.cxx
ViewVC logotype

Diff of /quicklook/tracker/flight/macros/FTrkCalibQLook_EXPERT.cxx

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

revision 1.14 by pam-fi, Tue Sep 19 15:15:42 2006 UTC revision 1.24 by pam-fi, Mon Feb 12 10:18:17 2007 UTC
# Line 1  Line 1 
1  /**  `/**
2   * FTrkCalibQLookExpert.cxx   * FTrkCalibQLookExpert.cxx
3   *   *
4   * autor: D.Fedele   * autor: D.Fedele
5   * version v1r12   * version v1r23
6   * Parameters:   * Parameters:
7   *      file - the data file to analyze   *      file - the data file to analyze
8   *      step - select =1 in order to analyze one event at time   *      step - select =1 in order to analyze one event at time
# Line 273  void FTrkCalibQLook_EXPERT(TString file, Line 273  void FTrkCalibQLook_EXPERT(TString file,
273    
274      //      //
275      // other variables definitions      // other variables definitions
276    
277      Int_t risposta=0;      Int_t risposta=0;
278      stringstream fromfile;      stringstream fromfile;
279    
# Line 418  void FTrkCalibQLook_EXPERT(TString file, Line 419  void FTrkCalibQLook_EXPERT(TString file,
419      for(Int_t n = 0; n<12; n++){      for(Int_t n = 0; n<12; n++){
420        if(ctrk.ncalev[n]==0 && ctrk.calfl[n]==0)calok = 1;//GOOD        if(ctrk.ncalev[n]==0 && ctrk.calfl[n]==0)calok = 1;//GOOD
421            
422                if(ctrk.dspnum[n]==0)
423            continue;
424    
425        nn=ctrk.dspnum[n]-1;        nn=ctrk.dspnum[n]-1;
426        /*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*        /*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*
427         *         *
# Line 491  void FTrkCalibQLook_EXPERT(TString file, Line 494  void FTrkCalibQLook_EXPERT(TString file,
494        /******************************************************/        /******************************************************/
495        /* fill histos */        /* fill histos */
496        for(Int_t j = 0; j < 3072; j++){        for(Int_t j = 0; j < 3072; j++){
497          histosig[nn]->Fill((Float_t)j,ctrk.dspsig[nn][j]);          histosig[nn]->Fill(j,ctrk.dspsig[n][j]);
498          histoped[nn]->Fill((Float_t)j,ctrk.dspped[nn][j]);          histoped[nn]->Fill(j,ctrk.dspped[n][j]);
499          if(j<1024) histosiglad[nn][0]->Fill(ctrk.dspsig[nn][j]);          if(j<1024) histosiglad[nn][0]->Fill(ctrk.dspsig[n][j]);
500          if(j>=1024 && j<2048) histosiglad[nn][1]->Fill(ctrk.dspsig[nn][j]);          if(j>=1024 && j<2048) histosiglad[nn][1]->Fill(ctrk.dspsig[n][j]);
501          if(j>=2048 && j<3072) histosiglad[nn][2]->Fill(ctrk.dspsig[nn][j]);          if(j>=2048 && j<3072) histosiglad[nn][2]->Fill(ctrk.dspsig[n][j]);
502        };        };
503        histoasig[nn]->Fill(1,ctrk.sig1[nn]);        histoasig[nn]->Fill(1,ctrk.sig1[n]);
504        histoasig[nn]->Fill(1025,ctrk.sig2[nn]);        histoasig[nn]->Fill(1025,ctrk.sig2[n]);
505        histoasig[nn]->Fill(2049,ctrk.sig3[nn]);        histoasig[nn]->Fill(2049,ctrk.sig3[n]);
506        histoaped[nn]->Fill(1,ctrk.ped1[nn]);        histoaped[nn]->Fill(1,ctrk.ped1[nn]);
507        histoaped[nn]->Fill(1025,ctrk.ped2[nn]);        histoaped[nn]->Fill(1025,ctrk.ped2[n]);
508        histoaped[nn]->Fill(2049,ctrk.ped3[nn]);        histoaped[nn]->Fill(2049,ctrk.ped3[n]);
509        /******************************************************/        /******************************************************/
510                    
511        TLine li;        TLine li,liva1;
512        li.SetLineColor(38);        li.SetLineColor(38);
513        li.SetLineStyle(3);        li.SetLineStyle(4);
514        li.SetLineWidth(2);        li.SetLineWidth(2);
515                liva1.SetLineColor(42);
516        Float_t maxhist=0;        liva1.SetLineStyle(3);
517          liva1.SetLineWidth(1);
518    
519          Float_t maxhist=0,va1x=0;
520        TBox b;        TBox b;
521        /* plot PEDESTAL */        /* plot PEDESTAL */
522        c1->cd();        c1->cd();
# Line 529  void FTrkCalibQLook_EXPERT(TString file, Line 535  void FTrkCalibQLook_EXPERT(TString file,
535        if((nn+1)%2==0)  histoped[nn]->GetYaxis()->SetRangeUser(700,1700);        if((nn+1)%2==0)  histoped[nn]->GetYaxis()->SetRangeUser(700,1700);
536        histoaped[nn]->SetLineColor(5);        histoaped[nn]->SetLineColor(5);
537        histoaped[nn]->SetLineWidth(1);        histoaped[nn]->SetLineWidth(1);
538        if(ctrk.good0[0]==1 && ctrk.good0[1]==1){  //       if(ctrk.good0[0]==1 && ctrk.good0[1]==1){
539          histoped[nn]->Draw("b");          histoped[nn]->Draw("b");
540          if(nn==1){          maxhist=histoped[nn]->GetMaximum();
541            maxhist=histoped[nn]->GetMaximum();          if(nn==0){
542              b.SetFillColor(107);
543              b.SetFillStyle(3945);
544              b.DrawBox(256.,2200.,384.,maxhist);
545              b.DrawBox(768.,2200.,2047.,maxhist);
546            }
547            else if(nn==1){
548            b.SetFillColor(6);            b.SetFillColor(6);
549            b.SetFillStyle(3945);            b.SetFillStyle(3945);
550            b.DrawBox(2944.,700.,3060.,maxhist);            b.DrawBox(2944.,700.,3060.,maxhist);
551    
552            b.SetFillColor(107);            b.SetFillColor(107);
553            b.SetFillStyle(3954);            b.SetFillStyle(3954);
554              b.DrawBox(384.,700.,512.,maxhist);
555              b.DrawBox(2048.,700.,2432.,maxhist);
556            b.DrawBox(2816.,700.,2944.,maxhist);            b.DrawBox(2816.,700.,2944.,maxhist);
557            b.DrawBox(2048.,700.,2176.,maxhist);          }
558            else if(nn==3){
559              b.SetFillColor(107);
560              b.SetFillStyle(3954);
561              b.DrawBox(2816.,700.,3070.,maxhist);
562          }          }
563          else if(nn==4){          else if(nn==4){
           maxhist=histoped[nn]->GetMaximum();  
564            b.SetFillColor(107);            b.SetFillColor(107);
565            b.SetFillStyle(3954);            b.SetFillStyle(3954);
566            b.DrawBox(384.,2200.,512.,maxhist);            b.DrawBox(256.,2200.,512.,maxhist);
567              b.DrawBox(2816.,2200.,3070.,maxhist);
568          }          }
569          else if(nn==6){          else if(nn==6){
           maxhist=histoped[nn]->GetMaximum();  
570            b.SetFillColor(6);            b.SetFillColor(6);
571            b.SetFillStyle(3945);            b.SetFillStyle(3945);
572            b.DrawBox(2560.,2200.,2816.,maxhist);            b.DrawBox(1024.,2200.,1280.,maxhist);
           b.DrawBox(1024.,2200.,1535.,maxhist);  
573                        
574            b.SetFillColor(107);            b.SetFillColor(107);
575            b.SetFillStyle(3954);            b.SetFillStyle(3954);
576            b.DrawBox(512.,2200.,768.,maxhist);            b.DrawBox(512.,2200.,768.,maxhist);
577            b.DrawBox(1536.,2200.,1792.,maxhist);            b.DrawBox(1280.,2200.,1792.,maxhist);
578              b.DrawBox(2560.,2200.,2816.,maxhist);
579          }          }
580          else if(nn==7){          else if(nn==7){
           maxhist=histoped[nn]->GetMaximum();  
581            b.SetFillColor(107);            b.SetFillColor(107);
582            b.SetFillStyle(3954);            b.SetFillStyle(3954);
583            b.DrawBox(512.,700.,768.,maxhist);            b.DrawBox(512.,700.,768.,maxhist);
584              b.DrawBox(1024.,700.,1535.,maxhist);
585            }
586            else if(nn==8){
587              b.SetFillColor(107);
588              b.SetFillStyle(3954);
589              b.DrawBox(512.,2200.,768.,maxhist);
590            }
591            else if(nn==9){
592              b.SetFillColor(107);
593              b.SetFillStyle(3954);
594              b.DrawBox(256.,700.,384.,maxhist);
595              b.DrawBox(1280.,700.,1535.,maxhist);
596              b.DrawBox(1792.,700.,1920.,maxhist);
597            }
598            else if(nn==10){
599              b.SetFillColor(107);
600              b.SetFillStyle(3954);
601              b.DrawBox(1024.,2200.,1152.,maxhist);
602              b.DrawBox(2048.,2200.,3070.,maxhist);
603          }          }
604          else if(nn==11){          else if(nn==11){
           maxhist=histoped[nn]->GetMaximum();  
605            b.SetFillColor(6);            b.SetFillColor(6);
606            b.SetFillStyle(3945);            b.SetFillStyle(3945);
607            b.DrawBox(768.,700.,1024.,maxhist);            b.DrawBox(768.,700.,1024.,maxhist);
# Line 575  void FTrkCalibQLook_EXPERT(TString file, Line 609  void FTrkCalibQLook_EXPERT(TString file,
609            b.SetFillColor(107);            b.SetFillColor(107);
610            b.SetFillStyle(3954);            b.SetFillStyle(3954);
611            b.DrawBox(0.,700.,512.,maxhist);            b.DrawBox(0.,700.,512.,maxhist);
612            b.DrawBox(1920.,700.,2048.,maxhist);            b.DrawBox(1920.,700.,2560.,maxhist);
           b.DrawBox(2176.,700.,2304.,maxhist);  
613          }          }
614        }    //     }
615        else histoped[nn]->Draw("axis");  //       else histoped[nn]->Draw("axis");
616        histoaped[nn]->Draw("same");        histoaped[nn]->Draw("same");
617        if((nn+1)%2==1) {        if((nn+1)%2==1) {
618          li.DrawLine(1024.5,2200,1024.5,3200);          for(int va=1; va<24; va++){
619          li.DrawLine(2048.5,2200,2048.5,3200);            va1x=128*va;
620              liva1.DrawLine(va1x,2200.,va1x,3200.);
621            }
622            li.DrawLine(1024.5,2200.,1024.5,3200.);
623            li.DrawLine(2048.5,2200.,2048.5,3200.);
624        }        }
625        if((nn+1)%2==0) {        if((nn+1)%2==0) {
626            for(int va=1; va<24; va++){
627              va1x=128*va;
628              liva1.DrawLine(va1x,700.,va1x,1700.);
629            }
630          li.DrawLine(1024.5,700,1024.5,1700);          li.DrawLine(1024.5,700,1024.5,1700);
631          li.DrawLine(2048.5,700,2048.5,1700);          li.DrawLine(2048.5,700,2048.5,1700);
632        }        }
633          c1->Update();//draw pads in canvas
634                
635    
636                
# Line 611  void FTrkCalibQLook_EXPERT(TString file, Line 653  void FTrkCalibQLook_EXPERT(TString file,
653        histosig[nn]->GetYaxis()->CenterTitle();        histosig[nn]->GetYaxis()->CenterTitle();
654        histoasig[nn]->SetLineColor(5);        histoasig[nn]->SetLineColor(5);
655        histoasig[nn]->SetLineWidth(1);        histoasig[nn]->SetLineWidth(1);
656        if(ctrk.good0[0]==1 && ctrk.good0[1]==1){  //      if(ctrk.good0[0]==1 && ctrk.good0[1]==1){
657          histosig[nn]->Draw("b");          histosig[nn]->Draw("b");
658          if(nn==1){          maxhist=histosig[nn]->GetMaximum();
659            maxhist=histosig[nn]->GetMaximum();          if(nn==0){
660              b.SetFillColor(107);
661              b.SetFillStyle(3945);
662              b.DrawBox(256.,0.,384.,maxhist);
663              b.DrawBox(768.,0.,2047.,maxhist);
664            }
665            else if(nn==1){
666            b.SetFillColor(6);            b.SetFillColor(6);
667            b.SetFillStyle(3945);            b.SetFillStyle(3945);
668            b.DrawBox(2944.,0.,3060.,maxhist);            b.DrawBox(2944.,0.,3070.,maxhist);
669    
670            b.SetFillColor(107);            b.SetFillColor(107);
671            b.SetFillStyle(3954);            b.SetFillStyle(3954);
672              b.DrawBox(384.,0.,512.,maxhist);
673              b.DrawBox(2048.,0.,2432.,maxhist);
674            b.DrawBox(2816.,0.,2944.,maxhist);            b.DrawBox(2816.,0.,2944.,maxhist);
675            b.DrawBox(2048.,0.,2176.,maxhist);          }
676            else if(nn==3){
677              b.SetFillColor(107);
678              b.SetFillStyle(3954);
679              b.DrawBox(2816.,0.,3070.,maxhist);
680          }          }
681          else if(nn==4){          else if(nn==4){
           maxhist=histosig[nn]->GetMaximum();  
682            b.SetFillColor(107);            b.SetFillColor(107);
683            b.SetFillStyle(3954);            b.SetFillStyle(3954);
684            b.DrawBox(384.,0.,512.,maxhist);            b.DrawBox(256.,0.,512.,maxhist);
685              b.DrawBox(2816.,0.,3070.,maxhist);
686          }          }
687          else if(nn==6){          else if(nn==6){
           maxhist=histosig[nn]->GetMaximum();  
688            b.SetFillColor(6);            b.SetFillColor(6);
689            b.SetFillStyle(3945);            b.SetFillStyle(3945);
690            b.DrawBox(2560.,0.,2816.,maxhist);            b.DrawBox(1024.,0.,1280.,maxhist);
           b.DrawBox(1024.,0.,1535.,maxhist);  
691                        
692            b.SetFillColor(107);            b.SetFillColor(107);
693            b.SetFillStyle(3954);            b.SetFillStyle(3954);
694            b.DrawBox(512.,0.,768.,maxhist);            b.DrawBox(512.,0.,768.,maxhist);
695            b.DrawBox(1536.,0.,1792.,maxhist);            b.DrawBox(1280.,0.,1792.,maxhist);
696              b.DrawBox(2560.,0.,2816.,maxhist);
697          }          }
698          else if(nn==7){          else if(nn==7){
           maxhist=histosig[nn]->GetMaximum();  
699            b.SetFillColor(107);            b.SetFillColor(107);
700            b.SetFillStyle(3954);            b.SetFillStyle(3954);
701            b.DrawBox(512.,0.,768.,maxhist);            b.DrawBox(512.,0.,768.,maxhist);
702              b.DrawBox(1024.,0.,1535.,maxhist);
703            }
704            else if(nn==8){
705              b.SetFillColor(107);
706              b.SetFillStyle(3954);
707              b.DrawBox(512.,0.,768.,maxhist);
708            }
709            else if(nn==9){
710              b.SetFillColor(107);
711              b.SetFillStyle(3954);
712              b.DrawBox(256.,0.,384.,maxhist);
713              b.DrawBox(1280.,0.,1535.,maxhist);
714              b.DrawBox(1792.,0.,1920.,maxhist);
715            }
716            else if(nn==10){
717              b.SetFillColor(107);
718              b.SetFillStyle(3954);
719              b.DrawBox(1024.,0.,1152.,maxhist);
720              b.DrawBox(2048.,0.,3070.,maxhist);
721          }          }
722          else if(nn==11){          else if(nn==11){
           maxhist=histosig[nn]->GetMaximum();  
723            b.SetFillColor(6);            b.SetFillColor(6);
724            b.SetFillStyle(3945);            b.SetFillStyle(3945);
725            b.DrawBox(768.,0.,1024.,maxhist);            b.DrawBox(768.,0.,1024.,maxhist);
# Line 657  void FTrkCalibQLook_EXPERT(TString file, Line 727  void FTrkCalibQLook_EXPERT(TString file,
727            b.SetFillColor(107);            b.SetFillColor(107);
728            b.SetFillStyle(3954);            b.SetFillStyle(3954);
729            b.DrawBox(0.,0.,512.,maxhist);            b.DrawBox(0.,0.,512.,maxhist);
730            b.DrawBox(1920.,0.,2048.,maxhist);            b.DrawBox(1920.,0.,2560.,maxhist);
           b.DrawBox(2176.,0.,2304.,maxhist);  
731          }          }
732        }  //       }
733        else histosig[nn]->Draw("axis");  //       else histosig[nn]->Draw("axis");
734        histoasig[nn]->Draw("same");        histoasig[nn]->Draw("same");
735          for(int va=1; va<24; va++){
736            va1x=128*va;
737            liva1.DrawLine(va1x,0.,va1x,max);
738          }
739        li.DrawLine(1024.5,0,1024.5,max);        li.DrawLine(1024.5,0,1024.5,max);
740        li.DrawLine(2048.5,0,2048.5,max);        li.DrawLine(2048.5,0,2048.5,max);
741          c2->Update();//draw pads in canvas
742                
743        for(int ii=0;ii<3;ii++){        for(int ii=0;ii<3;ii++){
744          sig->cd();          sig->cd();
# Line 679  void FTrkCalibQLook_EXPERT(TString file, Line 753  void FTrkCalibQLook_EXPERT(TString file,
753          histosiglad[nn][ii]->GetXaxis()->SetTitle("SIG (ADC channels)");          histosiglad[nn][ii]->GetXaxis()->SetTitle("SIG (ADC channels)");
754          histosiglad[nn][ii]->GetXaxis()->CenterTitle();          histosiglad[nn][ii]->GetXaxis()->CenterTitle();
755          histosiglad[nn][ii]->Draw("");            histosiglad[nn][ii]->Draw("");  
756        }        }
757              
758      };//end loop on views      };//end loop on views
759      c1->Update();//draw pads in canvas      c1->Update();//draw pads in canvas
760      c2->Update();//draw pads in canvas      c2->Update();//draw pads in canvas

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.24

  ViewVC Help
Powered by ViewVC 1.1.23