00001
00002
00003
00004
00005
00007
00008 #include <fstream>
00009 #include <cmath>
00010 #include <cassert>
00011
00012 #include "TCanvas.h"
00013 #include "TChain.h"
00014
00015 #include "TFile.h"
00016 #include "TF1.h"
00017 #include "TGraphErrors.h"
00018 #include "TH2F.h"
00019 #include "TLegend.h"
00020 #include "TPolyLine.h"
00021 #include "TProfile2D.h"
00022 #include "TStopwatch.h"
00023 #include "TStyle.h"
00024 #include "TVector3.h"
00025 #include "TClonesArray.h"
00026
00027 #include "Calibrator/Calibrator.h"
00028 #include "DataUtil/EnergyCorrections.h"
00029 #include "MessageService/MsgService.h"
00030 #include "Conventions/Munits.h"
00031 #include "DataUtil/PlaneOutline.h"
00032 #include "Conventions/PlaneView.h"
00033 #include "Plex/PlexHandle.h"
00034 #include "UgliGeometry/UgliGeomHandle.h"
00035
00036 #include "MeuCal/MeuCuts.h"
00037 #include "MeuCal/MeuPlots.h"
00038
00039 using std::endl;
00040 using std::cout;
00041 using std::map;
00042 using std::vector;
00043
00044 string MeuPlots::fInputFileName="";
00045
00046
00047
00048 CVSID("$Id: MeuPlots.cxx,v 1.36 2007/10/05 08:45:05 hartnell Exp $");
00049
00050
00051
00052 MeuPlots::MeuPlots()
00053 {
00054 MSG("MeuPlots",Msg::kInfo)
00055 <<"Running MeuPlots Constructor..."<<endl;
00056
00057 fEntries=0;
00058 fRunNumber=100;
00059 fMeuSummary=0;
00060 fOutFile=0;
00061 fChain=0;
00062 fS="";
00063
00064 std::string fS;
00065
00066 this->MakeChain();
00067 this->SetRootFileObjects();
00068
00069
00070
00071 gStyle->SetOptStat(1111111);
00072 gStyle->SetOptFit(1111);
00073 gStyle->SetPalette(1,(Int_t*)0);
00074
00075 MSG("MeuPlots",Msg::kInfo)
00076 <<"Finished MeuPlots Constructor"<<endl;
00077 }
00078
00079
00080
00081 MeuPlots::~MeuPlots()
00082 {
00083 MSG("MeuPlots",Msg::kInfo)
00084 <<"Running MeuPlots Destructor..."<<endl;
00085
00086 if (fOutFile){
00087
00088
00089 fOutFile->Close();
00090 }
00091
00092 MSG("MeuPlots",Msg::kDebug)
00093 <<"Finished MeuPlots Destructor"<<endl;
00094 }
00095
00096
00097
00098 void MeuPlots::InitialiseLoopVariables()
00099 {
00100 MSG("MeuPlots",Msg::kDebug)<<"Initialising loop variables..."<<endl;
00101
00102 MSG("MeuPlots",Msg::kDebug)<<"Initialisation complete"<<endl;
00103 }
00104
00105
00106
00107 void MeuPlots::SetLoopVariables(Int_t entry,Int_t printMode)
00108 {
00109 if (printMode==1){
00110 Float_t fract=ceil(fEntries/20.);
00111 if (ceil(((Float_t)entry)/fract)==((Float_t)entry)/fract){
00112 MSG("MeuPlots",Msg::kInfo)
00113 <<"Fraction of loop complete: "<<entry
00114 <<"/"<<fEntries<<" ("
00115 <<(Int_t)(100.*entry/fEntries)<<"%)"<<endl;
00116 }
00117 }
00118
00119
00120 fChain->GetEntry(entry);
00121
00122
00123
00124 }
00125
00126
00127
00128 void MeuPlots::WriteOutHistos() const
00129 {
00130
00131 if (fOutFile){
00132 if (fOutFile->IsWritable()){
00133 fOutFile->cd();
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144 MSG("MeuPlots",Msg::kInfo)
00145 <<"Writing histos to: "<<fOutFile->GetName()<<" ..."<<endl;
00146 fOutFile->Write();
00147
00148
00149 }
00150 else {
00151 MSG("MeuPlots",Msg::kWarning)
00152 <<"File not writable!"<<endl;
00153 }
00154 }
00155 }
00156
00157
00158
00159 void MeuPlots::InputFileName(string f)
00160 {
00161 if (f!=""){
00162 MSG("MeuPlots",Msg::kInfo)
00163 <<"Running with input file name="<<f<<endl;
00164 fInputFileName=f;
00165 }
00166 }
00167
00168
00169
00170 vector<string> MeuPlots::MakeFileList()
00171 {
00173
00174 vector<string> fileList;
00175
00176 if (fInputFileName!=""){
00177
00178 Int_t findGives=fInputFileName.find(".root");
00179 cout<<"find gives="<<fInputFileName.find(".root")<<endl;
00180
00181 if (findGives>0){
00182
00183 fileList.push_back(fInputFileName);
00184 }
00185 else{
00186 ifstream inputFile(fInputFileName.c_str());
00187
00188
00189 if (inputFile){
00190
00191 string file="";
00192
00193
00194 while(inputFile>>file) {
00195 MSG("MeuPlots",Msg::kDebug)
00196 <<"Found input file name="<<file<<endl;
00197 fileList.push_back(file);
00198 }
00199 MSG("MeuPlots",Msg::kDebug)
00200 <<"Files names found in txt file="<<fileList.size()<<endl;
00201 }
00202 else{
00203 MSG("MeuPlots",Msg::kFatal)
00204 <<endl<<endl
00205 <<"***********************************************************"
00206 <<endl<<"Input txt file of file names does not exist!"<<endl
00207 <<"InputFileName="<<fInputFileName<<endl
00208 <<"***********************************************************"
00209 <<endl<<endl<<"Program will exit here"<<endl;
00210 exit(0);
00211 }
00212 }
00213 }
00214
00215 if (fileList.size()>0) return fileList;
00216
00217
00218 char* envVariable=getenv("MEUSUMMARY");
00219 if (envVariable==NULL){
00220 MSG("MeuPlots",Msg::kFatal)
00221 <<endl<<endl
00222 <<"*************************************************************"
00223 <<endl<<"Environmental variable MEUSUMMARY not set!"<<endl
00224 <<"Please set MEUSUMMARY to the directory containing the"
00225 <<" MeuSummary*.root files"<<endl
00226 <<"Note: If more than one file is found they will be"
00227 <<" concatenated and treated as one"<<endl
00228 <<"*************************************************************"
00229 <<endl<<endl<<"Program will exit here"<<endl;
00230 exit(0);
00231 }
00232 string sEnv=envVariable;
00233 MSG("MeuPlots",Msg::kInfo)
00234 <<"Looking for MeuSummary*.root files using the env variable"<<endl
00235 <<"MEUSUMMARY="<<sEnv<<endl;
00236 sEnv+="/MeuSummary*.root";
00237 fileList.push_back(sEnv);
00238
00239 return fileList;
00240 }
00241
00242
00243
00244 void MeuPlots::MakeChain()
00245 {
00246
00247 vector<string> fileList=this->MakeFileList();
00248
00249
00250 fChain= new TChain("s");
00251
00252 Int_t nf=0;
00253
00254 for (vector<string>::iterator file=fileList.begin();
00255 file!=fileList.end();++file){
00256
00257
00258 ifstream openOk((*file).c_str());
00259
00260
00261 Int_t stars=(*file).find("*");
00262 Int_t quest=(*file).find("?");
00263
00264
00265 if (!openOk && !(quest>=0 || stars>=0)){
00266 MSG("MeuPlots",Msg::kInfo)
00267 <<endl<<endl
00268 <<"***********************************************************"
00269 <<endl<<"Can't find file="<<*file<<endl
00270 <<"Note: you can't use '~/'. It has to be the full path"<<endl
00271 <<"***********************************************************"
00272 <<endl<<endl
00273 <<"Exiting here!"<<endl;
00274 exit(0);
00275 }
00276
00277 MSG("MeuPlots",Msg::kInfo)<<"Adding file="<<*file<<endl;
00278 nf+=fChain->Add((*file).c_str());
00279 }
00280
00281 if(nf==0){
00282 MSG("MeuPlots",Msg::kFatal)
00283 <<endl<<endl
00284 <<"*************************************************************"
00285 <<endl<<"No MeuSummary*.root files found"<<endl
00286 <<"Please set MEUSUMMARY to the directory containing the"
00287 <<" MeuSummary*.root files"<<endl
00288 <<"Or give the txt file containing the files to be input"<<endl
00289 <<"Note: If more than one file is found they will be"
00290 <<" concatenated in a TChain and treated as one"<<endl
00291 <<"*************************************************************"
00292 <<endl<<endl<<"Program will exit here"<<endl;
00293 exit(0);
00294 }
00295
00296 MSG("MeuPlots",Msg::kInfo)
00297 <<"MeuSummary information:"<<endl;
00298 fChain->Show(0);
00299
00300 MSG("MeuPlots",Msg::kInfo)
00301 <<endl<<"Analysing "<<nf<<" file(s). Reading from disk..."<<endl;
00302 }
00303
00304
00305
00306 void MeuPlots::SetRootFileObjects()
00307 {
00308 MSG("MeuPlots",Msg::kDebug)
00309 <<"Running the SetRootFileObjects method..."<<endl;
00310
00311
00312 fChain->SetBranchAddress("s",&fMeuSummary);
00313
00314
00315 fEntries=static_cast<Int_t>(fChain->GetEntries());
00316 MSG("MeuPlots",Msg::kInfo)
00317 <<"MeuSummary tree has "<<fEntries<<" entries"<<endl;
00318 if (fEntries>0){
00319
00320 fChain->GetEntry(0);
00321 fRunNumber=fMeuSummary->Run;
00322 MSG("MeuPlots",Msg::kInfo)
00323 <<"First run number="<<fRunNumber<<endl;
00324 }
00325
00326 MSG("MeuPlots",Msg::kDebug)
00327 <<"Finished the SetRootFileObjects method"<<endl;
00328 }
00329
00330
00331
00332 TFile* MeuPlots::OpenFile(Int_t runNumber,string prefix)
00333 {
00334
00335 TFile* outputFile=0;
00336
00337
00338 char *anaDir=getenv("MEUANA_DIR");
00339
00340
00341 string sAnaDir="";
00342
00343 if (anaDir!=NULL) {
00344 sAnaDir=anaDir;
00345 }
00346 else {
00347 MSG("MeuPlots",Msg::kInfo)
00348 <<"Environmental variable $MEUANA_DIR not set."
00349 <<" Writing file(s) to current directory"<<endl;
00350 sAnaDir=".";
00351 }
00352
00353
00354 string sRunNumber=Form("%d",runNumber);
00355
00356 string sDetector="";
00357
00358 string sPrefix="";
00359 if (prefix!="") sPrefix+=prefix;
00360 string sBase=sAnaDir+"/"+sPrefix+sDetector+sRunNumber;
00361 string sFileName=sBase+".root";
00362
00363
00364 ifstream Test(sFileName.c_str());
00365
00366
00367 if(!Test){
00368 outputFile=new TFile(sFileName.c_str(),"RECREATE");
00369 }
00370 else {
00371
00372 Int_t fred=1;
00373 while(Test) {
00374 Test.close();
00375 string sAppendage=Form("%d",fred);
00376 sFileName=sBase+"_"+sAppendage+".root";
00377 Test.open(sFileName.c_str());
00378 fred++;
00379 }
00380 outputFile=new TFile(sFileName.c_str(),"NEW");
00381 outputFile->SetCompressionLevel(9);
00382 }
00383
00384 string sTmp="No File!";
00385 if (outputFile) sTmp=outputFile->GetName();
00386
00387 MSG("MeuPlots",Msg::kInfo)
00388 <<"Output file opened: "<<sTmp<<endl;
00389 return outputFile;
00390 }
00391
00392
00393
00394 void MeuPlots::SetGraphAxisEtc(TGraph* g,Int_t startTimeSecs,
00395 Int_t endTimeSecs) const
00396 {
00397 MSG("MeuPlots",Msg::kVerbose)
00398 <<endl<<" ** Running the SetGraphAxisEtc method... ** "<<endl;
00399
00400 TDatime startDatime;
00401 startDatime.Set(startTimeSecs+788918400);
00402 TDatime endDatime;
00403 endDatime.Set(endTimeSecs+788918400);
00404
00405
00406 string sStartHour=Form("%d",startDatime.GetHour());
00407 string sStartMinute=Form("%d",startDatime.GetMinute());
00408 string sStartSecond=Form("%d",startDatime.GetSecond());
00409 string sStartYear=Form("%d",startDatime.GetYear());
00410 string sStartMonth=Form("%d",startDatime.GetMonth());
00411 string sStartDay=Form("%d",startDatime.GetDay());
00412 if (startDatime.GetHour()<10) sStartHour="0"+sStartHour;
00413 if (startDatime.GetMinute()<10) sStartMinute="0"+sStartMinute;
00414 if (startDatime.GetSecond()<10) sStartSecond="0"+sStartSecond;
00415 if (startDatime.GetMonth()<10) sStartMonth="0"+sStartMonth;
00416 if (startDatime.GetDay()<10) sStartDay="0"+sStartDay;
00417
00418
00419 string sEndHour=Form("%d",endDatime.GetHour());
00420 string sEndMinute=Form("%d",endDatime.GetMinute());
00421 string sEndSecond=Form("%d",endDatime.GetSecond());
00422 string sEndYear=Form("%d",endDatime.GetYear());
00423 string sEndMonth=Form("%d",endDatime.GetMonth());
00424 string sEndDay=Form("%d",endDatime.GetDay());
00425 if (endDatime.GetHour()<10) sEndHour="0"+sEndHour;
00426 if (endDatime.GetMinute()<10) sEndMinute="0"+sEndMinute;
00427 if (endDatime.GetSecond()<10) sEndSecond="0"+sEndSecond;
00428 if (endDatime.GetMonth()<10) sEndMonth="0"+sEndMonth;
00429 if (endDatime.GetDay()<10) sEndDay="0"+sEndDay;
00430
00431 static Bool_t firstTime=true;
00432 if (firstTime){
00433 MSG("LIAnalysis",Msg::kInfo)
00434 <<"Setting graph axis info:"<<endl;
00435 MSG("LIAnalysis",Msg::kInfo)
00436 <<" Start time "<<sStartHour
00437 <<":"<<sStartMinute
00438 <<":"<<sStartSecond
00439 <<" on "<<startDatime.GetYear()
00440 <<"/"<<sStartMonth
00441 <<"/"<<sStartDay
00442 <<endl;
00443
00444 MSG("LIAnalysis",Msg::kInfo)
00445 <<" End time "<<sEndHour
00446 <<":"<<sEndMinute
00447 <<":"<<sEndSecond
00448 <<" on "<<endDatime.GetYear()
00449 <<"/"<<sEndMonth
00450 <<"/"<<sEndDay
00451 <<endl;
00452 }
00453 firstTime=false;
00454
00455 Int_t timeRange=endTimeSecs-startTimeSecs;
00456
00457
00458 if (g){
00459 if (sStartDay==sEndDay && timeRange<1*24*60*60){
00460 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay+")";
00461 g->GetXaxis()->SetTitle(title.c_str());
00462 g->GetXaxis()->SetTimeFormat("%H:%M");
00463 }
00464 else if (timeRange>1*24*60*60 && timeRange<2*24*60*60){
00465 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00466 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00467 g->GetXaxis()->SetTitle(title.c_str());
00468 g->GetXaxis()->SetTimeFormat("%H:%M");
00469 }
00470 else if (timeRange>2*24*60*60 && timeRange<5*24*60*60){
00471 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00472 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00473 g->GetXaxis()->SetTitle(title.c_str());
00474 g->GetXaxis()->SetTimeFormat("%H:%M-%d/%m");
00475 }
00476 else{
00477 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00478 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00479 g->GetXaxis()->SetTitle(title.c_str());
00480 g->GetXaxis()->SetTimeFormat("%H:%M-%d/%m");
00481
00482 g->GetXaxis()->SetNdivisions(506);
00483
00484
00485
00486
00487 }
00488
00489
00490 g->GetXaxis()->SetTimeDisplay(1);
00491 g->GetXaxis()->CenterTitle();
00492
00493
00494 g->SetMarkerStyle(3);
00495 g->SetMarkerColor(2);
00496 g->SetMarkerSize(0.35);
00497 g->SetLineColor(46);
00498 }
00499 else{
00500 MSG("MeuPlots",Msg::kError)
00501 <<"Input graph pointer is null!"
00502 <<" Will do nothing."<<endl;
00503 }
00504
00505 MSG("MeuPlots",Msg::kVerbose)
00506 <<endl<<" ** Finished the SetGraphAxisEtc method... **"<<endl;
00507 }
00508
00509
00510
00511 void MeuPlots::SetGraphAxis(TAxis* a,Int_t startTimeSecs,
00512 Int_t endTimeSecs) const
00513 {
00514 if (!a){
00515 MSG("MeuPlots",Msg::kWarning)
00516 <<"Input axis pointer is null! Will do nothing"<<endl;
00517 return;
00518 }
00519
00520
00521 TDatime startDatime;
00522 startDatime.Set(startTimeSecs+788918400);
00523 TDatime endDatime;
00524 endDatime.Set(endTimeSecs+788918400);
00525
00526
00527 string sStartHour=Form("%d",startDatime.GetHour());
00528 string sStartMinute=Form("%d",startDatime.GetMinute());
00529 string sStartSecond=Form("%d",startDatime.GetSecond());
00530 string sStartYear=Form("%d",startDatime.GetYear());
00531 string sStartMonth=Form("%d",startDatime.GetMonth());
00532 string sStartDay=Form("%d",startDatime.GetDay());
00533 if (startDatime.GetHour()<10) sStartHour="0"+sStartHour;
00534 if (startDatime.GetMinute()<10) sStartMinute="0"+sStartMinute;
00535 if (startDatime.GetSecond()<10) sStartSecond="0"+sStartSecond;
00536 if (startDatime.GetMonth()<10) sStartMonth="0"+sStartMonth;
00537 if (startDatime.GetDay()<10) sStartDay="0"+sStartDay;
00538
00539
00540 string sEndHour=Form("%d",endDatime.GetHour());
00541 string sEndMinute=Form("%d",endDatime.GetMinute());
00542 string sEndSecond=Form("%d",endDatime.GetSecond());
00543 string sEndYear=Form("%d",endDatime.GetYear());
00544 string sEndMonth=Form("%d",endDatime.GetMonth());
00545 string sEndDay=Form("%d",endDatime.GetDay());
00546 if (endDatime.GetHour()<10) sEndHour="0"+sEndHour;
00547 if (endDatime.GetMinute()<10) sEndMinute="0"+sEndMinute;
00548 if (endDatime.GetSecond()<10) sEndSecond="0"+sEndSecond;
00549 if (endDatime.GetMonth()<10) sEndMonth="0"+sEndMonth;
00550 if (endDatime.GetDay()<10) sEndDay="0"+sEndDay;
00551
00552 static Bool_t firstTime=true;
00553 if (firstTime){
00554 MSG("MeuPlots",Msg::kInfo)
00555 <<"Setting axis info:"<<endl;
00556 MSG("MeuPlots",Msg::kInfo)
00557 <<" Start time "<<sStartHour
00558 <<":"<<sStartMinute
00559 <<":"<<sStartSecond
00560 <<" on "<<startDatime.GetYear()
00561 <<"/"<<sStartMonth
00562 <<"/"<<sStartDay
00563 <<endl;
00564
00565 MSG("MeuPlots",Msg::kInfo)
00566 <<" End time "<<sEndHour
00567 <<":"<<sEndMinute
00568 <<":"<<sEndSecond
00569 <<" on "<<endDatime.GetYear()
00570 <<"/"<<sEndMonth
00571 <<"/"<<sEndDay
00572 <<endl;
00573 }
00574
00575 Int_t timeRange=endTimeSecs-startTimeSecs;
00576
00577 if (sStartDay==sEndDay && timeRange<1*24*60*60){
00578 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay+")";
00579 a->SetTitle(title.c_str());
00580 a->SetTimeFormat("%H:%M");
00581 }
00582 else if (timeRange>=1*24*60*60 && timeRange<2*24*60*60){
00583 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00584 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00585 a->SetTitle(title.c_str());
00586 a->SetTimeFormat("%H:%M");
00587 }
00588 else if (timeRange>=2*24*60*60 && timeRange<5*24*60*60){
00589 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00590 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00591 a->SetTitle(title.c_str());
00592 a->SetTimeFormat("%H:%M-%d/%m");
00593 }
00594 else if (timeRange>=5*24*60*60 && timeRange<20*24*60*60){
00595 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00596 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00597 a->SetTitle(title.c_str());
00598 a->SetTimeFormat("%d/%m");
00599 }
00600 else if (timeRange>=20*24*60*60 && timeRange<90*24*60*60){
00601 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00602 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00603 a->SetTitle(title.c_str());
00604 a->SetTimeFormat("%Y/%m/%d");
00605 }
00606 else if (timeRange>=90*24*60*60 &&
00607 timeRange<2*365*24*60*60){
00608 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00609 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00610 a->SetTitle(title.c_str());
00611 a->SetTimeFormat("%Y/%m");
00612 }
00613 else if (timeRange>=2*365*24*60*60){
00614 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00615 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00616 a->SetTitle(title.c_str());
00617 a->SetTimeFormat("%Y/%m");
00618 }
00619 else{
00620 string title="Time ("+sStartYear+"/"+sStartMonth+"/"+sStartDay
00621 +" - "+sEndYear+"/"+sEndMonth+"/"+sEndDay+")";
00622 a->SetTitle(title.c_str());
00623 a->SetTimeFormat("%H:%M-%d/%m");
00624
00625 a->SetNdivisions(506);
00626
00627
00628
00629
00630 }
00631
00632
00633
00634
00635 if (firstTime) MSG("MeuPlots",Msg::kInfo)
00636 <<"Set axis title to be '"<<a->GetTitle()<<"'"<<endl;
00637
00638
00639 a->SetTimeDisplay(1);
00640 firstTime=false;
00641 }
00642
00643
00644
00645 void MeuPlots::TH1FFill(TH1F* h,std::vector<Double_t>& vX) const
00646 {
00647 if (vX.empty()) {
00648 MSG("MeuPlots",Msg::kWarning)
00649 <<"One or more vectors is empty"<<endl;
00650 return;
00651 }
00652
00653 if (!h){
00654 MSG("MeuPlots",Msg::kWarning)
00655 <<"pointer==0"<<endl;
00656 return;
00657 }
00658
00659 UInt_t vSize=vX.size();
00660 for (UInt_t i=0;i<vSize;i++){
00661 h->Fill(vX[i]);
00662 }
00663 }
00664
00665
00666
00667 void MeuPlots::TProfileFill(TProfile* p,
00668 std::vector<Double_t>& vX,
00669 std::vector<Double_t>& vY) const
00670 {
00671 MSG("MeuPlots",Msg::kDebug)
00672 <<" ** Running FillTProfile method... **"<<endl;
00673
00674 if (vX.empty()) {
00675 MSG("MeuPlots",Msg::kWarning)
00676 <<"FillTProfile: One or more vectors is empty"<<endl;
00677 return;
00678 }
00679
00680 if (!p){
00681 MSG("MeuPlots",Msg::kWarning)
00682 <<"FillTProfile: TProfile pointer==0"<<endl;
00683 return;
00684 }
00685
00686 if (vX.size()!=vY.size()) {
00687 MSG("MeuPlots",Msg::kWarning)
00688 <<"FillTProfile: vectors different sizes; returning..."<<endl;
00689 return;
00690 }
00691
00692 UInt_t vSize=vX.size();
00693 for (UInt_t i=0;i<vSize;i++){
00694 p->Fill(vX[i],vY[i]);
00695 }
00696
00697 MSG("MeuPlots",Msg::kDebug)
00698 <<" ** Finished FillTProfile method **"<<endl;
00699 }
00700
00701
00702
00703 void MeuPlots::TProfile2DFill(TProfile2D* p,
00704 std::vector<Double_t>& vX,
00705 std::vector<Double_t>& vY,
00706 std::vector<Double_t>& vZ) const
00707 {
00708 if (vX.empty()) {
00709 MSG("MeuPlots",Msg::kWarning)
00710 <<"FillTProfile2D: One or more vectors is empty"<<endl;
00711 return;
00712 }
00713
00714 if (!p){
00715 MSG("MeuPlots",Msg::kWarning)
00716 <<"FillTProfile2D: TProfile2D pointer==0"<<endl;
00717 return;
00718 }
00719
00720 if (vX.size()!=vY.size() || vX.size()!=vZ.size()) {
00721 MSG("MeuPlots",Msg::kWarning)
00722 <<"FillTProfile2D: vectors different sizes; returning..."<<endl;
00723 return;
00724 }
00725
00726 UInt_t vSize=vX.size();
00727 for (UInt_t i=0;i<vSize;i++){
00728 p->Fill(vX[i],vY[i],vZ[i]);
00729 }
00730 }
00731
00732
00733
00734 void MeuPlots::EpochTo1995(std::vector<Double_t>& t) const
00735 {
00736 if (t.empty()) {
00737 MSG("MeuPlots",Msg::kWarning)
00738 <<"EpochTo1995: One or more vectors is empty"<<endl;
00739 return;
00740 }
00741
00742 UInt_t vSize=t.size();
00743 for (UInt_t i=0;i<vSize;i++){
00744 t[i]-=788918400;
00745 }
00746 }
00747
00748
00749
00750 void MeuPlots::EpochTo1995(Int_t& t) const
00751 {
00752 t-=788918400;
00753 }
00754
00755
00756
00757 TGraph* MeuPlots::TGraphVect(std::vector<Double_t>& vX,
00758 std::vector<Double_t>& vY) const
00759 {
00760 MSG("MeuPlots",Msg::kDebug)
00761 <<" ** Running TGraphVect method... **"<<endl;
00762
00763 if (vX.empty()) {
00764 MSG("MeuPlots",Msg::kWarning)
00765 <<"TGraphVect: One or more vectors is empty"<<endl;
00766 return 0;
00767 }
00768
00769 if (vX.size()!=vY.size()) {
00770 MSG("MeuPlots",Msg::kWarning)
00771 <<"TGraphVect: vectors different sizes; returning..."<<endl;
00772 return 0;
00773 }
00774
00775 TGraph* g=new TGraph(vX.size());
00776
00777 UInt_t vSize=vX.size();
00778 for (UInt_t i=0;i<vSize;i++){
00779 g->SetPoint(i,vX[i],vY[i]);
00780 }
00781
00782 MSG("MeuPlots",Msg::kDebug)
00783 <<" ** Finished TGraphVect method **"<<endl;
00784 return g;
00785 }
00786
00787
00788
00789 void MeuPlots::TGraphOffset(std::vector<TGraph*>& v,
00790 Double_t factor) const
00791 {
00792 Double_t max=-1e200;
00793 Double_t min=+1e200;
00794
00795
00796 for (vector<TGraph*>::iterator vIt=v.begin();vIt!=v.end();++vIt){
00797 for (Int_t i=0;i<(*vIt)->GetN();i++){
00798 Double_t x=0;
00799 Double_t y=0;
00800 (*vIt)->GetPoint(i,x,y);
00801 MSG("MeuPlots",Msg::kVerbose)
00802 <<"i="<<i<<", x="<<x<<", y="<<y<<endl;
00803
00804
00805 if (y>max) max=y;
00806 if (y<min) min=y;
00807 }
00808 }
00809
00810
00811 for (vector<TGraph*>::iterator vIt=v.begin();vIt!=v.end();++vIt){
00812 for (Int_t i=0;i<(*vIt)->GetN();i++){
00813 Double_t x=0;
00814 Double_t y=0;
00815 (*vIt)->GetPoint(i,x,y);
00816 MSG("MeuPlots",Msg::kVerbose)
00817 <<"i="<<i<<", x="<<x<<", y="<<y<<endl;
00818
00819
00820 y-=min;
00821 y*=factor;
00822 (*vIt)->SetPoint(i,x,y);
00823 }
00824 }
00825
00826 MSG("MeuPlots",Msg::kDebug)
00827 <<"Found min="<<min<<", max="<<max<<endl;
00828
00829
00830 max=(max-min)*factor;
00831 min=(min-min)*factor;
00832 MSG("MeuPlots",Msg::kDebug)
00833 <<"Converted range to min="<<min<<", max="<<max<<endl;
00834
00835
00836 for (vector<TGraph*>::iterator vIt=v.begin();vIt!=v.end();++vIt){
00837 (*vIt)->SetMinimum(min-0.1*(max-min));
00838 (*vIt)->SetMaximum(max+0.1*(max-min));
00839 }
00840 }
00841
00842
00843
00844 void MeuPlots::TGraphMinMax(vector<TGraph*>& v) const
00845 {
00846 Float_t max=-1e200;
00847 Float_t min=+1e200;
00848
00849 for (vector<TGraph*>::iterator vIt=v.begin();vIt!=v.end();++vIt){
00850 for (Int_t i=0;i<(*vIt)->GetN();i++){
00851 Double_t x=0;
00852 Double_t y=0;
00853 (*vIt)->GetPoint(i,x,y);
00854 MSG("MeuPlots",Msg::kVerbose)
00855 <<"i="<<i<<", x="<<x<<", y="<<y<<endl;
00856
00857
00858 if (y>max) max=y;
00859 if (y<min) min=y;
00860 }
00861 }
00862
00863 MSG("MeuPlots",Msg::kDebug)
00864 <<"Found min="<<min<<", max="<<max<<endl;
00865
00866
00867 for (vector<TGraph*>::iterator vIt=v.begin();vIt!=v.end();++vIt){
00868 (*vIt)->SetMinimum(min-0.1*(max-min));
00869 (*vIt)->SetMaximum(max+0.1*(max-min));
00870 }
00871 }
00872
00873
00874
00875 TGraph* MeuPlots::TGraphMap(const std::map<Int_t,Float_t>& m) const
00876 {
00877 MSG("MeuPlots",Msg::kDebug)
00878 <<" ** Running TGraphMap method... **"<<endl;
00879
00880 TGraph* g=new TGraph(m.size());
00881
00882 map<Int_t,Float_t>::const_iterator mIter=m.begin();
00883
00884 Int_t i=0;
00885
00886 while (mIter!=m.end()){
00887 g->SetPoint(i,mIter->first,mIter->second);
00888
00889 i++;
00890 mIter++;
00891 }
00892
00893 MSG("MeuPlots",Msg::kDebug)
00894 <<" ** Finished TGraphMap method **"<<endl;
00895 return g;
00896 }
00897
00898
00899
00900 void MeuPlots::NormaliseVector(std::vector<Double_t>& v,Int_t mode) const
00901 {
00902 MSG("MeuPlots",Msg::kDebug)
00903 <<" ** Running NormaliseVector method... **"<<endl;
00904
00905 if (v.size()>0){
00906
00907 if (mode==1){
00908
00909 Double_t average=0;
00910 for (UInt_t i=0;i<v.size();i++) average+=v[i];
00911 average/=v.size();
00912
00913 MSG("MeuPlots",Msg::kVerbose)<<"Average="<<average<<endl;
00914
00915
00916 for (UInt_t i=0;i<v.size();i++) v[i]/=average;
00917 }
00918 else if (mode==2){
00919
00920 Double_t vMax=-9e50;
00921 Double_t vMin=9e50;
00922
00923
00924 for (UInt_t i=0;i<v.size();i++){
00925 if (v[i]>vMax) vMax=v[i];
00926 if (v[i]<vMin) vMin=v[i];
00927 }
00928
00929
00930 Int_t numBins=300;
00931 if (4*v.size()<10000) numBins=4*v.size();
00932
00933 MSG("MeuPlots",Msg::kInfo)
00934 <<"vMax="<<vMax <<", vMin="<<vMin<<", numBins="<<numBins<<endl;
00935
00936
00937 TH1F* h=new TH1F("h","h",numBins,vMin-abs(0.1*vMin),
00938 vMax+abs(0.1*vMin));
00939 h->SetBit(TH1::kCanRebin);
00940
00941 Double_t average=0;
00942 for (UInt_t i=0;i<v.size();i++){
00943
00944 average+=v[i];
00945
00946
00947 h->Fill(v[i]);
00948 }
00949 average/=v.size();
00950
00951
00952 h->Fit("gaus","q0");
00953 TF1* func=h->GetFunction("gaus");
00954 Double_t p1=func->GetParameter(1);
00955 Double_t p2=func->GetParameter(2);
00956
00957
00958 Double_t avToNormWith=p1;
00959 if (p1<vMin || p1>vMax) avToNormWith=average;
00960
00961 MSG("MeuPlots",Msg::kInfo)
00962 <<"Fitted mean="<<p1
00963 <<" (average="<<average
00964 <<") fitted rms="<<p2
00965 <<", using avToNormWith="<<avToNormWith<<endl;
00966
00967
00968 for (UInt_t i=0;i<v.size();i++) v[i]/=avToNormWith;
00969
00970 delete h;
00971 }
00972 }
00973
00974 MSG("MeuPlots",Msg::kDebug)
00975 <<" ** Finished NormaliseVector method **"<<endl;
00976 }
00977
00978
00979
00980 void MeuPlots::ScaleVector(std::vector<Double_t>& v,
00981 Double_t scaleFactor) const
00982 {
00983 MSG("MeuPlots",Msg::kDebug)
00984 <<" ** Running ScaleVector method... **"<<endl;
00985
00986 for (UInt_t i=0;i<v.size();i++) v[i]*=scaleFactor;
00987
00988 MSG("MeuPlots",Msg::kDebug)
00989 <<" ** Finished ScaleVector method **"<<endl;
00990 }
00991
00992
00993
00994 void MeuPlots::FlipVector(std::vector<Double_t>& v) const
00995 {
00996 MSG("MeuPlots",Msg::kDebug)
00997 <<" ** Running FlipVector method... **"<<endl;
00998
00999 vector<Double_t> tempV=v;
01000
01001 for (UInt_t i=0;i<v.size();i++) v[i]=tempV[v.size()-1-i];
01002
01003 MSG("MeuPlots",Msg::kDebug)
01004 <<" ** Finished FlipVector method **"<<endl;
01005 }
01006
01007
01008
01009 Int_t MeuPlots::Rnd(Double_t x) const
01010 {
01011 Double_t xi=0;
01012
01013 Double_t floatPart=modf(x,&xi);
01014
01015
01016 if (floatPart>0.5) xi++;
01017
01018 return static_cast<Int_t>(xi);
01019 }
01020
01021
01022
01023 void MeuPlots::ScaleMap(std::map<Int_t,Float_t>& m,
01024 const std::map<Int_t,Float_t>& scaleFactor) const
01025 {
01026 MSG("MeuPlots",Msg::kDebug)
01027 <<" ** Running ScaleMap method... **"<<endl;
01028
01029 if (m.size()==scaleFactor.size()){
01030
01031 map<Int_t,Float_t>::iterator mIter=m.begin();
01032 map<Int_t,Float_t>::const_iterator scale=scaleFactor.begin();
01033
01034
01035 while (mIter!=m.end()){
01036
01037
01038 if (scale->second!=0){
01039 MSG("MeuPlots",Msg::kVerbose)
01040 <<"mIter="<<mIter->second<<", scale="<<scale->second<<endl;
01041 mIter->second/=scale->second;
01042 }
01043 else MSG("MeuPlots",Msg::kWarning)<<"Scale factor zero!"<<endl;
01044
01045 mIter++;
01046 scale++;
01047 }
01048 }
01049 else{
01050 MSG("MeuPlots",Msg::kWarning)
01051 <<"Not scaling map, vectors are different sizes!"<<endl;
01052 }
01053
01054 MSG("MeuPlots",Msg::kDebug)
01055 <<" ** Finished ScaleMap method **"<<endl;
01056 }
01057
01058
01059
01060 void MeuPlots::MeuSystematics()
01061 {
01062
01063 MSG("MeuPlots",Msg::kInfo)
01064 <<" ** Running MeuSystematics method... **"<<endl;
01065
01066
01067 fOutFile=this->OpenFile(46,"MeuGeom");
01068
01069 vector<Double_t> vTimeSec;
01070 vTimeSec.reserve(fEntries);
01071 Int_t startTimeSecs=2000000000;
01072 Int_t endTimeSecs=1;
01073 Int_t div=2;
01074 vector<Double_t> vMeuAdc;
01075 vMeuAdc.reserve(fEntries/div);
01076 vector<Double_t> vMeuSigLin;
01077 vMeuSigLin.reserve(fEntries/div);
01078 vector<Double_t> vMeuSigCor;
01079 vMeuSigCor.reserve(fEntries/div);
01080 vector<Double_t> vMeuSigCorNoCut;
01081 vMeuSigCorNoCut.reserve(fEntries/div);
01082 vector<Double_t> vMeuSigMap;
01083 vMeuSigMap.reserve(fEntries/div);
01084 vector<Double_t> vMeuSigMapNoCut;
01085 vMeuSigMapNoCut.reserve(fEntries/div);
01086 vector<Double_t> vWinPl;
01087 vWinPl.reserve(fEntries/div);
01088
01089
01090
01091
01092 vector<Double_t> vMeuV2;
01093 vMeuV2.reserve(fEntries/div);
01094 vector<Double_t> vWinVtxSideTPosV2;
01095 vWinVtxSideTPosV2.reserve(fEntries/div);
01096 vector<Double_t> vWinVtxSideLPosV2;
01097 vWinVtxSideLPosV2.reserve(fEntries/div);
01098 vector<Double_t> vWinVtxSideStripV2;
01099 vWinVtxSideStripV2.reserve(fEntries/div);
01100 vector<Double_t> vMeuV3;
01101 vMeuV3.reserve(fEntries/div);
01102 vector<Double_t> vWinVtxSideTPosV3;
01103 vWinVtxSideTPosV3.reserve(fEntries/div);
01104 vector<Double_t> vWinVtxSideLPosV3;
01105 vWinVtxSideLPosV3.reserve(fEntries/div);
01106 vector<Double_t> vWinVtxSideStripV3;
01107 vWinVtxSideStripV3.reserve(fEntries/div);
01108
01109 vector<Double_t> vMeuYvsX;
01110 vMeuYvsX.reserve(fEntries/div);
01111 vector<Double_t> vWinVtxSideX;
01112 vWinVtxSideX.reserve(fEntries/div);
01113 vector<Double_t> vWinVtxSideY;
01114 vWinVtxSideY.reserve(fEntries/div);
01115
01116
01117
01118
01119
01120
01121
01122
01123
01124
01125 vector<Double_t> vWinStopSideX;
01126 vWinStopSideX.reserve(fEntries/div);
01127 vector<Double_t> vWinStopSideY;
01128 vWinStopSideY.reserve(fEntries/div);
01129
01130
01131
01132
01133
01134
01135
01136
01137
01138 vector<Double_t> vWinCosThetaY;
01139 vWinCosThetaY.reserve(fEntries/div);
01140 vector<Double_t> vWinCosThetaZ;
01141 vWinCosThetaZ.reserve(fEntries/div);
01142
01143 TH1F* hWinSigMap=new TH1F("hWinSigMap","hWinSigMap",1000,-1,3000);
01144 hWinSigMap->SetFillColor(0);
01145 hWinSigMap->SetTitle("hWinSigMap");
01146 hWinSigMap->GetXaxis()->SetTitle("SigMap");
01147 hWinSigMap->GetXaxis()->CenterTitle();
01148
01149
01150 TH1F* hThetaY=new TH1F("hThetaY","hThetaY",100,-1,1);
01151 hThetaY->SetFillColor(0);
01152 hThetaY->SetTitle("Cos(#theta_{Y})");
01153 hThetaY->GetXaxis()->SetTitle("Cos(#theta_{Y})");
01154 hThetaY->GetXaxis()->CenterTitle();
01155
01156 TH1F* hThetaZ=new TH1F("hThetaZ","hThetaZ",100,-1,1);
01157 hThetaZ->SetFillColor(0);
01158 hThetaZ->SetTitle("Cos(#theta_{Z})");
01159 hThetaZ->GetXaxis()->SetTitle("Cos(#theta_{Z})");
01160 hThetaZ->GetXaxis()->CenterTitle();
01161
01162 TH1F* hWinPl=new TH1F("hWinPl","hWinPl",243,0,485);
01163 hWinPl->SetTitle("Track Window Position in Detector");
01164 hWinPl->GetXaxis()->SetTitle("Plane");
01165 hWinPl->GetXaxis()->CenterTitle();
01166 hWinPl->GetYaxis()->SetTitle("");
01167 hWinPl->GetYaxis()->CenterTitle();
01168 hWinPl->SetLineColor(2);
01169 hWinPl->SetFillColor(0);
01170
01171
01172 TH2F* hYvsXWinVtxSide=new TH2F("hYvsXWinVtxSide","hYvsXWinVtxSide",
01173 60,-4,4,60,-4,4);
01174 hYvsXWinVtxSide->SetTitle("Track Window Position (Muon-Entry Side)");
01175 hYvsXWinVtxSide->GetXaxis()->SetTitle("X (m)");
01176 hYvsXWinVtxSide->GetXaxis()->CenterTitle();
01177 hYvsXWinVtxSide->GetYaxis()->SetTitle("Y (m)");
01178 hYvsXWinVtxSide->GetYaxis()->CenterTitle();
01179 hYvsXWinVtxSide->SetLineColor(2);
01180 hYvsXWinVtxSide->SetFillColor(0);
01181
01182
01183 TH2F* hYvsXWinStopSide=new TH2F("hYvsXWinStopSide","hYvsXWinStopSide",
01184 60,-4,4,60,-4,4);
01185 hYvsXWinStopSide->SetTitle("Track Window Position (Muon-Stop Side)");
01186 hYvsXWinStopSide->GetXaxis()->SetTitle("X (m)");
01187 hYvsXWinStopSide->GetXaxis()->CenterTitle();
01188 hYvsXWinStopSide->GetYaxis()->SetTitle("Y (m)");
01189 hYvsXWinStopSide->GetYaxis()->CenterTitle();
01190 hYvsXWinStopSide->SetLineColor(2);
01191 hYvsXWinStopSide->SetFillColor(0);
01192
01193
01194 string sCalType="";
01195
01199
01200 this->InitialiseLoopVariables();
01201
01202 for(Int_t entry=0;entry<fEntries;entry++){
01203
01204 this->SetLoopVariables(entry);
01205
01206 MeuSummary& t=(*fMeuSummary);
01207
01209
01211
01212
01213
01214
01215
01216
01217
01218
01219
01220
01221
01222
01223 if (t.TimeSec<1091318400) continue;
01224
01225
01226 if (t.WinSigMap>0){
01227
01228 if (fabs(t.WinAvCosThetaZ)>0.5){
01229 hWinSigMap->Fill(t.WinSigMap);
01230 MAXMSG("MeuPlots",Msg::kInfo,100)
01231 <<"Filling... t.WinAvCosThetaZ="<<t.WinAvCosThetaZ<<endl;
01232 }
01233 else {
01234 MAXMSG("MeuPlots",Msg::kInfo,100)
01235 <<"t.WinAvCosThetaZ="<<t.WinAvCosThetaZ<<endl;
01236 }
01237
01238
01239 vMeuSigMapNoCut.push_back(t.WinSigMap/14);
01240 vMeuSigCorNoCut.push_back(t.WinSigCor/14);
01241
01242 if (t.WinSigMap>200 && t.WinSigMap<1500){
01243
01244 Float_t enDep=t.WinSigMap;
01245 sCalType="SigMap";
01246
01247 Int_t evTime=t.TimeSec;
01248 vTimeSec.push_back(evTime);
01249 vMeuAdc.push_back(t.WinAdc);
01250 vMeuSigLin.push_back(t.WinSigLin);
01251 vMeuSigCor.push_back(t.WinSigCor);
01252 vMeuSigMap.push_back(t.WinSigMap);
01253
01254
01255 if (evTime>endTimeSecs) endTimeSecs=evTime;
01256 if (evTime<startTimeSecs && evTime>0) startTimeSecs=evTime;
01257 if (evTime<=0) {
01258 cout<<"Bad time="<<evTime<<endl;
01259 }
01260
01261
01262 Float_t r2=pow(t.WinVtxSideX-t.WinStopSideX,2)+
01263 pow(t.WinVtxSideY-t.WinStopSideY,2)+
01264 pow(t.WinVtxSideZ-t.WinStopSideZ,2);
01265 Float_t cosThetaY=-2;
01266 Float_t cosThetaZ=-2;
01267 if (r2>0){
01268 Float_t r=sqrt(r2);
01269 cosThetaY=(t.WinVtxSideY-t.WinStopSideY)/r;
01270 cosThetaZ=(t.WinVtxSideZ-t.WinStopSideZ)/r;
01271 }
01272 vWinCosThetaY.push_back(cosThetaY);
01273 vWinCosThetaZ.push_back(cosThetaZ);
01274 hThetaY->Fill(cosThetaY);
01275 hThetaZ->Fill(cosThetaZ);
01276
01277
01278 Int_t pl=t.WinStopSidePl;
01279 if (t.WinVtxSidePl<t.WinStopSidePl) pl=t.WinVtxSidePl;
01280 pl+=abs(t.WinVtxSidePl-t.WinStopSidePl)/2;
01281 hWinPl->Fill(pl);
01282 vWinPl.push_back(pl);
01283
01284 if (t.SM2){
01285
01286
01287 if (t.WinVtxSideX>-99 && t.WinVtxSideY>-99 &&
01288 t.WinStopSideX>-99 && t.WinStopSideY>-99){
01289 vMeuYvsX.push_back(enDep);
01290 vWinVtxSideX.push_back(t.WinVtxSideX);
01291 vWinVtxSideY.push_back(t.WinVtxSideY);
01292 vWinStopSideX.push_back(t.WinStopSideX);
01293 vWinStopSideY.push_back(t.WinStopSideY);
01294 hYvsXWinVtxSide->Fill(t.WinVtxSideX,t.WinVtxSideY);
01295 hYvsXWinStopSide->Fill(t.WinStopSideX,t.WinStopSideY);
01296 }
01297 else{
01298 MSG("MeuPlots",Msg::kDebug)
01299 <<"Crazy X and Y positions:"<<endl
01300 <<" WinVtxSide: x="<<t.WinVtxSideX<<", y="<<t.WinVtxSideY
01301 <<endl
01302 <<" WinStopSide: x="<<t.WinStopSideX<<", y="<<t.WinStopSideY
01303 <<endl;
01304 }
01305
01306
01307 if (t.WinVtxSideTPos>-99 && t.WinVtxSideLPos>-99 &&
01308 t.WinStopSideTPos>-99 && t.WinStopSideLPos>-99){
01309 if (t.WinVtxSideView==2){
01310 vMeuV2.push_back(enDep);
01311 vWinVtxSideTPosV2.push_back(t.WinVtxSideTPos);
01312 vWinVtxSideLPosV2.push_back(t.WinVtxSideLPos);
01313 vWinVtxSideStripV2.push_back(t.WinVtxSideStrip);
01314 }
01315 if (t.WinVtxSideView==3){
01316 vMeuV3.push_back(enDep);
01317 vWinVtxSideTPosV3.push_back(t.WinVtxSideTPos);
01318 vWinVtxSideLPosV3.push_back(t.WinVtxSideLPos);
01319 vWinVtxSideStripV3.push_back(t.WinVtxSideStrip);
01320 }
01321 }
01322 }
01323 }
01324 }
01325 }
01326
01330
01331 MSG("MeuPlots",Msg::kInfo)<<"Finished main loop"<<endl;
01332
01333 MSG("MeuPlots",Msg::kInfo)
01334 <<"Start time="<<startTimeSecs<<", endTime="<<endTimeSecs<<endl;
01335
01336 this->EpochTo1995(vTimeSec);
01337 this->EpochTo1995(endTimeSecs);
01338 this->EpochTo1995(startTimeSecs);
01339
01343 TCanvas *cMeuAdcVsTime=new TCanvas("cMeuAdcVsTime","cMeuAdcVsTime",
01344 0,0,800,1000);
01345 cMeuAdcVsTime->SetFillColor(0);
01346 cMeuAdcVsTime->Divide(1,2);
01347 cMeuAdcVsTime->cd(1);
01348 TGraph* gMeuAdcVsTime=this->TGraphVect(vTimeSec,vMeuAdc);
01349 if (gMeuAdcVsTime){
01350 cout<<"Drawing plots..."<<endl;
01351 gMeuAdcVsTime->Draw("ap");
01352 this->SetGraphAxis(gMeuAdcVsTime->GetXaxis(),
01353 startTimeSecs,endTimeSecs);
01354 gMeuAdcVsTime->SetMarkerStyle(3);
01355 gMeuAdcVsTime->SetMarkerColor(3);
01356 gMeuAdcVsTime->SetMarkerSize(1);
01357 gMeuAdcVsTime->SetTitle("MEU in ADCs vs Time");
01358
01359 gMeuAdcVsTime->GetXaxis()->CenterTitle();
01360 gMeuAdcVsTime->GetYaxis()->SetTitle("MEU");
01361 gMeuAdcVsTime->GetYaxis()->CenterTitle();
01362 gMeuAdcVsTime->Write("gMeuAdcVsTime");
01363 }
01364 cout<<"Drawing plots2..."<<endl;
01365 Int_t numBins=static_cast<Int_t>((vTimeSec.size()/600)+1);
01366 TProfile* pMeuAdcVsTime=new TProfile("pMeuAdcVsTime","pMeuAdcVsTime",
01367 numBins,
01368 startTimeSecs,endTimeSecs);
01369 this->TProfileFill(pMeuAdcVsTime,vTimeSec,vMeuAdc);
01370 cMeuAdcVsTime->cd(2);
01371 pMeuAdcVsTime->Draw();
01372 this->SetGraphAxis(pMeuAdcVsTime->GetXaxis(),
01373 startTimeSecs,endTimeSecs);
01374 pMeuAdcVsTime->SetMarkerStyle(3);
01375 pMeuAdcVsTime->SetMarkerColor(3);
01376 pMeuAdcVsTime->SetMarkerSize(1);
01377 pMeuAdcVsTime->SetTitle("MEU in ADCs vs Time");
01378
01379 pMeuAdcVsTime->GetXaxis()->CenterTitle();
01380 pMeuAdcVsTime->GetYaxis()->SetTitle("MEU");
01381 pMeuAdcVsTime->GetYaxis()->CenterTitle();
01382
01383
01384 cout<<"Drawing plots..."<<endl;
01388 TCanvas *cMeuVsTime=new TCanvas("cMeuVsTime","cMeuVsTime",
01389 0,0,800,1000);
01390 cMeuVsTime->SetFillColor(0);
01391 cMeuVsTime->Divide(1,2);
01392 cMeuVsTime->cd(1);
01393 TGraph* gMeuVsTime=this->TGraphVect(vTimeSec,vMeuSigCor);
01394 if (gMeuVsTime){
01395 gMeuVsTime->Draw("ap");
01396 this->SetGraphAxis(gMeuVsTime->GetXaxis(),
01397 startTimeSecs,endTimeSecs);
01398 gMeuVsTime->SetMarkerStyle(3);
01399 gMeuVsTime->SetMarkerColor(3);
01400 gMeuVsTime->SetMarkerSize(1);
01401 gMeuVsTime->SetTitle("MEU in Strip To Strip Corrected ADCs (SigCors) vs Time");
01402
01403 gMeuVsTime->GetXaxis()->CenterTitle();
01404 gMeuVsTime->GetYaxis()->SetTitle("MEU");
01405 gMeuVsTime->GetYaxis()->CenterTitle();
01406 gMeuVsTime->Write("gMeuVsTime");
01407 }
01408 TProfile* pMeuVsTime=new TProfile("pMeuVsTime","pMeuVsTime",
01409 numBins,
01410 startTimeSecs,endTimeSecs);
01411 this->TProfileFill(pMeuVsTime,vTimeSec,vMeuSigCor);
01412 cMeuVsTime->cd(2);
01413 pMeuVsTime->Draw();
01414 this->SetGraphAxis(pMeuVsTime->GetXaxis(),
01415 startTimeSecs,endTimeSecs);
01416 pMeuVsTime->SetMarkerStyle(3);
01417 pMeuVsTime->SetMarkerColor(3);
01418 pMeuVsTime->SetMarkerSize(1);
01419 pMeuVsTime->SetTitle("Profile of MEU in Strip To Strip Corrected ADCs (SigCors) vs Time");
01420
01421 pMeuVsTime->GetXaxis()->CenterTitle();
01422 pMeuVsTime->GetYaxis()->SetTitle("MEU");
01423 pMeuVsTime->GetYaxis()->CenterTitle();
01424
01425
01426 cout<<"Drawing plots..."<<endl;
01430 TCanvas *cMeuVsGeom=new TCanvas("cMeuVsGeom","cMeuVsGeom",
01431 0,0,1000,1000);
01432 cMeuVsGeom->SetFillColor(0);
01433 cMeuVsGeom->Divide(3,2);
01434 cMeuVsGeom->cd(1);
01435 TGraph* gMeuAdcVsPlane=this->TGraphVect(vWinPl,vMeuAdc);
01436 if (gMeuAdcVsPlane){
01437 gMeuAdcVsPlane->Draw("ap");
01438 gMeuAdcVsPlane->SetMarkerStyle(3);
01439 gMeuAdcVsPlane->SetMarkerColor(3);
01440 gMeuAdcVsPlane->SetMarkerSize(1);
01441 gMeuAdcVsPlane->SetTitle("MEU in ADCs vs Plane");
01442 gMeuAdcVsPlane->GetXaxis()->SetTitle("Plane");
01443 gMeuAdcVsPlane->GetXaxis()->CenterTitle();
01444 gMeuAdcVsPlane->GetYaxis()->SetTitle("MEU");
01445 gMeuAdcVsPlane->GetYaxis()->CenterTitle();
01446 gMeuAdcVsPlane->Write("gMeuAdcVsPlane");
01447 }
01448 cMeuVsGeom->cd(2);
01449 TGraph* gMeuSigLinVsPlane=this->TGraphVect(vWinPl,vMeuSigLin);
01450 if (gMeuSigLinVsPlane){
01451 gMeuSigLinVsPlane->Draw("ap");
01452 gMeuSigLinVsPlane->SetMarkerStyle(3);
01453 gMeuSigLinVsPlane->SetMarkerColor(3);
01454 gMeuSigLinVsPlane->SetMarkerSize(1);
01455 gMeuSigLinVsPlane->SetTitle("MEU in Gain Corrected ADCs (like PEs) vs Plane");
01456 gMeuSigLinVsPlane->GetXaxis()->SetTitle("Plane");
01457 gMeuSigLinVsPlane->GetXaxis()->CenterTitle();
01458 gMeuSigLinVsPlane->GetYaxis()->SetTitle("MEU");
01459 gMeuSigLinVsPlane->GetYaxis()->CenterTitle();
01460 gMeuSigLinVsPlane->Write("gMeuSigLinVsPlane");
01461 }
01462 cMeuVsGeom->cd(3);
01463 TGraph* gMeuSigCorVsPlane=this->TGraphVect(vWinPl,vMeuSigCor);
01464 if (gMeuSigCorVsPlane){
01465 gMeuSigCorVsPlane->Draw("ap");
01466 gMeuSigCorVsPlane->SetMarkerStyle(3);
01467 gMeuSigCorVsPlane->SetMarkerColor(3);
01468 gMeuSigCorVsPlane->SetMarkerSize(1);
01469 gMeuSigCorVsPlane->SetTitle("MEU in Strip to Strip Corrected ADCs (SigCors) vs Plane");
01470 gMeuSigCorVsPlane->GetXaxis()->SetTitle("Plane");
01471 gMeuSigCorVsPlane->GetXaxis()->CenterTitle();
01472 gMeuSigCorVsPlane->GetYaxis()->SetTitle("MEU");
01473 gMeuSigCorVsPlane->GetYaxis()->CenterTitle();
01474 gMeuSigCorVsPlane->Write("gMeuSigCorVsPlane");
01475 }
01476 cMeuVsGeom->cd(4);
01477 Int_t nPlBins=static_cast<Int_t>((vWinPl.size()/600)+1);
01478 if (nPlBins>486) nPlBins=486;
01479 TProfile* pMeuAdcVsPlane=new TProfile("pMeuAdcVsPlane",
01480 "pMeuAdcVsPlane",
01481 nPlBins,0,485);
01482 this->TProfileFill(pMeuAdcVsPlane,vWinPl,vMeuAdc);
01483 pMeuAdcVsPlane->Draw();
01484 pMeuAdcVsPlane->SetTitle("MEU in ADCs vs Plane");
01485 pMeuAdcVsPlane->GetXaxis()->SetTitle("Plane");
01486 pMeuAdcVsPlane->GetXaxis()->CenterTitle();
01487 pMeuAdcVsPlane->GetYaxis()->SetTitle("MEU");
01488 pMeuAdcVsPlane->GetYaxis()->CenterTitle();
01489 cMeuVsGeom->cd(5);
01490 TProfile* pMeuSigLinVsPlane=new TProfile("pMeuSigLinVsPlane",
01491 "pMeuSigLinVsPlane",
01492 nPlBins,0,485);
01493 this->TProfileFill(pMeuSigLinVsPlane,vWinPl,vMeuSigLin);
01494 pMeuSigLinVsPlane->Draw();
01495 pMeuSigLinVsPlane->SetTitle("MEU in Gain Corrected ADCs (like PEs) vs Plane");
01496 pMeuSigLinVsPlane->GetXaxis()->SetTitle("Plane");
01497 pMeuSigLinVsPlane->GetXaxis()->CenterTitle();
01498 pMeuSigLinVsPlane->GetYaxis()->SetTitle("MEU");
01499 pMeuSigLinVsPlane->GetYaxis()->CenterTitle();
01500 cMeuVsGeom->cd(6);
01501 TProfile* pMeuSigCorVsPlane=new TProfile("pMeuSigCorVsPlane",
01502 "pMeuSigCorVsPlane",
01503 nPlBins,0,485);
01504 this->TProfileFill(pMeuSigCorVsPlane,vWinPl,vMeuSigCor);
01505 pMeuSigCorVsPlane->Draw();
01506 pMeuSigCorVsPlane->SetTitle("MEU in Strip to Strip Corrected ADCs (SigCors) vs Plane");
01507 pMeuSigCorVsPlane->GetXaxis()->SetTitle("Plane");
01508 pMeuSigCorVsPlane->GetXaxis()->CenterTitle();
01509 pMeuSigCorVsPlane->GetYaxis()->SetTitle("MEU");
01510 pMeuSigCorVsPlane->GetYaxis()->CenterTitle();
01511
01512
01513 cout<<"Drawing plots..."<<endl;
01517 TCanvas *cMeuVsPlane1=new TCanvas("cMeuVsPlane1","cMeuVsPlane1",
01518 0,0,1000,1000);
01519 cMeuVsPlane1->SetFillColor(0);
01520 cMeuVsPlane1->Divide(2,2);
01521 cMeuVsPlane1->cd(1);
01522 TProfile* pMeuAdcVsPlane1=new TProfile("pMeuAdcVsPlane1",
01523 "pMeuAdcVsPlane1",
01524 486,0,486);
01525 this->TProfileFill(pMeuAdcVsPlane1,vWinPl,vMeuAdc);
01526 pMeuAdcVsPlane1->Draw();
01527 pMeuAdcVsPlane1->SetTitle("MEU in ADCs vs Plane");
01528 pMeuAdcVsPlane1->GetXaxis()->SetTitle("Plane");
01529 pMeuAdcVsPlane1->GetXaxis()->CenterTitle();
01530 pMeuAdcVsPlane1->GetYaxis()->SetTitle("MEU");
01531 pMeuAdcVsPlane1->GetYaxis()->CenterTitle();
01532 cMeuVsPlane1->cd(2);
01533 TProfile* pMeuSigLinVsPlane1=new TProfile("pMeuSigLinVsPlane1",
01534 "pMeuSigLinVsPlane1",
01535 486,0,486);
01536 this->TProfileFill(pMeuSigLinVsPlane1,vWinPl,vMeuSigLin);
01537 pMeuSigLinVsPlane1->Draw();
01538 pMeuSigLinVsPlane1->SetTitle("MEU in Gain Corrected ADCs (like PEs) vs Plane");
01539 pMeuSigLinVsPlane1->GetXaxis()->SetTitle("Plane");
01540 pMeuSigLinVsPlane1->GetXaxis()->CenterTitle();
01541 pMeuSigLinVsPlane1->GetYaxis()->SetTitle("MEU");
01542 pMeuSigLinVsPlane1->GetYaxis()->CenterTitle();
01543 cMeuVsPlane1->cd(3);
01544 TProfile* pMeuSigCorVsPlane1=new TProfile("pMeuSigCorVsPlane1",
01545 "pMeuSigCorVsPlane1",
01546 486,0,486);
01547 this->TProfileFill(pMeuSigCorVsPlane1,vWinPl,vMeuSigCor);
01548 pMeuSigCorVsPlane1->Draw();
01549 pMeuSigCorVsPlane1->SetTitle("MEU in Strip to Strip Corrected ADCs (SigCors) vs Plane");
01550 pMeuSigCorVsPlane1->GetXaxis()->SetTitle("Plane");
01551 pMeuSigCorVsPlane1->GetXaxis()->CenterTitle();
01552 pMeuSigCorVsPlane1->GetYaxis()->SetTitle("MEU");
01553 pMeuSigCorVsPlane1->GetYaxis()->CenterTitle();
01554 cMeuVsPlane1->cd(4);
01555 TProfile* pMeuSigMapVsPlane1=new TProfile("pMeuSigMapVsPlane1",
01556 "pMeuSigMapVsPlane1",
01557 486,0,486);
01558 this->TProfileFill(pMeuSigMapVsPlane1,vWinPl,vMeuSigMap);
01559 pMeuSigMapVsPlane1->Draw();
01560 pMeuSigMapVsPlane1->SetTitle("MEU in Attenuation Corrected ADCs (SigMaps) vs Plane");
01561 pMeuSigMapVsPlane1->GetXaxis()->SetTitle("Plane");
01562 pMeuSigMapVsPlane1->GetXaxis()->CenterTitle();
01563 pMeuSigMapVsPlane1->GetYaxis()->SetTitle("MEU");
01564 pMeuSigMapVsPlane1->GetYaxis()->CenterTitle();
01565
01566 cout<<"Drawing plots..."<<endl;
01570 TCanvas *cYvsX=new TCanvas("cYvsX","cYvsX",0,0,1000,1000);
01571 cYvsX->SetFillColor(0);
01572 cYvsX->Divide(1,2);
01573 cYvsX->cd(1);
01574 hYvsXWinVtxSide->Draw("colz");
01575 cYvsX->cd(2);
01576 hYvsXWinStopSide->Draw("colz");
01577
01578
01582
01583
01584
01585
01586
01587
01588
01589
01590
01591
01592
01593
01594
01595
01596
01597
01598
01599
01600
01601
01602
01603
01604
01605
01606
01607
01608
01609
01610
01611
01612
01613
01614
01615
01616
01617
01618
01619
01620
01621
01622
01623
01624
01625
01626
01627
01628
01629
01630
01631
01632
01633
01634
01635
01636
01637
01638
01639
01640
01641
01642
01646 TCanvas *cStrip=new TCanvas("cStrip","cStrip",0,0,1000,1000);
01647 cStrip->SetFillColor(0);
01648 cStrip->Divide(2,2);
01649 cStrip->cd(1);
01650 TGraph* gMeuVsStripV2=this->TGraphVect(vWinVtxSideStripV2,vMeuV2);
01651 if (gMeuVsStripV2){
01652 gMeuVsStripV2->Draw("ap");
01653 gMeuVsStripV2->SetMarkerStyle(3);
01654 gMeuVsStripV2->SetMarkerColor(3);
01655 gMeuVsStripV2->SetMarkerSize(1);
01656 fS="MEU in "+sCalType+" vs Strip (Window Vtx Side, U-View)";
01657 gMeuVsStripV2->SetTitle(fS.c_str());
01658 gMeuVsStripV2->GetXaxis()->SetTitle("Strip");
01659 gMeuVsStripV2->GetXaxis()->CenterTitle();
01660 gMeuVsStripV2->GetYaxis()->SetTitle("MEU");
01661 gMeuVsStripV2->GetYaxis()->CenterTitle();
01662 gMeuVsStripV2->Write("gMeuVsStripV2");
01663 }
01664 cStrip->cd(3);
01665 Int_t nStripBinsV2=static_cast<Int_t>((vMeuV2.size()/600)+1);
01666 TProfile* pMeuVsStripV2=new TProfile("pMeuVsStripV2",
01667 "pMeuVsStripV2",
01668 nStripBinsV2,0,192);
01669 this->TProfileFill(pMeuVsStripV2,vWinVtxSideStripV2,vMeuV2);
01670 pMeuVsStripV2->Draw();
01671 fS="MEU in "+sCalType+" vs Strip (Window Vtx Side, U-View)";
01672 pMeuVsStripV2->SetTitle(fS.c_str());
01673 pMeuVsStripV2->GetXaxis()->SetTitle("Strip");
01674 pMeuVsStripV2->GetXaxis()->CenterTitle();
01675 pMeuVsStripV2->GetYaxis()->SetTitle("MEU");
01676 pMeuVsStripV2->GetYaxis()->CenterTitle();
01677 cStrip->cd(2);
01678 TGraph* gMeuVsStripV3=this->TGraphVect(vWinVtxSideStripV3,vMeuV3);
01679 if (gMeuVsStripV3){
01680 gMeuVsStripV3->Draw("ap");
01681 gMeuVsStripV3->SetMarkerStyle(3);
01682 gMeuVsStripV3->SetMarkerColor(3);
01683 gMeuVsStripV3->SetMarkerSize(1);
01684 fS="MEU in "+sCalType+" vs Strip (Window Vtx Side, V-View)";
01685 gMeuVsStripV3->SetTitle(fS.c_str());
01686 gMeuVsStripV3->GetXaxis()->SetTitle("Strip");
01687 gMeuVsStripV3->GetXaxis()->CenterTitle();
01688 gMeuVsStripV3->GetYaxis()->SetTitle("MEU");
01689 gMeuVsStripV3->GetYaxis()->CenterTitle();
01690 gMeuVsStripV3->Write("gMeuVsStripV3");
01691 }
01692 cStrip->cd(4);
01693 Int_t nStripBinsV3=static_cast<Int_t>((vMeuV3.size()/600)+1);
01694 TProfile* pMeuVsStripV3=new TProfile("pMeuVsStripV3",
01695 "pMeuVsStripV3",
01696 nStripBinsV3,0,192);
01697 this->TProfileFill(pMeuVsStripV3,vWinVtxSideStripV3,vMeuV3);
01698 pMeuVsStripV3->Draw();
01699 fS="MEU in "+sCalType+" vs Strip (Window Vtx Side, V-View)";
01700 pMeuVsStripV3->SetTitle(fS.c_str());
01701 pMeuVsStripV3->GetXaxis()->SetTitle("Strip");
01702 pMeuVsStripV3->GetXaxis()->CenterTitle();
01703 pMeuVsStripV3->GetYaxis()->SetTitle("MEU");
01704 pMeuVsStripV3->GetYaxis()->CenterTitle();
01705
01706 cout<<"Drawing plots..."<<endl;
01710 TCanvas *cTPosLPos=new TCanvas("cTPosLPos","cTPosLPos",0,0,1000,1000);
01711 cTPosLPos->SetFillColor(0);
01712 cTPosLPos->Divide(2,4);
01713 cTPosLPos->cd(1);
01714 TGraph* gMeuVsTPosV2=this->TGraphVect(vWinVtxSideTPosV2,vMeuV2);
01715 if (gMeuVsTPosV2){
01716 gMeuVsTPosV2->Draw("ap");
01717 gMeuVsTPosV2->SetMarkerStyle(3);
01718 gMeuVsTPosV2->SetMarkerColor(3);
01719 gMeuVsTPosV2->SetMarkerSize(1);
01720 fS="MEU in "+sCalType+" vs Window TPos (U-View)";
01721 gMeuVsTPosV2->SetTitle(fS.c_str());
01722 gMeuVsTPosV2->GetXaxis()->SetTitle("TPos");
01723 gMeuVsTPosV2->GetXaxis()->CenterTitle();
01724 gMeuVsTPosV2->GetYaxis()->SetTitle("MEU");
01725 gMeuVsTPosV2->GetYaxis()->CenterTitle();
01726 gMeuVsTPosV2->Write("gMeuVsTPosV2");
01727 }
01728 cTPosLPos->cd(3);
01729 Int_t nTPosBinsV2=static_cast<Int_t>((vMeuV2.size()/600)+1);
01730 TProfile* pMeuVsTPosV2=new TProfile("pMeuVsTPosV2",
01731 "pMeuVsTPosV2",
01732 nTPosBinsV2,-4,4);
01733 this->TProfileFill(pMeuVsTPosV2,vWinVtxSideTPosV2,vMeuV2);
01734 pMeuVsTPosV2->Draw();
01735 fS="MEU in "+sCalType+" vs Window TPos (U-View)";
01736 pMeuVsTPosV2->SetTitle(fS.c_str());
01737 pMeuVsTPosV2->GetXaxis()->SetTitle("TPos");
01738 pMeuVsTPosV2->GetXaxis()->CenterTitle();
01739 pMeuVsTPosV2->GetYaxis()->SetTitle("MEU");
01740 pMeuVsTPosV2->GetYaxis()->CenterTitle();
01741 cTPosLPos->cd(2);
01742 TGraph* gMeuVsLPosV2=this->TGraphVect(vWinVtxSideLPosV2,vMeuV2);
01743 if (gMeuVsLPosV2){
01744 gMeuVsLPosV2->Draw("ap");
01745 gMeuVsLPosV2->SetMarkerStyle(3);
01746 gMeuVsLPosV2->SetMarkerColor(3);
01747 gMeuVsLPosV2->SetMarkerSize(1);
01748 fS="MEU in "+sCalType+" vs Window LPos (U-View)";
01749 gMeuVsLPosV2->SetTitle(fS.c_str());
01750 gMeuVsLPosV2->GetXaxis()->SetTitle("LPos");
01751 gMeuVsLPosV2->GetXaxis()->CenterTitle();
01752 gMeuVsLPosV2->GetYaxis()->SetTitle("MEU");
01753 gMeuVsLPosV2->GetYaxis()->CenterTitle();
01754 gMeuVsLPosV2->Write("gMeuVsLPosV2");
01755 }
01756 cTPosLPos->cd(4);
01757 TProfile* pMeuVsLPosV2=new TProfile("pMeuVsLPosV2",
01758 "pMeuVsLPosV2",
01759 nTPosBinsV2,-4,4);
01760 this->TProfileFill(pMeuVsLPosV2,vWinVtxSideLPosV2,vMeuV2);
01761 pMeuVsLPosV2->Draw();
01762 fS="MEU in "+sCalType+" vs Window LPos (U-View)";
01763 pMeuVsLPosV2->SetTitle(fS.c_str());
01764 pMeuVsLPosV2->GetXaxis()->SetTitle("LPos");
01765 pMeuVsLPosV2->GetXaxis()->CenterTitle();
01766 pMeuVsLPosV2->GetYaxis()->SetTitle("MEU");
01767 pMeuVsLPosV2->GetYaxis()->CenterTitle();
01768
01769 cTPosLPos->cd(5);
01770 TGraph* gMeuVsTPosV3=this->TGraphVect(vWinVtxSideTPosV3,vMeuV3);
01771 if (gMeuVsTPosV3){
01772 gMeuVsTPosV3->Draw("ap");
01773 gMeuVsTPosV3->SetMarkerStyle(3);
01774 gMeuVsTPosV3->SetMarkerColor(3);
01775 gMeuVsTPosV3->SetMarkerSize(1);
01776 fS="MEU in "+sCalType+" vs Window TPos (V-View)";
01777 gMeuVsTPosV3->SetTitle(fS.c_str());
01778 gMeuVsTPosV3->GetXaxis()->SetTitle("TPos");
01779 gMeuVsTPosV3->GetXaxis()->CenterTitle();
01780 gMeuVsTPosV3->GetYaxis()->SetTitle("MEU");
01781 gMeuVsTPosV3->GetYaxis()->CenterTitle();
01782 gMeuVsTPosV3->Write("gMeuVsTPosV3");
01783 }
01784 cTPosLPos->cd(7);
01785 Int_t nTPosBinsV3=static_cast<Int_t>((vMeuV3.size()/600)+1);
01786 TProfile* pMeuVsTPosV3=new TProfile("pMeuVsTPosV3",
01787 "pMeuVsTPosV3",
01788 nTPosBinsV3,-4,4);
01789 this->TProfileFill(pMeuVsTPosV3,vWinVtxSideTPosV3,vMeuV3);
01790 pMeuVsTPosV3->Draw();
01791 fS="MEU in "+sCalType+" vs Window TPos (V-View)";
01792 pMeuVsTPosV3->SetTitle(fS.c_str());
01793 pMeuVsTPosV3->GetXaxis()->SetTitle("TPos");
01794 pMeuVsTPosV3->GetXaxis()->CenterTitle();
01795 pMeuVsTPosV3->GetYaxis()->SetTitle("MEU");
01796 pMeuVsTPosV3->GetYaxis()->CenterTitle();
01797 cTPosLPos->cd(6);
01798 TGraph* gMeuVsLPosV3=this->TGraphVect(vWinVtxSideLPosV3,vMeuV3);
01799 if (gMeuVsLPosV3){
01800 gMeuVsLPosV3->Draw("ap");
01801 gMeuVsLPosV3->SetMarkerStyle(3);
01802 gMeuVsLPosV3->SetMarkerColor(3);
01803 gMeuVsLPosV3->SetMarkerSize(1);
01804 fS="MEU in "+sCalType+" vs Window LPos (V-View)";
01805 gMeuVsLPosV3->SetTitle(fS.c_str());
01806 gMeuVsLPosV3->GetXaxis()->SetTitle("LPos");
01807 gMeuVsLPosV3->GetXaxis()->CenterTitle();
01808 gMeuVsLPosV3->GetYaxis()->SetTitle("MEU");
01809 gMeuVsLPosV3->GetYaxis()->CenterTitle();
01810 gMeuVsLPosV3->Write("gMeuVsLPosV3");
01811 }
01812 cTPosLPos->cd(8);
01813 TProfile* pMeuVsLPosV3=new TProfile("pMeuVsLPosV3",
01814 "pMeuVsLPosV3",
01815 nTPosBinsV3,-4,4);
01816 this->TProfileFill(pMeuVsLPosV3,vWinVtxSideLPosV3,vMeuV3);
01817 pMeuVsLPosV3->Draw();
01818 fS="MEU in "+sCalType+" vs Window LPos (V-View)";
01819 pMeuVsLPosV3->SetTitle(fS.c_str());
01820 pMeuVsLPosV3->GetXaxis()->SetTitle("LPos");
01821 pMeuVsLPosV3->GetXaxis()->CenterTitle();
01822 pMeuVsLPosV3->GetYaxis()->SetTitle("MEU");
01823 pMeuVsLPosV3->GetYaxis()->CenterTitle();
01824
01828 TCanvas* cAnglesY=new TCanvas("cAnglesY","cAnglesY",0,0,1100,1100);
01829 cAnglesY->SetFillColor(0);
01830 cAnglesY->Divide(1,2);
01831 cAnglesY->cd(1);
01832 Int_t nBinsTheta=static_cast<Int_t>((vMeuSigMap.size()/300)+1);
01833 TProfile* pThetaY=new TProfile("pThetaY","pThetaY",
01834 nBinsTheta,-1,1);
01835 this->TProfileFill(pThetaY,vWinCosThetaY,vMeuSigMap);
01836 pThetaY->Draw();
01837 pThetaY->SetTitle("MEU vs Cos(#theta_{Y})");
01838 pThetaY->GetXaxis()->SetTitle("Cos(#theta_{Y})");
01839 pThetaY->GetXaxis()->CenterTitle();
01840 pThetaY->GetYaxis()->SetTitle("MEU");
01841 pThetaY->GetYaxis()->CenterTitle();
01842 pThetaY->SetLineColor(2);
01843 pThetaY->SetFillColor(0);
01844 pThetaY->SetMinimum(600);
01845 pThetaY->SetMaximum(1000);
01846 cAnglesY->cd(2);
01847 hThetaY->Draw();
01848
01849 cout<<"Drawing plots..."<<endl;
01853 TCanvas* cAnglesZ=new TCanvas("cAnglesZ","cAnglesZ",0,0,1100,1100);
01854 cAnglesZ->SetFillColor(0);
01855 cAnglesZ->Divide(1,2);
01856 cAnglesZ->cd(1);
01857 TProfile* pThetaZ=new TProfile("pThetaZ","pThetaZ",
01858 nBinsTheta,-1,1);
01859 this->TProfileFill(pThetaZ,vWinCosThetaZ,vMeuSigMap);
01860 pThetaZ->Draw();
01861 pThetaZ->SetTitle("MEU vs Cos(#theta_{Z})");
01862 pThetaZ->GetXaxis()->SetTitle("Cos(#theta_{Z})");
01863 pThetaZ->GetXaxis()->CenterTitle();
01864 pThetaZ->GetYaxis()->SetTitle("MEU");
01865 pThetaZ->GetYaxis()->CenterTitle();
01866 pThetaZ->SetLineColor(2);
01867 pThetaZ->SetFillColor(0);
01868 pThetaZ->SetMinimum(600);
01869 pThetaZ->SetMaximum(1000);
01870 cAnglesZ->cd(2);
01871 hThetaZ->Draw();
01872
01873 Double_t quantile=0.5;
01874 Double_t meu=-1;
01875 hWinSigMap->GetQuantiles(1,&meu,&quantile);
01876
01877 cout<<"Median="<<meu
01878 <<", mean="<<hWinSigMap->GetMean()
01879
01880 <<", entries="<<hWinSigMap->GetEntries()
01881 <<endl;
01882
01883
01884 MSG("MeuPlots",Msg::kInfo)
01885 <<" ** Finished MeuSystematics method **"<<endl;
01886 }
01887
01888
01889
01890 void MeuPlots::FNALSep04()
01891 {
01892 MSG("MeuPlots",Msg::kInfo)
01893 <<" ** Running FNALSep04 method... **"<<endl;
01894
01895
01896 fOutFile=this->OpenFile(46,"FNALSep04");
01897
01898 vector<Double_t> vTimeSec;
01899 vTimeSec.reserve(fEntries);
01900 Int_t startTimeSecs=2000000000;
01901 Int_t endTimeSecs=1;
01902 Int_t div=2;
01903 vector<Double_t> vMeuAdc;
01904 vMeuAdc.reserve(fEntries/div);
01905 vector<Double_t> vMeuSigLin;
01906 vMeuSigLin.reserve(fEntries/div);
01907 vector<Double_t> vMeuSigCor;
01908 vMeuSigCor.reserve(fEntries/div);
01909 vector<Double_t> vMeuSigCorNoCut;
01910 vMeuSigCorNoCut.reserve(fEntries/div);
01911 vector<Double_t> vMeuSigMap;
01912 vMeuSigMap.reserve(fEntries/div);
01913 vector<Double_t> vMeuSigMapNoCut;
01914 vMeuSigMapNoCut.reserve(fEntries/div);
01915 vector<Double_t> vWinPl;
01916 vWinPl.reserve(fEntries/div);
01917
01918
01919
01920
01921 vector<Double_t> vMeuV2;
01922 vMeuV2.reserve(fEntries/div);
01923 vector<Double_t> vMeuAdcV2;
01924 vMeuAdcV2.reserve(fEntries/div);
01925 vector<Double_t> vMeuSigCorV2;
01926 vMeuSigCorV2.reserve(fEntries/div);
01927 vector<Double_t> vMeuSigMapV2;
01928 vMeuSigMapV2.reserve(fEntries/div);
01929 vector<Double_t> vWinVtxSideTPosV2;
01930 vWinVtxSideTPosV2.reserve(fEntries/div);
01931 vector<Double_t> vWinVtxSideLPosV2;
01932 vWinVtxSideLPosV2.reserve(fEntries/div);
01933 vector<Double_t> vWinVtxSideStripV2;
01934 vWinVtxSideStripV2.reserve(fEntries/div);
01935 vector<Double_t> vMeuV3;
01936 vMeuV3.reserve(fEntries/div);
01937 vector<Double_t> vWinVtxSideTPosV3;
01938 vWinVtxSideTPosV3.reserve(fEntries/div);
01939 vector<Double_t> vWinVtxSideLPosV3;
01940 vWinVtxSideLPosV3.reserve(fEntries/div);
01941 vector<Double_t> vWinVtxSideStripV3;
01942 vWinVtxSideStripV3.reserve(fEntries/div);
01943
01944 vector<Double_t> vMeuYvsX;
01945 vMeuYvsX.reserve(fEntries/div);
01946 vector<Double_t> vMeuAdcYvsX;
01947 vMeuAdcYvsX.reserve(fEntries/div);
01948 vector<Double_t> vMeuSigCorYvsX;
01949 vMeuSigCorYvsX.reserve(fEntries/div);
01950 vector<Double_t> vMeuSigMapYvsX;
01951 vMeuSigMapYvsX.reserve(fEntries/div);
01952 vector<Double_t> vWinVtxSideX;
01953 vWinVtxSideX.reserve(fEntries/div);
01954 vector<Double_t> vWinVtxSideY;
01955 vWinVtxSideY.reserve(fEntries/div);
01956 vector<Double_t> vWinMiddleX;
01957 vWinMiddleX.reserve(fEntries/div);
01958 vector<Double_t> vWinMiddleY;
01959 vWinMiddleY.reserve(fEntries/div);
01960
01961
01962
01963
01964
01965
01966
01967
01968
01969
01970 vector<Double_t> vWinStopSideX;
01971 vWinStopSideX.reserve(fEntries/div);
01972 vector<Double_t> vWinStopSideY;
01973 vWinStopSideY.reserve(fEntries/div);
01974
01975
01976
01977
01978
01979
01980
01981
01982
01983 vector<Double_t> vWinCosThetaY;
01984 vWinCosThetaY.reserve(fEntries/div);
01985 vector<Double_t> vWinCosThetaZ;
01986 vWinCosThetaZ.reserve(fEntries/div);
01987
01988 Int_t maxMeu=20000;
01989 Int_t meuBinSize=20;
01990 Int_t numMeuBins=maxMeu/meuBinSize;
01991 TH1F* hSigMap=new TH1F("hSigMap","hSigMap",numMeuBins,-1,maxMeu);
01992 hSigMap->SetFillColor(0);
01993 hSigMap->SetTitle("MEU in SigMap Units");
01994 hSigMap->GetXaxis()->SetTitle("MEU");
01995 hSigMap->GetXaxis()->CenterTitle();
01996
01997 TH1F* hSigMapHack=new TH1F("hSigMapHack","hSigMapHack",numMeuBins,-1,maxMeu);
01998 hSigMapHack->SetFillColor(0);
01999 hSigMapHack->SetTitle("MEU in SigMap Units");
02000 hSigMapHack->GetXaxis()->SetTitle("MEU");
02001 hSigMapHack->GetXaxis()->CenterTitle();
02002
02003 TProfile* pMeuVsCut=new TProfile("pMeuVsCut","pMeuVsCut",
02004 numMeuBins,0,maxMeu);
02005 pMeuVsCut->SetTitle("Average MEU in SigMap Units vs MEU Cut");
02006 pMeuVsCut->GetXaxis()->SetTitle("Cut on MEU");
02007 pMeuVsCut->GetXaxis()->CenterTitle();
02008 pMeuVsCut->GetYaxis()->SetTitle("Average MEU");
02009 pMeuVsCut->GetYaxis()->CenterTitle();
02010
02011 TProfile* pMeuVsCutNorm=new TProfile("pMeuVsCutNorm","pMeuVsCutNorm",
02012 numMeuBins,0,maxMeu);
02013 pMeuVsCutNorm->SetTitle("Average MEU in SigMap Units vs MEU Cut");
02014 pMeuVsCutNorm->GetXaxis()->SetTitle("Cut on MEU");
02015 pMeuVsCutNorm->GetXaxis()->CenterTitle();
02016 pMeuVsCutNorm->GetYaxis()->SetTitle("Average MEU");
02017 pMeuVsCutNorm->GetYaxis()->CenterTitle();
02018
02019 TH1F* hThetaY=new TH1F("hThetaY","hThetaY",100,-1,1);
02020 hThetaY->SetFillColor(0);
02021 hThetaY->SetTitle("Cos(#theta_{Y})");
02022 hThetaY->GetXaxis()->SetTitle("Cos(#theta_{Y})");
02023 hThetaY->GetXaxis()->CenterTitle();
02024
02025 TH1F* hThetaZ=new TH1F("hThetaZ","hThetaZ",100,-1,1);
02026 hThetaZ->SetFillColor(0);
02027 hThetaZ->SetTitle("Cos(#theta_{Z})");
02028 hThetaZ->GetXaxis()->SetTitle("Cos(#theta_{Z})");
02029 hThetaZ->GetXaxis()->CenterTitle();
02030
02031 TH1F* hWinPl=new TH1F("hWinPl","hWinPl",243,0,485);
02032 hWinPl->SetTitle("Track Window Position in Detector");
02033 hWinPl->GetXaxis()->SetTitle("Plane");
02034 hWinPl->GetXaxis()->CenterTitle();
02035 hWinPl->GetYaxis()->SetTitle("");
02036 hWinPl->GetYaxis()->CenterTitle();
02037 hWinPl->SetLineColor(2);
02038 hWinPl->SetFillColor(0);
02039
02040
02041 TH2F* hYvsXWinVtxSide=new TH2F("hYvsXWinVtxSide","hYvsXWinVtxSide",
02042 60,-4,4,60,-4,4);
02043 hYvsXWinVtxSide->SetTitle("Track Window Position (Muon-Entry Side)");
02044 hYvsXWinVtxSide->GetXaxis()->SetTitle("X (m)");
02045 hYvsXWinVtxSide->GetXaxis()->CenterTitle();
02046 hYvsXWinVtxSide->GetYaxis()->SetTitle("Y (m)");
02047 hYvsXWinVtxSide->GetYaxis()->CenterTitle();
02048 hYvsXWinVtxSide->SetLineColor(2);
02049 hYvsXWinVtxSide->SetFillColor(0);
02050
02051
02052 TH2F* hYvsXWinStopSide=new TH2F("hYvsXWinStopSide","hYvsXWinStopSide",
02053 60,-4,4,60,-4,4);
02054 hYvsXWinStopSide->SetTitle("Track Window Position (Muon-Stop Side)");
02055 hYvsXWinStopSide->GetXaxis()->SetTitle("X (m)");
02056 hYvsXWinStopSide->GetXaxis()->CenterTitle();
02057 hYvsXWinStopSide->GetYaxis()->SetTitle("Y (m)");
02058 hYvsXWinStopSide->GetYaxis()->CenterTitle();
02059 hYvsXWinStopSide->SetLineColor(2);
02060 hYvsXWinStopSide->SetFillColor(0);
02061
02062
02063 string sCalType="";
02064
02068
02069 this->InitialiseLoopVariables();
02070
02071 for(Int_t entry=0;entry<fEntries;entry++){
02072
02073 this->SetLoopVariables(entry);
02074
02075 MeuSummary& t=(*fMeuSummary);
02076
02077
02078 if (t.WinSigMap>0){
02079
02080
02081 vMeuSigMapNoCut.push_back(t.WinSigMap);
02082 vMeuSigCorNoCut.push_back(t.WinSigCor);
02083 hSigMap->Fill(t.WinSigMap);
02084 hSigMapHack->Fill(1.037*t.WinSigMap);
02085
02086 if (t.WinSigMap>200 && t.WinSigMap<1800){
02087
02088 Float_t enDep=t.WinSigMap;
02089 sCalType="SigMap";
02090
02091 Int_t evTime=t.TimeSec;
02092 vTimeSec.push_back(evTime);
02093 vMeuAdc.push_back(t.WinAdc);
02094 vMeuSigLin.push_back(t.WinSigLin);
02095 vMeuSigCor.push_back(t.WinSigCor);
02096 vMeuSigMap.push_back(t.WinSigMap);
02097
02098
02099 if (evTime>endTimeSecs) endTimeSecs=evTime;
02100 if (evTime<startTimeSecs && evTime>0) startTimeSecs=evTime;
02101 if (evTime<=0) {
02102 cout<<"Bad time="<<evTime<<endl;
02103 }
02104
02105
02106 Float_t r2=pow(t.WinVtxSideX-t.WinStopSideX,2)+
02107 pow(t.WinVtxSideY-t.WinStopSideY,2)+
02108 pow(t.WinVtxSideZ-t.WinStopSideZ,2);
02109 Float_t cosThetaY=-2;
02110 Float_t cosThetaZ=-2;
02111 if (r2>0){
02112 Float_t r=sqrt(r2);
02113 cosThetaY=(t.WinVtxSideY-t.WinStopSideY)/r;
02114 cosThetaZ=(t.WinVtxSideZ-t.WinStopSideZ)/r;
02115 }
02116 vWinCosThetaY.push_back(cosThetaY);
02117 vWinCosThetaZ.push_back(cosThetaZ);
02118 hThetaY->Fill(cosThetaY);
02119 hThetaZ->Fill(cosThetaZ);
02120
02121
02122 Int_t pl=t.WinStopSidePl;
02123 if (t.WinVtxSidePl<t.WinStopSidePl) pl=t.WinVtxSidePl;
02124 pl+=abs(t.WinVtxSidePl-t.WinStopSidePl)/2;
02125 hWinPl->Fill(pl);
02126 vWinPl.push_back(pl);
02127
02128
02129 if (t.WinVtxSideX>-99 && t.WinVtxSideY>-99 &&
02130 t.WinStopSideX>-99 && t.WinStopSideY>-99){
02131 vMeuYvsX.push_back(enDep);
02132 vMeuAdcYvsX.push_back(t.WinAdc);
02133 vMeuSigCorYvsX.push_back(t.WinSigCor);
02134 vMeuSigMapYvsX.push_back(t.WinSigMap);
02135 vWinVtxSideX.push_back(t.WinVtxSideX);
02136 vWinVtxSideY.push_back(t.WinVtxSideY);
02137 vWinStopSideX.push_back(t.WinStopSideX);
02138 vWinStopSideY.push_back(t.WinStopSideY);
02139 hYvsXWinVtxSide->Fill(t.WinVtxSideX,t.WinVtxSideY);
02140 hYvsXWinStopSide->Fill(t.WinStopSideX,t.WinStopSideY);
02141
02142
02143
02144 }
02145 else{
02146 MSG("MeuPlots",Msg::kDebug)
02147 <<"Crazy X and Y positions:"<<endl
02148 <<" WinVtxSide: x="<<t.WinVtxSideX<<", y="<<t.WinVtxSideY
02149 <<endl
02150 <<" WinStopSide: x="<<t.WinStopSideX<<", y="<<t.WinStopSideY
02151 <<endl;
02152 }
02153
02154
02155 if (t.WinVtxSideTPos>-99 && t.WinVtxSideLPos>-99 &&
02156 t.WinStopSideTPos>-99 && t.WinStopSideLPos>-99){
02157 if (t.WinVtxSideView==2){
02158 vMeuV2.push_back(enDep);
02159 vMeuAdcV2.push_back(t.WinAdc);
02160 vMeuSigCorV2.push_back(t.WinSigCor);
02161 vMeuSigMapV2.push_back(t.WinSigMap);
02162 vWinVtxSideTPosV2.push_back(t.WinVtxSideTPos);
02163 vWinVtxSideLPosV2.push_back(t.WinVtxSideLPos);
02164 vWinVtxSideStripV2.push_back(t.WinVtxSideStrip);
02165 }
02166 if (t.WinVtxSideView==3){
02167 vMeuV3.push_back(enDep);
02168 vWinVtxSideTPosV3.push_back(t.WinVtxSideTPos);
02169 vWinVtxSideLPosV3.push_back(t.WinVtxSideLPos);
02170 vWinVtxSideStripV3.push_back(t.WinVtxSideStrip);
02171 }
02172 }
02173 }
02174 }
02175 }
02176
02180
02181 MSG("MeuPlots",Msg::kInfo)<<"Finished main loop"<<endl;
02182
02183 MSG("MeuPlots",Msg::kInfo)
02184 <<"Start time="<<startTimeSecs<<", endTime="<<endTimeSecs<<endl;
02185
02186 this->EpochTo1995(vTimeSec);
02187 this->EpochTo1995(endTimeSecs);
02188 this->EpochTo1995(startTimeSecs);
02189
02193 TCanvas *cMeuVsGeom=new TCanvas("cMeuVsGeom","cMeuVsGeom",
02194 0,0,1000,600);
02195 cMeuVsGeom->SetFillColor(0);
02196 cMeuVsGeom->Divide(3,1);
02197 cMeuVsGeom->cd(1);
02198 Int_t nPlBins=static_cast<Int_t>((vWinPl.size()/600)+1);
02199 if (nPlBins>486) nPlBins=486;
02200 TProfile* pMeuAdcVsPlane=new TProfile("pMeuAdcVsPlane",
02201 "pMeuAdcVsPlane",
02202 nPlBins,0,485);
02203 this->TProfileFill(pMeuAdcVsPlane,vWinPl,vMeuAdc);
02204 pMeuAdcVsPlane->Draw();
02205 pMeuAdcVsPlane->SetTitle("MEU in ADCs vs Plane");
02206 pMeuAdcVsPlane->GetXaxis()->SetTitle("Plane");
02207 pMeuAdcVsPlane->GetXaxis()->CenterTitle();
02208 pMeuAdcVsPlane->GetYaxis()->SetTitle("MEU");
02209 pMeuAdcVsPlane->GetYaxis()->CenterTitle();
02210 pMeuAdcVsPlane->SetMinimum(600);
02211 pMeuAdcVsPlane->SetMaximum(1000);
02212 cMeuVsGeom->cd(2);
02213 TProfile* pMeuSigLinVsPlane=new TProfile("pMeuSigLinVsPlane",
02214 "pMeuSigLinVsPlane",
02215 nPlBins,0,485);
02216 this->TProfileFill(pMeuSigLinVsPlane,vWinPl,vMeuSigLin);
02217 pMeuSigLinVsPlane->Draw();
02218 pMeuSigLinVsPlane->SetTitle("MEU in Gain Corrected ADCs (like PEs) vs Plane");
02219 pMeuSigLinVsPlane->GetXaxis()->SetTitle("Plane");
02220 pMeuSigLinVsPlane->GetXaxis()->CenterTitle();
02221 pMeuSigLinVsPlane->GetYaxis()->SetTitle("MEU");
02222 pMeuSigLinVsPlane->GetYaxis()->CenterTitle();
02223 cMeuVsGeom->cd(3);
02224 TProfile* pMeuSigCorVsPlane=new TProfile("pMeuSigCorVsPlane",
02225 "pMeuSigCorVsPlane",
02226 nPlBins,0,485);
02227 this->TProfileFill(pMeuSigCorVsPlane,vWinPl,vMeuSigCor);
02228 pMeuSigCorVsPlane->Draw();
02229 pMeuSigCorVsPlane->SetTitle("MEU in Strip to Strip Corrected ADCs (SigCors) vs Plane");
02230 pMeuSigCorVsPlane->GetXaxis()->SetTitle("Plane");
02231 pMeuSigCorVsPlane->GetXaxis()->CenterTitle();
02232 pMeuSigCorVsPlane->GetYaxis()->SetTitle("MEU");
02233 pMeuSigCorVsPlane->GetYaxis()->CenterTitle();
02234
02238 TCanvas *cYvsX=new TCanvas("cYvsX","cYvsX",0,0,1000,400);
02239 cYvsX->SetFillColor(0);
02240 cYvsX->Divide(3,1);
02241 cYvsX->cd(1);
02242 Int_t nYvsXBins=static_cast<Int_t>((vWinStopSideX.size()/1000)+1);
02243 TProfile2D* pMeuAdcAsYvsX=new TProfile2D("pMeuAdcAsYvsX","pMeuAdcAsYvsX",
02244 nYvsXBins,-4,4,nYvsXBins,-4,4);
02245 this->TProfile2DFill(pMeuAdcAsYvsX,vWinStopSideX,vWinStopSideY,
02246 vMeuAdcYvsX);
02247 pMeuAdcAsYvsX->Draw("colz");
02248 fS="MEU in ADCs";
02249 pMeuAdcAsYvsX->SetTitle(fS.c_str());
02250 pMeuAdcAsYvsX->GetXaxis()->SetTitle("X (m)");
02251 pMeuAdcAsYvsX->GetXaxis()->CenterTitle();
02252 pMeuAdcAsYvsX->GetYaxis()->SetTitle("Y (m)");
02253 pMeuAdcAsYvsX->GetYaxis()->CenterTitle();
02254 pMeuAdcAsYvsX->SetMinimum(600);
02255 pMeuAdcAsYvsX->SetMaximum(1100);
02256 cYvsX->cd(2);
02257 TProfile2D* pMeuSigCorAsYvsX=new TProfile2D("pMeuSigCorAsYvsX","pMeuSigCorAsYvsX",
02258 nYvsXBins,-4,4,nYvsXBins,-4,4);
02259 this->TProfile2DFill(pMeuSigCorAsYvsX,vWinStopSideX,vWinStopSideY,
02260 vMeuSigCorYvsX);
02261 pMeuSigCorAsYvsX->Draw("colz");
02262 fS="MEU in SigCors";
02263 pMeuSigCorAsYvsX->SetTitle(fS.c_str());
02264 pMeuSigCorAsYvsX->GetXaxis()->SetTitle("X (m)");
02265 pMeuSigCorAsYvsX->GetXaxis()->CenterTitle();
02266 pMeuSigCorAsYvsX->GetYaxis()->SetTitle("Y (m)");
02267 pMeuSigCorAsYvsX->GetYaxis()->CenterTitle();
02268 pMeuSigCorAsYvsX->SetMinimum(600);
02269 pMeuSigCorAsYvsX->SetMaximum(1100);
02270 cYvsX->cd(3);
02271 TProfile2D* pMeuSigMapAsYvsX=new TProfile2D("pMeuSigMapAsYvsX","pMeuSigMapAsYvsX",
02272 nYvsXBins,-4,4,nYvsXBins,-4,4);
02273 this->TProfile2DFill(pMeuSigMapAsYvsX,vWinStopSideX,vWinStopSideY,
02274 vMeuSigMapYvsX);
02275 pMeuSigMapAsYvsX->Draw("colz");
02276 fS="MEU in SigMaps";
02277 pMeuSigMapAsYvsX->SetTitle(fS.c_str());
02278 pMeuSigMapAsYvsX->GetXaxis()->SetTitle("X (m)");
02279 pMeuSigMapAsYvsX->GetXaxis()->CenterTitle();
02280 pMeuSigMapAsYvsX->GetYaxis()->SetTitle("Y (m)");
02281 pMeuSigMapAsYvsX->GetYaxis()->CenterTitle();
02282 pMeuSigMapAsYvsX->SetMinimum(600);
02283 pMeuSigMapAsYvsX->SetMaximum(1100);
02284
02288 TCanvas *cTPos=new TCanvas("cTPos","cTPos",0,0,1000,700);
02289 cTPos->SetFillColor(0);
02290 cTPos->Divide(2,1);
02291 cTPos->cd(1);
02292 Int_t nBinsTPos=static_cast<Int_t>((vWinVtxSideTPosV2.size()/600)+1);
02293 TProfile* pMeuAdcVsTPos=new TProfile("pMeuAdcVsTPos","pMeuAdcVsTPos",
02294 nBinsTPos,-4,4);
02295 this->TProfileFill(pMeuAdcVsTPos,vWinVtxSideTPosV2,vMeuAdcV2);
02296
02297 pMeuAdcVsTPos->Draw();
02298 fS="MEU vs TPos (U-View)";
02299 pMeuAdcVsTPos->SetTitle(fS.c_str());
02300 pMeuAdcVsTPos->GetXaxis()->SetTitle("TPos (m)");
02301 pMeuAdcVsTPos->GetXaxis()->CenterTitle();
02302 pMeuAdcVsTPos->GetYaxis()->SetTitle("MEU");
02303 pMeuAdcVsTPos->GetYaxis()->CenterTitle();
02304 pMeuAdcVsTPos->SetMinimum(700);
02305 pMeuAdcVsTPos->SetMaximum(1000);
02306 TProfile* pMeuSigCorVsTPos=new TProfile("pMeuSigCorVsTPos","pMeuSigCorVsTPos",
02307 nBinsTPos,-4,4);
02308 this->TProfileFill(pMeuSigCorVsTPos,vWinVtxSideTPosV2,vMeuSigCorV2);
02309
02310 pMeuAdcVsTPos->Draw();
02311 pMeuSigCorVsTPos->Draw("sames");
02312 fS="MEU vs TPos (U-View)";
02313 pMeuSigCorVsTPos->SetTitle(fS.c_str());
02314 pMeuSigCorVsTPos->GetXaxis()->SetTitle("TPos (m)");
02315 pMeuSigCorVsTPos->GetXaxis()->CenterTitle();
02316 pMeuSigCorVsTPos->GetYaxis()->SetTitle("MEU");
02317 pMeuSigCorVsTPos->GetYaxis()->CenterTitle();
02318 pMeuSigCorVsTPos->SetLineColor(2);
02319 pMeuSigCorVsTPos->SetMinimum(700);
02320 pMeuSigCorVsTPos->SetMaximum(1000);
02321 TLegend *lPos=new TLegend(0.3,0.6, 0.6,0.8);
02322 lPos->SetBorderSize(0);
02323 lPos->SetFillColor(0);
02324 lPos->SetTextSize(0.035);
02325 lPos->AddEntry(pMeuAdcVsTPos,"MEU in ADC Units","l");
02326 lPos->AddEntry(pMeuSigCorVsTPos,"MEU in SigCor Units","l");
02327 lPos->Draw();
02329 cTPos->cd(2);
02330
02331 TProfile* pMeuSigCorVsTPos2=new TProfile("pMeuSigCorVsTPos2","pMeuSigCorVsTPos2",
02332 nBinsTPos,-4,4);
02333 this->TProfileFill(pMeuSigCorVsTPos2,vWinVtxSideTPosV2,vMeuSigCorV2);
02334 pMeuSigCorVsTPos2->Draw();
02335 fS="MEU vs TPos (U-View)";
02336 pMeuSigCorVsTPos2->SetTitle(fS.c_str());
02337 pMeuSigCorVsTPos2->GetXaxis()->SetTitle("TPos (m)");
02338 pMeuSigCorVsTPos2->GetXaxis()->CenterTitle();
02339 pMeuSigCorVsTPos2->GetYaxis()->SetTitle("MEU");
02340 pMeuSigCorVsTPos2->GetYaxis()->CenterTitle();
02341 pMeuSigCorVsTPos2->SetLineColor(2);
02342 pMeuSigCorVsTPos2->SetMinimum(700);
02343 pMeuSigCorVsTPos2->SetMaximum(1000);
02344 TProfile* pMeuSigMapVsTPos=new TProfile("pMeuSigMapVsTPos","pMeuSigMapVsTPos",
02345 nBinsTPos,-4,4);
02346 this->TProfileFill(pMeuSigMapVsTPos,vWinVtxSideTPosV2,vMeuSigMapV2);
02347 pMeuSigMapVsTPos->Draw("sames");
02348 fS="MEU vs TPos (U-View)";
02349 pMeuSigMapVsTPos->SetTitle(fS.c_str());
02350 pMeuSigMapVsTPos->GetXaxis()->SetTitle("TPos (m)");
02351 pMeuSigMapVsTPos->GetXaxis()->CenterTitle();
02352 pMeuSigMapVsTPos->GetYaxis()->SetTitle("MEU");
02353 pMeuSigMapVsTPos->GetYaxis()->CenterTitle();
02354 pMeuSigMapVsTPos->SetLineColor(4);
02355 pMeuSigMapVsTPos->SetMinimum(700);
02356 pMeuSigMapVsTPos->SetMaximum(1000);
02357 TLegend *lPos2=new TLegend(0.3,0.6, 0.6,0.8);
02358 lPos2->SetBorderSize(0);
02359 lPos2->SetFillColor(0);
02360 lPos2->SetTextSize(0.035);
02361 lPos2->AddEntry(pMeuSigCorVsTPos2,"MEU in SigCor Units","l");
02362 lPos2->AddEntry(pMeuSigMapVsTPos,"MEU in SigMap Units","l");
02363 lPos2->Draw();
02364
02365
02366
02367
02368
02369
02370
02371
02372
02373 Double_t quantile=0.5;
02374 Double_t medianAll=-1;
02375 hSigMap->GetQuantiles(1,&medianAll,&quantile);
02376 cout<<"medianAll="<<medianAll<<endl;
02377 Double_t meanAll=hSigMap->GetMean();
02378
02379 multimap<Double_t,Int_t> meu;
02380
02381 Int_t i=0;
02382 cout<<"Starting nested loops..."<<endl;
02383 for (vector<Double_t>::iterator vIt=vMeuSigMapNoCut.begin();
02384 vIt!=vMeuSigMapNoCut.end();++vIt){
02385 meu.insert(pair<Double_t,Int_t>((*vIt),i));
02386
02387 for (Float_t meu=0;meu<maxMeu;meu+=meuBinSize){
02388 if ((*vIt)<meu){
02389 pMeuVsCut->Fill(meu,*vIt);
02390 pMeuVsCutNorm->Fill(meu,(*vIt)/meanAll);
02391 }
02392 }
02393 i++;
02394 }
02398 TCanvas *cMeuCut=new TCanvas("cMeuCut","cMeuCut",0,0,1000,700);
02399 cMeuCut->SetFillColor(0);
02400 cMeuCut->Divide(2,2);
02401 cMeuCut->cd(1);
02402 hSigMap->Draw();
02403 cMeuCut->cd(2);
02404
02405 pMeuVsCutNorm->Draw();
02406
02407 TGraph* gMedian=new TGraph(2);
02408 gMedian->SetName("gMedian");
02409 gMedian->SetMarkerStyle(8);
02410
02411 Double_t median=-1;
02412 i=0;
02413 Int_t point=0;
02414
02415
02416 cout<<"Looping over multimap..."<<endl;
02417 for (multimap<Double_t,Int_t>::iterator vIt=meu.begin();
02418 vIt!=meu.end();++vIt){
02419
02420 Bool_t useThisOne=true;
02421
02422
02423 Int_t scaleFactor=10;
02424 if (vIt->first<1000){
02425 if (i%scaleFactor!=0) useThisOne=false;
02426 }
02427
02428 if (useThisOne){
02429
02430 if (vIt->first>600){
02431
02432
02433
02434
02435 Int_t medianNum=i/2;
02436
02437
02438 multimap<Double_t,Int_t>::iterator itMedian=meu.begin();
02439 advance(itMedian,medianNum);
02440
02441
02442
02443
02444
02445
02446
02447 median=itMedian->first;
02448
02449
02450 gMedian->SetPoint(point,vIt->first,median/medianAll);
02451 point++;
02452 }
02453 }
02454
02455 i++;
02456 }
02457
02458 cout<<"Extracting graph from tprof..."<<endl;
02459 TGraph* gMean=new TGraph(pMeuVsCutNorm->GetNbinsX());
02460 gMean->SetName("gMean");
02461 gMean->SetMarkerStyle(8);
02462 gMean->SetMarkerColor(2);
02463 for (Int_t i=0;i<pMeuVsCutNorm->GetNbinsX();i++){
02464 Double_t x=pMeuVsCutNorm->GetBinCenter(i);
02465 Double_t y=pMeuVsCutNorm->GetBinContent(i);
02466 gMean->SetPoint(i,x,y);
02467 }
02468
02469 cMeuCut->cd(3);
02470 gMedian->SetTitle("Variation of the Mean and the Median with Trunction Threshold");
02471 gMedian->Draw("ap");
02472 gMean->Draw("p");
02473 cMeuCut->cd(4);
02474 hSigMap->Draw();
02475
02476
02477 cout<<"Map size="<<meu.size()<<", vect size="<<vMeuSigMapNoCut.size()
02478 <<", median="<<median<<endl;
02479
02480 gMedian->Write();
02481 gMean->Write();
02482
02483 MSG("MeuPlots",Msg::kInfo)
02484 <<" ** Finished FNALSep04 method **"<<endl;
02485 }
02486
02487
02488
02489 void MeuPlots::DriftCalibrate(Float_t& x,const MeuSummary& s) const
02490 {
02491 Calibrator& cal=Calibrator::Instance();
02492
02493 Detector::Detector_t dt=static_cast<Detector::Detector_t>
02494 (s.Detector);
02495 SimFlag::SimFlag_t sf=static_cast<SimFlag::SimFlag_t>
02496 (s.SimFlag);
02497 VldTimeStamp vldts(s.TimeSec);
02498 VldContext vc(dt,sf,vldts);
02499
02500 static Bool_t firstTime=true;
02501 if (firstTime){
02502 firstTime=false;
02503
02504 cout<<"DriftCalibrate: Using VldContext: ";
02505 vc.Print();
02506 cout<<endl;
02507
02508
02509 }
02510
02511
02512 cal.Reset(vc);
02513
02514
02515
02516 PlexStripEndId seid2(dt,100,25,StripEnd::kWest);
02517
02518
02519 x=cal.GetDriftCorrected(x,seid2);
02520 }
02521
02522
02523
02524 void MeuPlots::DriftDecalTwice(Float_t& x,const MeuSummary& s) const
02525 {
02526 Calibrator& cal=Calibrator::Instance();
02527
02528 Detector::Detector_t dt=static_cast<Detector::Detector_t>
02529 (s.Detector);
02530 SimFlag::SimFlag_t sf=static_cast<SimFlag::SimFlag_t>
02531 (s.SimFlag);
02532 VldTimeStamp vldts(s.TimeSec);
02533 VldContext vc(dt,sf,vldts);
02534
02535 static Bool_t firstTime=true;
02536 if (firstTime){
02537 firstTime=false;
02538
02539 cout<<"DriftDecalTwice: Using VldContext: ";
02540 vc.Print();
02541 cout<<endl;
02542
02543
02544 }
02545
02546
02547 cal.Reset(vc);
02548
02549
02550
02551 PlexStripEndId seid2(dt,100,25,StripEnd::kWest);
02552
02553
02554 x=cal.DecalDrift(x,seid2);
02555 x=cal.DecalDrift(x,seid2);
02556 }
02557
02558
02559
02560 void MeuPlots::CalibrationGroupEnergyCorrections
02561 (Float_t& x,const MeuSummary& s) const
02562 {
02564
02565 Detector::Detector_t dt=static_cast<Detector::Detector_t>
02566 (s.Detector);
02567 SimFlag::SimFlag_t sf=static_cast<SimFlag::SimFlag_t>
02568 (s.SimFlag);
02569 VldTimeStamp vldts(s.TimeSec);
02570 VldContext vc(dt,sf,vldts);
02571
02572 static Bool_t firstTime=true;
02573 if (firstTime){
02574 firstTime=false;
02575
02576 cout<<"MeuPlots::CalibrationGroupEnergyCorrections:"
02577 <<" Using VldContext: ";
02578 vc.Print();
02579 cout<<endl;
02580 }
02581
02582
02583 x=EnergyCorrections::CalibrationGroupEnergyCorrections(x,vc,
02584 s.ReleaseType);
02585 }
02586
02587
02588
02589 void MeuPlots::CalAttenSyst()
02590 {
02591 Calibrator& cal=Calibrator::Instance();
02592
02593
02594
02595 cal.Set("TimeCalibrator=SimpleCalScheme");
02596 cal.Set("PeCalibrator=SimpleCalScheme");
02597 cal.Set("VALinCalibrator=SimpleCalScheme");
02598 cal.Set("DriftCalibrator=SimpleCalScheme");
02599 cal.Set("LinCalibrator=SimpleCalScheme");
02600 cal.Set("StripCalibrator=SimpleCalScheme");
02601 cal.Set("MIPCalibrator=SimpleCalScheme");
02602 cal.Set("Thermometer=SimpleCalScheme");
02603
02604
02605
02606
02607
02608 Detector::Detector_t dt=Detector::kFar;
02609
02610 VldTimeStamp* vldts=new VldTimeStamp(2004,11,14,0,0,1);
02611 VldContext* vc=new VldContext(dt,SimFlag::kData,*vldts);
02612 cal.Reset(*vc);
02613
02614 cout<<"Using VldContext: ";
02615 vc->Print();
02616 cout<<endl;
02617
02618 Int_t numBins=20;
02619 TProfile* p1=new TProfile("p1","p1",numBins,-4,4);
02620 TProfile* p2=new TProfile("p2","p2",numBins,-4,4);
02621
02622 TProfile* pSigMap1=new TProfile("pSigMap1","pSigMap1",numBins,-4,4);
02623 TProfile* pSigMap2=new TProfile("pSigMap2","pSigMap2",numBins,-4,4);
02624
02625 TProfile* pn1=new TProfile("pn1","pn1",numBins,-4,4);
02626 TProfile* pn2=new TProfile("pn2","pn2",numBins,-4,4);
02627
02628
02629 Int_t plane=4;
02630
02631 Int_t strip=75;
02632 PlexStripEndId seid1(dt,plane,strip,StripEnd::kEast);
02633 PlexStripEndId seid2(dt,plane,strip,StripEnd::kWest);
02634 Float_t sigcorr=1000;
02635 for (Int_t pl=1;pl<249;pl+=2){
02636 for (Float_t lpos=-4+(8./numBins)/2;lpos<4;lpos+=(8./numBins)){
02637
02638 seid1.SetPlane(pl);
02639 seid2.SetPlane(pl);
02640
02641 Float_t sigMap1=cal.GetAttenCorrectedTpos(sigcorr,lpos,seid1);
02642 Float_t sigMap2=cal.GetAttenCorrectedTpos(sigcorr,lpos,seid2);
02643
02644
02645 Float_t resp1=sigcorr/sigMap1;
02646 Float_t resp2=sigcorr/sigMap2;
02647
02648 cout<<"pl="<<pl<<", lpos="<<lpos<<", sigMap1="<<sigMap1
02649 <<", sigMap2="<<sigMap2
02650 <<", resp1="<<resp1
02651 <<", resp2="<<resp2<<endl;
02652
02653 pSigMap1->Fill(lpos,sigMap1);
02654 pSigMap2->Fill(lpos,sigMap2);
02655
02656 p1->Fill(lpos,resp1);
02657 p2->Fill(lpos,resp2);
02658 }
02659 }
02660
02661 for (Int_t pl=1;pl<249;pl+=2){
02662 Int_t i=0;
02663 for (Float_t lpos=-4+(8./numBins)/2;lpos<4;lpos+=(8./numBins)){
02664 i++;
02665
02666 seid1.SetPlane(pl);
02667 seid2.SetPlane(pl);
02668
02669 Float_t sigMap1=cal.GetAttenCorrectedTpos(sigcorr,lpos,seid1);
02670 Float_t sigMap2=cal.GetAttenCorrectedTpos(sigcorr,lpos,seid2);
02671
02672
02673 Float_t resp1=sigcorr/sigMap1;
02674 Float_t resp2=sigcorr/sigMap2;
02675
02676 cout<<"pl="<<pl<<", lpos="<<lpos<<", sigMap1="<<sigMap1
02677 <<", sigMap2="<<sigMap2
02678 <<", resp1="<<resp1
02679 <<", resp2="<<resp2<<endl;
02680
02681 Float_t norm1=resp1/p1->GetBinContent(i);
02682 Float_t norm2=resp2/p2->GetBinContent(i);
02683
02684 pn1->Fill(lpos,norm1);
02685 pn2->Fill(lpos,norm2);
02686 }
02687 }
02688
02689 TCanvas* cStripAtten=new TCanvas("cStripAtten","cStripAtten",
02690 0,0,700,800);
02691 cStripAtten->SetFillColor(0);
02692 cStripAtten->Divide(2,2);
02693 cStripAtten->cd(1);
02694 p1->Draw("rms");
02695 cStripAtten->cd(2);
02696 p2->Draw("rms");
02697 cStripAtten->cd(3);
02698 pn1->Draw("rms");
02699 pn1->SetTitle("RMS of Normalised Strip Response (end 1)");
02700
02701 cStripAtten->cd(4);
02702 pn2->Draw();
02703 pn2->SetErrorOption("rms");
02704 pn2->SetTitle("RMS of Normalised Strip Response (end 2)");
02705
02706
02707 }
02708
02709
02710
02711 void MeuPlots::ugliClearFibre()
02712 {
02713
02714
02715
02716
02717
02718
02719
02720
02721 Detector::Detector_t dt=Detector::kNear;
02722 VldTimeStamp* vldts=new VldTimeStamp(2005,11,14,0,0,1);
02723
02724
02725 VldContext* vc=new VldContext(dt,SimFlag::kMC,*vldts);
02726
02727
02728 Calibrator& cal=Calibrator::Instance();
02729
02730 cal.Reset(*vc);
02731
02732
02733
02734
02735 cout<<"Using VldContext: ";
02736 vc->Print();
02737 cout<<endl;
02738
02739
02740 TH1F* hGainCorCalor=new TH1F("hGainCorCalor","hGainCorCalor",500,0,5);
02741 hGainCorCalor->SetTitle("Gain Correction Factor");
02742 hGainCorCalor->GetXaxis()->SetTitle("Gain Correction Factor");
02743 hGainCorCalor->GetXaxis()->CenterTitle();
02744 hGainCorCalor->GetYaxis()->SetTitle("");
02745 hGainCorCalor->GetYaxis()->CenterTitle();
02746 hGainCorCalor->SetLineColor(2);
02747
02748
02749 TH1F* hAttenGreenCorCalor=new TH1F("hAttenGreenCorCalor","hAttenGreenCorCalor",
02750 500,0,5);
02751 hAttenGreenCorCalor->SetTitle("Green Fiber Correction Factor");
02752 hAttenGreenCorCalor->GetXaxis()->SetTitle("Green Fiber Correction Factor");
02753 hAttenGreenCorCalor->GetXaxis()->CenterTitle();
02754 hAttenGreenCorCalor->GetYaxis()->SetTitle("");
02755 hAttenGreenCorCalor->GetYaxis()->CenterTitle();
02756 hAttenGreenCorCalor->SetLineColor(3);
02757
02758
02759 TH1F* hAttenCorCalor=new TH1F("hAttenCorCalor","hAttenCorCalor",
02760 500,0,5);
02761 hAttenCorCalor->SetTitle("Clear Fiber Correction Factor");
02762 hAttenCorCalor->GetXaxis()->SetTitle("Clear Fiber Correction Factor");
02763 hAttenCorCalor->GetXaxis()->CenterTitle();
02764 hAttenCorCalor->GetYaxis()->SetTitle("");
02765 hAttenCorCalor->GetYaxis()->CenterTitle();
02766 hAttenCorCalor->SetLineColor(4);
02767
02768
02769 TH1F* hTotalCorCalor=new TH1F("hTotalCorCalor","hTotalCorCalor",
02770 500,0,5);
02771 hTotalCorCalor->SetTitle("Total Correction Factor");
02772 hTotalCorCalor->GetXaxis()->SetTitle("Total Correction Factor");
02773 hTotalCorCalor->GetXaxis()->CenterTitle();
02774 hTotalCorCalor->GetYaxis()->SetTitle("");
02775 hTotalCorCalor->GetYaxis()->CenterTitle();
02776 hTotalCorCalor->SetLineColor(1);
02777
02778
02779 TH1F* hStsCorCalor=new TH1F("hStsCorCalor","hStsCorCalor",
02780 500,0,5);
02781 hStsCorCalor->SetTitle("Sts Correction Factor");
02782 hStsCorCalor->GetXaxis()->SetTitle("Sts Correction Factor");
02783 hStsCorCalor->GetXaxis()->CenterTitle();
02784 hStsCorCalor->GetYaxis()->SetTitle("");
02785 hStsCorCalor->GetYaxis()->CenterTitle();
02786 hStsCorCalor->SetLineColor(1);
02787
02788
02789
02790
02791
02792 TH1F* hGainCorSpect=new TH1F("hGainCorSpect","hGainCorSpect",500,0,5);
02793 hGainCorSpect->SetTitle("Gain Correction Factor");
02794 hGainCorSpect->GetXaxis()->SetTitle("Gain Correction Factor");
02795 hGainCorSpect->GetXaxis()->CenterTitle();
02796 hGainCorSpect->GetYaxis()->SetTitle("");
02797 hGainCorSpect->GetYaxis()->CenterTitle();
02798 hGainCorSpect->SetLineColor(2);
02799
02800
02801 TH1F* hAttenGreenCorSpect=new TH1F("hAttenGreenCorSpect","hAttenGreenCorSpect",
02802 500,0,5);
02803 hAttenGreenCorSpect->SetTitle("Green Fiber Correction Factor");
02804 hAttenGreenCorSpect->GetXaxis()->SetTitle("Green Fiber Correction Factor");
02805 hAttenGreenCorSpect->GetXaxis()->CenterTitle();
02806 hAttenGreenCorSpect->GetYaxis()->SetTitle("");
02807 hAttenGreenCorSpect->GetYaxis()->CenterTitle();
02808 hAttenGreenCorSpect->SetLineColor(3);
02809
02810
02811 TH1F* hAttenCorSpect=new TH1F("hAttenCorSpect","hAttenCorSpect",
02812 500,0,5);
02813 hAttenCorSpect->SetTitle("Clear Fiber Correction Factor");
02814 hAttenCorSpect->GetXaxis()->SetTitle("Clear Fiber Correction Factor");
02815 hAttenCorSpect->GetXaxis()->CenterTitle();
02816 hAttenCorSpect->GetYaxis()->SetTitle("");
02817 hAttenCorSpect->GetYaxis()->CenterTitle();
02818 hAttenCorSpect->SetLineColor(4);
02819
02820
02821 TH1F* hTotalCorSpect=new TH1F("hTotalCorSpect","hTotalCorSpect",
02822 500,0,5);
02823 hTotalCorSpect->SetTitle("Total Correction Factor");
02824 hTotalCorSpect->GetXaxis()->SetTitle("Total Correction Factor");
02825 hTotalCorSpect->GetXaxis()->CenterTitle();
02826 hTotalCorSpect->GetYaxis()->SetTitle("");
02827 hTotalCorSpect->GetYaxis()->CenterTitle();
02828 hTotalCorSpect->SetLineColor(1);
02829
02830
02831 TH1F* hStsCorSpect=new TH1F("hStsCorSpect","hStsCorSpect",
02832 500,0,5);
02833 hStsCorSpect->SetTitle("Sts Correction Factor");
02834 hStsCorSpect->GetXaxis()->SetTitle("Sts Correction Factor");
02835 hStsCorSpect->GetXaxis()->CenterTitle();
02836 hStsCorSpect->GetYaxis()->SetTitle("");
02837 hStsCorSpect->GetYaxis()->CenterTitle();
02838 hStsCorSpect->SetLineColor(1);
02839
02840
02841
02842
02843 TProfile* pGainCorVsStrip=new TProfile
02844 ("pGainCorVsStrip","pGainCorVsStrip",50,0,100);
02845 pGainCorVsStrip->GetXaxis()->SetTitle("Strip");
02846 pGainCorVsStrip->GetXaxis()->CenterTitle();
02847 pGainCorVsStrip->GetYaxis()->SetTitle("Correction Factor");
02848 pGainCorVsStrip->GetYaxis()->CenterTitle();
02849 TProfile* pAttenCorVsStrip=new TProfile
02850 ("pAttenCorVsStrip","pAttenCorVsStrip",50,0,100);
02851 pAttenCorVsStrip->GetXaxis()->SetTitle("Strip");
02852 pAttenCorVsStrip->GetXaxis()->CenterTitle();
02853 pAttenCorVsStrip->GetYaxis()->SetTitle("Correction Factor");
02854 pAttenCorVsStrip->GetYaxis()->CenterTitle();
02855 TProfile* pAttenGreenCorVsStrip=new TProfile
02856 ("pAttenGreenCorVsStrip","pAttenGreenCorVsStrip",50,0,100);
02857 pAttenGreenCorVsStrip->GetXaxis()->SetTitle("Strip");
02858 pAttenGreenCorVsStrip->GetXaxis()->CenterTitle();
02859 pAttenGreenCorVsStrip->GetYaxis()->SetTitle("Correction Factor");
02860 pAttenGreenCorVsStrip->GetYaxis()->CenterTitle();
02861 TProfile* pTotalCorVsStrip=new TProfile
02862 ("pTotalCorVsStrip","pTotalCorVsStrip",50,0,100);
02863 pTotalCorVsStrip->GetXaxis()->SetTitle("Strip");
02864 pTotalCorVsStrip->GetXaxis()->CenterTitle();
02865 pTotalCorVsStrip->GetYaxis()->SetTitle("Correction Factor");
02866 pTotalCorVsStrip->GetYaxis()->CenterTitle();
02867
02868
02869 TProfile* pGainCorVsStripU=new TProfile
02870 ("pGainCorVsStripU","pGainCorVsStripU",50,0,100);
02871 pGainCorVsStripU->GetXaxis()->SetTitle("Strip");
02872 pGainCorVsStripU->GetXaxis()->CenterTitle();
02873 pGainCorVsStripU->GetYaxis()->SetTitle("Correction Factor");
02874 pGainCorVsStripU->GetYaxis()->CenterTitle();
02875 TProfile* pAttenCorVsStripU=new TProfile
02876 ("pAttenCorVsStripU","pAttenCorVsStripU",50,0,100);
02877 pAttenCorVsStripU->GetXaxis()->SetTitle("Strip");
02878 pAttenCorVsStripU->GetXaxis()->CenterTitle();
02879 pAttenCorVsStripU->GetYaxis()->SetTitle("Correction Factor");
02880 pAttenCorVsStripU->GetYaxis()->CenterTitle();
02881 TProfile* pAttenGreenCorVsStripU=new TProfile
02882 ("pAttenGreenCorVsStripU","pAttenGreenCorVsStripU",50,0,100);
02883 pAttenGreenCorVsStripU->GetXaxis()->SetTitle("Strip");
02884 pAttenGreenCorVsStripU->GetXaxis()->CenterTitle();
02885 pAttenGreenCorVsStripU->GetYaxis()->SetTitle("Correction Factor");
02886 pAttenGreenCorVsStripU->GetYaxis()->CenterTitle();
02887 TProfile* pTotalCorVsStripU=new TProfile
02888 ("pTotalCorVsStripU","pTotalCorVsStripU",50,0,100);
02889 pTotalCorVsStripU->GetXaxis()->SetTitle("Strip");
02890 pTotalCorVsStripU->GetXaxis()->CenterTitle();
02891 pTotalCorVsStripU->GetYaxis()->SetTitle("Correction Factor");
02892 pTotalCorVsStripU->GetYaxis()->CenterTitle();
02893
02894 TProfile* pGainCorVsStripV=new TProfile
02895 ("pGainCorVsStripV","pGainCorVsStripV",50,0,100);
02896 pGainCorVsStripV->GetXaxis()->SetTitle("Strip");
02897 pGainCorVsStripV->GetXaxis()->CenterTitle();
02898 pGainCorVsStripV->GetYaxis()->SetTitle("Correction Factor");
02899 pGainCorVsStripV->GetYaxis()->CenterTitle();
02900 TProfile* pAttenCorVsStripV=new TProfile
02901 ("pAttenCorVsStripV","pAttenCorVsStripV",50,0,100);
02902 pAttenCorVsStripV->GetXaxis()->SetTitle("Strip");
02903 pAttenCorVsStripV->GetXaxis()->CenterTitle();
02904 pAttenCorVsStripV->GetYaxis()->SetTitle("Correction Factor");
02905 pAttenCorVsStripV->GetYaxis()->CenterTitle();
02906 TProfile* pAttenGreenCorVsStripV=new TProfile
02907 ("pAttenGreenCorVsStripV","pAttenGreenCorVsStripV",50,0,100);
02908 pAttenGreenCorVsStripV->GetXaxis()->SetTitle("Strip");
02909 pAttenGreenCorVsStripV->GetXaxis()->CenterTitle();
02910 pAttenGreenCorVsStripV->GetYaxis()->SetTitle("Correction Factor");
02911 pAttenGreenCorVsStripV->GetYaxis()->CenterTitle();
02912 TProfile* pTotalCorVsStripV=new TProfile
02913 ("pTotalCorVsStripV","pTotalCorVsStripV",50,0,100);
02914 pTotalCorVsStripV->GetXaxis()->SetTitle("Strip");
02915 pTotalCorVsStripV->GetXaxis()->CenterTitle();
02916 pTotalCorVsStripV->GetYaxis()->SetTitle("Correction Factor");
02917 pTotalCorVsStripV->GetYaxis()->CenterTitle();
02918
02919
02920
02921 TProfile* pCfVsTU1=new TProfile("pCfVsTU1","pCfVsTU1",300,-5,5);
02922 TProfile* pCfVsTU2=new TProfile("pCfVsTU2","pCfVsTU2",300,-5,5);
02923 TProfile* pCfVsTV1=new TProfile("pCfVsTV1","pCfVsTV1",300,-5,5);
02924 TProfile* pCfVsTV2=new TProfile("pCfVsTV2","pCfVsTV2",300,-5,5);
02925
02926 TProfile* pPtVsTU1=new TProfile("pPtVsTU1","pPtVsTU1",300,-5,5);
02927 TProfile* pPtVsTU2=new TProfile("pPtVsTU2","pPtVsTU2",300,-5,5);
02928 TProfile* pPtVsTV1=new TProfile("pPtVsTV1","pPtVsTV1",300,-5,5);
02929 TProfile* pPtVsTV2=new TProfile("pPtVsTV2","pPtVsTV2",300,-5,5);
02930
02931 TProfile* pHlVsTU1=new TProfile("pHlVsTU1","pHlVsTU1",300,-5,5);
02932 TProfile* pHlVsTU2=new TProfile("pHlVsTU2","pHlVsTU2",300,-5,5);
02933 TProfile* pHlVsTV1=new TProfile("pHlVsTV1","pHlVsTV1",300,-5,5);
02934 TProfile* pHlVsTV2=new TProfile("pHlVsTV2","pHlVsTV2",300,-5,5);
02935
02936 TGraph* gCfVsTAll=new TGraph(2);
02937 gCfVsTAll->SetMarkerColor(0);
02938 TGraph* gCfVsTUF=new TGraph(2);
02939 gCfVsTUF->SetMarkerStyle(8);
02940 TGraph* gCfVsTUP=new TGraph(2);
02941 gCfVsTUP->SetMarkerStyle(8);
02942 TGraph* gCfVsTVF=new TGraph(2);
02943 gCfVsTVF->SetMarkerStyle(8);
02944 TGraph* gCfVsTVP=new TGraph(2);
02945 gCfVsTVP->SetMarkerStyle(8);
02946
02947 TGraph* gPtVsTAll=new TGraph(2);
02948 gPtVsTAll->SetMarkerColor(0);
02949 TGraph* gPtVsTUF=new TGraph(2);
02950 gPtVsTUF->SetMarkerStyle(8);
02951 TGraph* gPtVsTUP=new TGraph(2);
02952 gPtVsTUP->SetMarkerStyle(8);
02953 TGraph* gPtVsTVF=new TGraph(2);
02954 gPtVsTVF->SetMarkerStyle(8);
02955 TGraph* gPtVsTVP=new TGraph(2);
02956 gPtVsTVP->SetMarkerStyle(8);
02957
02958 TGraph* gHlVsTAll=new TGraph(2);
02959 gHlVsTAll->SetMarkerColor(0);
02960 TGraph* gHlVsTUF=new TGraph(2);
02961 gHlVsTUF->SetMarkerStyle(8);
02962 TGraph* gHlVsTUP=new TGraph(2);
02963 gHlVsTUP->SetMarkerStyle(8);
02964 TGraph* gHlVsTVF=new TGraph(2);
02965 gHlVsTVF->SetMarkerStyle(8);
02966 TGraph* gHlVsTVP=new TGraph(2);
02967 gHlVsTVP->SetMarkerStyle(8);
02968
02969 TGraph* gCentreAll=new TGraph(2);
02970 gCentreAll->SetMarkerColor(0);
02971 gCentreAll->SetPoint(0,-1.35,-2.0);
02972 gCentreAll->SetPoint(1,2.52,2.0);
02973
02974
02975 TGraph* gCentreUF=new TGraph(2);
02976 gCentreUF->SetMarkerStyle(8);
02977 TGraph* gCentreUP=new TGraph(2);
02978 gCentreUP->SetMarkerStyle(8);
02979 TGraph* gCentreVF=new TGraph(2);
02980 gCentreVF->SetMarkerStyle(8);
02981 TGraph* gCentreVP=new TGraph(2);
02982 gCentreVP->SetMarkerStyle(8);
02983
02984
02985
02986
02987 Float_t avAttenCalorStored=0.794919;
02988 Float_t avAttenGreenCalorStored=0.419917;
02989 Float_t avGainCalorStored=105.485;
02990
02991
02992
02993
02994
02995 Float_t avStsCorrectionCalor=0;
02996 Float_t avStsCorrectionCalcCalor=0;
02997 Float_t avAttenCalor=0;
02998 Float_t avAttenGreenCalor=0;
02999 Float_t avGainCalor=0;
03000 Int_t avCalorCounter=0;
03001
03002 Float_t avStsCorrectionCalorPI=0;
03003 Float_t avStsCorrectionCalcCalorPI=0;
03004 Float_t avAttenCalorPI=0;
03005 Float_t avAttenGreenCalorPI=0;
03006 Float_t avGainCalorPI=0;
03007 Int_t avCalorPICounter=0;
03008
03009
03010
03011
03012
03013 Float_t avStsCorrection=0;
03014 Float_t avStsCorrectionCalc=0;
03015 Float_t avAtten=0;
03016 Float_t avAttenGreen=0;
03017 Float_t avGain=0;
03018 Int_t avCounter=0;
03019
03020
03021 UgliGeomHandle ugh(*vc);
03022
03023 if (dt==Detector::kFar){
03024 for (Int_t p=250;p<280;p++){
03025 PlexPlaneId ppid(dt,p);
03026 UgliScintPlnHandle usph=ugh.GetScintPlnHandle(ppid);
03027
03028 for (Int_t i=0;i<192;i++){
03029 Int_t strip=i;
03030 PlexStripEndId seid(dt,p,strip,StripEnd::kWhole);
03031 UgliStripHandle ush=ugh.GetStripHandle(seid);
03032
03033 Float_t clearFiber1=ush.ClearFiber(StripEnd::kEast);
03034 Float_t clearFiber2=ush.ClearFiber(StripEnd::kWest);
03035 Float_t pigtail1=ush.WlsPigtail(StripEnd::kEast);
03036 Float_t pigtail2=ush.WlsPigtail(StripEnd::kWest);
03037 Float_t tpos=ush.GetTPos();
03038 Float_t halfLength1=ush.GetHalfLength();
03039 Float_t halfLength2=ush.GetHalfLength();
03040
03041
03042 if (usph.GetPlaneView()==PlaneView::kU){
03043 cout<<"U-View: Strip="<<strip<<", tpos="<<tpos
03044 <<", clearF1="<<clearFiber1
03045 <<", clearF2="<<clearFiber2
03046 <<", halfL1="<<halfLength1
03047 <<", halfL2="<<halfLength2
03048 <<endl;
03049 pCfVsTU1->Fill(tpos,clearFiber1);
03050 pCfVsTU2->Fill(tpos,clearFiber2);
03051 pCfVsTU1->Fill(tpos,clearFiber1*1.0001);
03052 pCfVsTU2->Fill(tpos,clearFiber2*1.0001);
03053 pPtVsTU1->Fill(tpos,pigtail1);
03054 pPtVsTU2->Fill(tpos,pigtail2);
03055 pPtVsTU1->Fill(tpos,pigtail1*1.0001);
03056 pPtVsTU2->Fill(tpos,pigtail2*1.0001);
03057
03058 pHlVsTU1->Fill(tpos,halfLength1);
03059 pHlVsTU2->Fill(tpos,halfLength2);
03060 pHlVsTU1->Fill(tpos,halfLength1*1.0001);
03061 pHlVsTU2->Fill(tpos,halfLength2*1.0001);
03062 }
03063 else if (usph.GetPlaneView()==PlaneView::kV){
03064 cout<<"V-View: Strip="<<strip<<", tpos="<<tpos
03065 <<", clearF1="<<clearFiber1
03066 <<", clearF2="<<clearFiber2
03067 <<", halfL1="<<halfLength1
03068 <<", halfL2="<<halfLength2
03069 <<endl;
03070 pCfVsTV1->Fill(tpos,clearFiber1);
03071 pCfVsTV2->Fill(tpos,clearFiber2);
03072 pCfVsTV1->Fill(tpos,clearFiber1*1.0001);
03073 pCfVsTV2->Fill(tpos,clearFiber2*1.0001);
03074 pPtVsTV1->Fill(tpos,pigtail1);
03075 pPtVsTV2->Fill(tpos,pigtail2);
03076 pPtVsTV1->Fill(tpos,pigtail1*1.0001);
03077 pPtVsTV2->Fill(tpos,pigtail2*1.0001);
03078
03079 pHlVsTV1->Fill(tpos,halfLength1);
03080 pHlVsTV2->Fill(tpos,halfLength2);
03081 pHlVsTV1->Fill(tpos,halfLength1*1.0001);
03082 pHlVsTV2->Fill(tpos,halfLength2*1.0001);
03083 }
03084 else cout<<"ahhhh"<<endl;
03085 }
03086 }
03087 }
03088 else if (dt==Detector::kNear){
03089
03090 cout<<endl<<endl<<"Doing calorimeter"<<endl;
03091 for (Int_t p=1;p<=120;p++){
03092 PlexPlaneId ppid(dt,p);
03093 UgliScintPlnHandle usph=ugh.GetScintPlnHandle(ppid);
03094
03095 for (Int_t i=0;i<96;i++){
03096
03097
03098
03099 if (i>63 && (p-1)%5!=0 && p%2!=0) continue;
03100
03101 if ((i<4 || i>67) && (p-1)%5!=0 && p%2==0) continue;
03102
03103 MAXMSG("MeuPlots",Msg::kInfo,2000)
03104 <<"pl="<<p<<", st="<<i<<endl;
03105
03106
03107
03108
03109
03110
03111
03112
03113
03114
03115
03116
03117
03118
03119
03120
03121
03122
03123
03124 Int_t strip=i;
03125 PlexStripEndId seid(dt,p,strip,StripEnd::kWhole);
03126 UgliStripHandle ush=ugh.GetStripHandle(seid);
03127
03128 Float_t clearFiber1=0;
03129 Float_t clearFiber2=ush.ClearFiber(StripEnd::kWest);
03130 Float_t pigtail1=0;
03131 Float_t pigtail2=ush.WlsPigtail(StripEnd::kWest);
03132 Float_t tpos=ush.GetTPos();
03133 Float_t halfLength1=0;
03134 Float_t halfLength2=ush.GetHalfLength();
03135
03136 TVector3 centre=ush.GlobalPos(0);
03137 Float_t x=centre.X();
03138 Float_t y=centre.Y();
03139
03140 static Int_t iAll=2;
03141 gCfVsTAll->SetPoint(iAll,tpos,clearFiber2);
03142 gPtVsTAll->SetPoint(iAll,tpos,pigtail2);
03143 gHlVsTAll->SetPoint(iAll,tpos,halfLength2);
03144 gCentreAll->SetPoint(iAll,x,y);
03145 iAll++;
03146
03147
03148 Float_t greenFiber=halfLength2+pigtail2;
03149 Float_t attenGreen=0.5*TMath::Exp(-greenFiber/1)+
03150 0.5*TMath::Exp(-greenFiber/6);
03151
03152
03153 PlexStripEndId seid2(dt,p,i,StripEnd::kWest);
03154 Float_t pe=cal.GetPhotoElectrons(100,seid2);
03155 Float_t sts=cal.GetStripToStripCorrected(1,seid2);
03156 Float_t gain=100/pe;
03157 Float_t atten=TMath::Exp(-clearFiber2/12);
03158
03159
03160
03161
03162
03163 Float_t gainResp=gain/avGainCalorStored;
03164 Float_t attenResp=atten/avAttenCalorStored;
03165 Float_t attenGreenResp=attenGreen/avAttenGreenCalorStored;
03166
03167 Float_t gainCor=1./gainResp;
03168 Float_t attenCor=1./attenResp;
03169 Float_t attenGreenCor=1./attenGreenResp;
03170
03171 Float_t response=1*gainResp*attenResp*attenGreenResp;
03172 Float_t stsCalc=1./response;
03173
03174
03175
03176 hGainCorCalor->Fill(gainCor);
03177 hAttenCorCalor->Fill(attenCor);
03178 hAttenGreenCorCalor->Fill(attenGreenCor);
03179 hTotalCorCalor->Fill(stsCalc);
03180 hStsCorCalor->Fill(sts);
03181
03182
03183 avAttenCalor+=atten;
03184 avAttenGreenCalor+=attenGreen;
03185 avGainCalor+=gain;
03186 avStsCorrectionCalor+=sts;
03187 avStsCorrectionCalcCalor+=stsCalc;
03188 avCalorCounter++;
03189
03190 if ((p-1)%5!=0) {
03191 MAXMSG("MeuPlots",Msg::kInfo,2000)
03192 <<"PARTIAL: pl,st="<<p<<","<<i<<endl;
03193 avAttenCalorPI+=atten;
03194 avAttenGreenCalorPI+=attenGreen;
03195 avGainCalorPI+=gain;
03196 avStsCorrectionCalorPI+=sts;
03197 avStsCorrectionCalcCalorPI+=stsCalc;
03198 avCalorPICounter++;
03199 }
03200
03201
03202 if (usph.GetPlaneView()==PlaneView::kU){
03203
03204 static Int_t iUF=0;
03205 static Int_t iUP=0;
03206 if ((p-1)%5==0) {
03207 gCfVsTUF->SetPoint(iUF,tpos,clearFiber2);
03208 gPtVsTUF->SetPoint(iUF,tpos,pigtail2);
03209 gHlVsTUF->SetPoint(iUF,tpos,halfLength2);
03210 gCentreUF->SetPoint(iUF,x,y);
03211 iUF++;
03212 }
03213 else {
03214 gCfVsTUP->SetPoint(iUP,tpos,clearFiber2);
03215 gPtVsTUP->SetPoint(iUP,tpos,pigtail2);
03216 gHlVsTUP->SetPoint(iUP,tpos,halfLength2);
03217 gCentreUP->SetPoint(iUP,x,y);
03218 iUP++;
03219 }
03220
03221 cout<<"U-View: Strip="<<strip<<", tpos="<<tpos
03222 <<", clearF1="<<clearFiber1
03223 <<", clearF2="<<clearFiber2
03224 <<", halfL1="<<halfLength1
03225 <<", halfL2="<<halfLength2
03226 <<endl;
03227 pCfVsTU1->Fill(tpos,clearFiber1);
03228 pCfVsTU2->Fill(tpos,clearFiber2);
03229 pCfVsTU1->Fill(tpos,clearFiber1*1.0001);
03230 pCfVsTU2->Fill(tpos,clearFiber2*1.0001);
03231 pPtVsTU1->Fill(tpos,pigtail1);
03232 pPtVsTU2->Fill(tpos,pigtail2);
03233 pPtVsTU1->Fill(tpos,pigtail1*1.0001);
03234 pPtVsTU2->Fill(tpos,pigtail2*1.0001);
03235
03236 pHlVsTU1->Fill(tpos,halfLength1);
03237 pHlVsTU2->Fill(tpos,halfLength2);
03238 pHlVsTU1->Fill(tpos,halfLength1*1.0001);
03239 pHlVsTU2->Fill(tpos,halfLength2*1.0001);
03240 }
03241 else if (usph.GetPlaneView()==PlaneView::kV){
03242
03243 static Int_t iVF=0;
03244 static Int_t iVP=0;
03245 if ((p-1)%5==0) {
03246 gCfVsTVF->SetPoint(iVF,tpos,clearFiber2);
03247 gPtVsTVF->SetPoint(iVF,tpos,pigtail2);
03248 gHlVsTVF->SetPoint(iVF,tpos,halfLength2);
03249 gCentreVF->SetPoint(iVF,x,y);
03250 iVF++;
03251 }
03252 else {
03253 gCfVsTVP->SetPoint(iVP,tpos,clearFiber2);
03254 gPtVsTVP->SetPoint(iVP,tpos,pigtail2);
03255 gHlVsTVP->SetPoint(iVP,tpos,halfLength2);
03256 gCentreVP->SetPoint(iVP,x,y);
03257 iVP++;
03258 }
03259
03260 cout<<"V-View: Strip="<<strip<<", tpos="<<tpos
03261 <<", clearF1="<<clearFiber1
03262 <<", clearF2="<<clearFiber2
03263 <<", halfL1="<<halfLength1
03264 <<", halfL2="<<halfLength2
03265 <<endl;
03266 pCfVsTV1->Fill(tpos,clearFiber1);
03267 pCfVsTV2->Fill(tpos,clearFiber2);
03268 pCfVsTV1->Fill(tpos,clearFiber1*1.0001);
03269 pCfVsTV2->Fill(tpos,clearFiber2*1.0001);
03270 pPtVsTV1->Fill(tpos,pigtail1);
03271 pPtVsTV2->Fill(tpos,pigtail2);
03272 pPtVsTV1->Fill(tpos,pigtail1*1.0001);
03273 pPtVsTV2->Fill(tpos,pigtail2*1.0001);
03274
03275 pHlVsTV1->Fill(tpos,halfLength1);
03276 pHlVsTV2->Fill(tpos,halfLength2);
03277 pHlVsTV1->Fill(tpos,halfLength1*1.0001);
03278 pHlVsTV2->Fill(tpos,halfLength2*1.0001);
03279 }
03280 else cout<<"ahhhh"<<endl;
03281 }
03282 }
03283
03286 cout<<endl<<endl<<"Doing spectrometer"<<endl;
03287 for (Int_t p=121;p<=281;p++){
03288 PlexPlaneId ppid(dt,p);
03289 UgliScintPlnHandle usph=ugh.GetScintPlnHandle(ppid);
03290
03291 for (Int_t i=0;i<96;i++){
03292
03293
03294 if ((p-1)%5!=0) continue;
03295
03296
03297 MAXMSG("MeuPlots",Msg::kInfo,20)
03298 <<"pl="<<p<<", st="<<i<<endl;
03299
03300 Int_t strip=i;
03301 PlexStripEndId seid(dt,p,strip,StripEnd::kWhole);
03302 UgliStripHandle ush=ugh.GetStripHandle(seid);
03303
03304
03305 Float_t clearFiber2=ush.ClearFiber(StripEnd::kWest);
03306
03307 Float_t pigtail2=ush.WlsPigtail(StripEnd::kWest);
03308
03309
03310 Float_t halfLength2=ush.GetHalfLength();
03311
03312 TVector3 centre=ush.GlobalPos(0);
03313
03314
03315
03316 Float_t greenFiber=halfLength2+pigtail2;
03317 Float_t attenGreen=0.5*TMath::Exp(-greenFiber/1)+
03318 0.5*TMath::Exp(-greenFiber/6);
03319
03320
03321 PlexStripEndId seid2(dt,p,i,StripEnd::kWest);
03322 Float_t pe=cal.GetPhotoElectrons(100,seid2);
03323 Float_t sts=cal.GetStripToStripCorrected(1,seid2);
03324 Float_t gain=100/pe;
03325 Float_t atten=TMath::Exp(-clearFiber2/12);
03326
03327
03328
03329
03330
03331 Float_t gainResp=gain/avGainCalorStored;
03332 Float_t attenResp=atten/avAttenCalorStored;
03333 Float_t attenGreenResp=attenGreen/avAttenGreenCalorStored;
03334
03335 Float_t gainCor=1./gainResp;
03336 Float_t attenCor=1./attenResp;
03337 Float_t attenGreenCor=1./attenGreenResp;
03338
03339 Float_t response=1*gainResp*attenResp*attenGreenResp;
03340 Float_t stsCalc=1./response;
03341
03342
03343 hGainCorSpect->Fill(gainCor);
03344 hAttenCorSpect->Fill(attenCor);
03345 hAttenGreenCorSpect->Fill(attenGreenCor);
03346 hTotalCorSpect->Fill(stsCalc);
03347 hStsCorSpect->Fill(sts);
03348
03349 pGainCorVsStrip->Fill(strip,gainCor);
03350 pAttenCorVsStrip->Fill(strip,attenCor);
03351 pAttenGreenCorVsStrip->Fill(strip,attenGreenCor);
03352 pTotalCorVsStrip->Fill(strip,stsCalc);
03353
03354
03355 avAtten+=atten;
03356 avAttenGreen+=attenGreen;
03357 avGain+=gain;
03358 avStsCorrection+=sts;
03359 avStsCorrectionCalc+=stsCalc;
03360 avCounter++;
03361
03362 if (p>250) {
03363 MAXMSG("MeuPlots",Msg::kInfo,2000)
03364 <<"pl,st="<<p<<","<<i
03365 <<", cFib="<<clearFiber2
03366 <<", att="<<atten
03367 <<", attG="<<attenGreen
03368 <<", gn="<<gain
03369 <<", sts="<<sts
03370 <<", stsMe="<<stsCalc
03371 <<endl;
03372
03373 MAXMSG("MeuPlots",Msg::kInfo,2000)
03374 <<" gnCor="<<gainCor
03375 <<", attCor="<<attenCor
03376 <<", attGCor="<<attenGreenCor
03377 <<", total="<<stsCalc
03378 <<endl;
03379 }
03380
03381 if (usph.GetPlaneView()==PlaneView::kU){
03382 pGainCorVsStripU->Fill(strip,gainCor);
03383 pAttenCorVsStripU->Fill(strip,attenCor);
03384 pAttenGreenCorVsStripU->Fill(strip,attenGreenCor);
03385 pTotalCorVsStripU->Fill(strip,stsCalc);
03386 }
03387 else if (usph.GetPlaneView()==PlaneView::kV){
03388 pGainCorVsStripV->Fill(strip,gainCor);
03389 pAttenCorVsStripV->Fill(strip,attenCor);
03390 pAttenGreenCorVsStripV->Fill(strip,attenGreenCor);
03391 pTotalCorVsStripV->Fill(strip,stsCalc);
03392 }
03393 else cout<<"ahhhh"<<endl;
03394 }
03395 }
03396 }
03397 else cout<<"No det"<<endl;
03398
03399
03400 avAttenCalor/=avCalorCounter;
03401 avAttenGreenCalor/=avCalorCounter;
03402 avGainCalor/=avCalorCounter;
03403 avStsCorrectionCalor/=avCalorCounter;
03404 avStsCorrectionCalcCalor/=avCalorCounter;
03405
03406 avAttenCalorPI/=avCalorPICounter;
03407 avAttenGreenCalorPI/=avCalorPICounter;
03408 avGainCalorPI/=avCalorPICounter;
03409 avStsCorrectionCalorPI/=avCalorPICounter;
03410 avStsCorrectionCalcCalorPI/=avCalorPICounter;
03411
03412
03413 avAtten/=avCounter;
03414 avAttenGreen/=avCounter;
03415 avGain/=avCounter;
03416 avStsCorrection/=avCounter;
03417 avStsCorrectionCalc/=avCounter;
03418
03419
03420 Double_t quantile=0.5;
03421
03422 Double_t medianAttenGreenCorCalor=-1;
03423 hAttenGreenCorCalor->GetQuantiles(1,&medianAttenGreenCorCalor,&quantile);
03424 Double_t meanAttenGreenCorCalor=hAttenGreenCorCalor->GetMean();
03425
03426 Double_t medianAttenCorCalor=-1;
03427 hAttenCorCalor->GetQuantiles(1,&medianAttenCorCalor,&quantile);
03428 Double_t meanAttenCorCalor=hAttenCorCalor->GetMean();
03429
03430 Double_t medianGainCorCalor=-1;
03431 hGainCorCalor->GetQuantiles(1,&medianGainCorCalor,&quantile);
03432 Double_t meanGainCorCalor=hGainCorCalor->GetMean();
03433
03434 Double_t medianTotalCorCalor=-1;
03435 hTotalCorCalor->GetQuantiles(1,&medianTotalCorCalor,&quantile);
03436 Double_t meanTotalCorCalor=hTotalCorCalor->GetMean();
03437
03438 Double_t medianStsCorCalor=-1;
03439 hStsCorCalor->GetQuantiles(1,&medianStsCorCalor,&quantile);
03440 Double_t meanStsCorCalor=hStsCorCalor->GetMean();
03441
03442
03443
03444
03445 Double_t medianAttenGreenCorSpect=-1;
03446 hAttenGreenCorSpect->GetQuantiles(1,&medianAttenGreenCorSpect,&quantile);
03447 Double_t meanAttenGreenCorSpect=hAttenGreenCorSpect->GetMean();
03448
03449 Double_t medianAttenCorSpect=-1;
03450 hAttenCorSpect->GetQuantiles(1,&medianAttenCorSpect,&quantile);
03451 Double_t meanAttenCorSpect=hAttenCorSpect->GetMean();
03452
03453 Double_t medianGainCorSpect=-1;
03454 hGainCorSpect->GetQuantiles(1,&medianGainCorSpect,&quantile);
03455 Double_t meanGainCorSpect=hGainCorSpect->GetMean();
03456
03457 Double_t medianTotalCorSpect=-1;
03458 hTotalCorSpect->GetQuantiles(1,&medianTotalCorSpect,&quantile);
03459 Double_t meanTotalCorSpect=hTotalCorSpect->GetMean();
03460
03461 Double_t medianStsCorSpect=-1;
03462 hStsCorSpect->GetQuantiles(1,&medianStsCorSpect,&quantile);
03463 Double_t meanStsCorSpect=hStsCorSpect->GetMean();
03464
03465
03466 cout<<endl<<"Calorimeter:"<<endl;
03467 cout<<"N="<<avCalorCounter<<endl;
03468 cout<<"Average attenuation (clear)="<<avAttenCalor<<endl;
03469 cout<<"Average attenuation (green)="<<avAttenGreenCalor<<endl;
03470 cout<<"Average gain ="<<avGainCalor<<endl;
03471 cout<<"Average sts correction ="<<avStsCorrectionCalor<<endl;
03472 cout<<"Average sts correction calc="<<avStsCorrectionCalcCalor<<endl;
03473
03474 cout<<endl<<"Calorimeter (PARTIAL PLANES ONLY):"<<endl;
03475 cout<<"N="<<avCalorPICounter<<endl;
03476 cout<<"Average attenuation (clear)="<<avAttenCalorPI<<endl;
03477 cout<<"Average attenuation (green)="<<avAttenGreenCalorPI<<endl;
03478 cout<<"Average gain ="<<avGainCalorPI<<endl;
03479 cout<<"Average sts correction ="<<avStsCorrectionCalorPI<<endl;
03480 cout<<"Average sts correction calc="<<avStsCorrectionCalcCalorPI<<endl;
03481
03482 cout<<endl<<"Spectrometer:"<<endl;
03483 cout<<"N="<<avCounter<<endl;
03484 cout<<"Average attenuation (clear)="<<avAtten<<endl;
03485 cout<<"Average attenuation (green)="<<avAttenGreen<<endl;
03486 cout<<"Average gain ="<<avGain<<endl;
03487 cout<<"Average sts correction ="<<avStsCorrection<<endl;
03488 cout<<"Average sts correction calc="<<avStsCorrectionCalc<<endl;
03489
03490 Float_t attenDiff=(avAttenCalor-avAtten)/avAttenCalor;
03491 Float_t attenGreenDiff=(avAttenGreenCalor-avAttenGreen)/
03492 avAttenGreenCalor;
03493 Float_t gainDiff=(avGainCalor-avGain)/avGainCalor;
03494
03495 Float_t totalDiff=attenDiff+attenGreenDiff+gainDiff;
03496
03497
03498 Float_t attenCalorPIDiff=(avAttenCalorPI-avAtten)/avAttenCalorPI;
03499 Float_t attenGreenCalorPIDiff=(avAttenGreenCalorPI-avAttenGreen)/
03500 avAttenGreenCalorPI;
03501 Float_t gainCalorPIDiff=(avGainCalorPI-avGain)/avGainCalorPI;
03502
03503 Float_t totalCalorPIDiff=attenCalorPIDiff+attenGreenCalorPIDiff+
03504 gainCalorPIDiff;
03505
03506
03507
03508 cout<<endl<<"Spectrometer difference wrt calorimeter:"<<endl;
03509 cout<<"Attenuation (clear)="<<attenDiff<<endl
03510 <<"Attenuation (green)="<<attenGreenDiff<<endl
03511 <<"Gain ="<<gainDiff<<endl
03512 <<"Total ="<<totalDiff<<endl;
03513 cout<<endl;
03514
03515 cout<<endl<<"Spectrometer difference wrt PARTIAL PLANES in calorimeter:"<<endl;
03516 cout<<"Attenuation (clear)="<<attenCalorPIDiff<<endl
03517 <<"Attenuation (green)="<<attenGreenCalorPIDiff<<endl
03518 <<"Gain ="<<gainCalorPIDiff<<endl
03519 <<"Total ="<<totalCalorPIDiff<<endl;
03520 cout<<endl;
03521
03522
03523 cout<<endl<<endl;
03524 cout<<"Calorimeter average correction factors from histos:"<<endl;
03525 cout<<"Attenuation (clear) median="<<medianAttenCorCalor
03526 <<", mean="<<meanAttenCorCalor
03527 <<endl;
03528 cout<<"Attenuation (green) median="<<medianAttenGreenCorCalor
03529 <<", mean="<<meanAttenGreenCorCalor
03530 <<endl;
03531 cout<<"Gain median="<<medianGainCorCalor
03532 <<", mean="<<meanGainCorCalor
03533 <<endl;
03534 cout<<"Total median="<<medianTotalCorCalor
03535 <<", mean="<<meanTotalCorCalor
03536 <<endl;
03537 cout<<"Sts median="<<medianStsCorCalor
03538 <<", mean="<<meanStsCorCalor
03539 <<endl;
03540
03541
03542 cout<<endl<<endl;
03543 cout<<"Spectrometer average correction factors from histos:"<<endl;
03544 cout<<"Attenuation (clear) median="<<medianAttenCorSpect
03545 <<", mean="<<meanAttenCorSpect
03546 <<endl;
03547 cout<<"Attenuation (green) median="<<medianAttenGreenCorSpect
03548 <<", mean="<<meanAttenGreenCorSpect
03549 <<endl;
03550 cout<<"Gain median="<<medianGainCorSpect
03551 <<", mean="<<meanGainCorSpect
03552 <<endl;
03553 cout<<"Total median="<<medianTotalCorSpect
03554 <<", mean="<<meanTotalCorSpect
03555 <<endl;
03556 cout<<"Sts median="<<medianStsCorSpect
03557 <<", mean="<<meanStsCorSpect
03558 <<endl;
03559
03560
03561
03562 gStyle->SetOptFit(0);
03563 gStyle->SetPalette(1);
03564 gStyle->SetTitleFontSize(0.06);
03565 gStyle->SetTitleFillColor(0);
03566 gStyle->SetTitleBorderSize(0);
03567 gStyle->SetFrameBorderMode(0);
03568 gStyle->SetTitleW(0.99);
03569
03570
03571 TCanvas* cCorrectionFactorsCalor=new TCanvas
03572 ("cCorrectionFactorsCalor","cCorrectionFactorsCalor",
03573
03574 0,0,1100,1000);
03575 cCorrectionFactorsCalor->SetFillColor(0);
03576 cCorrectionFactorsCalor->Divide(1,2);
03577 cCorrectionFactorsCalor->cd(1);
03578 hAttenGreenCorCalor->Draw();
03579 hAttenGreenCorCalor->SetTitle("Correction Factors");
03580 hAttenGreenCorCalor->GetXaxis()->SetTitle("Correction Factor");
03581 hAttenGreenCorCalor->GetXaxis()->SetRangeUser(0.2,2.5);
03582 hTotalCorCalor->Draw("SAMES");
03583 hGainCorCalor->Draw("SAMES");
03584 hAttenCorCalor->Draw("SAMES");
03585 cCorrectionFactorsCalor->cd(2);
03586 TH1F* hCalor=static_cast<TH1F*>(hTotalCorCalor->Clone());
03587 hCalor->Draw();
03588 hCalor->Rebin(4);
03589 hCalor->GetXaxis()->SetRangeUser(0.2,2.5);
03590 hCalor->SetLineStyle(1);
03591 hCalor->SetLineColor(2);
03592 hCalor->SetLineWidth(3);
03593 hStsCorCalor->Draw("SAMES");
03594 hStsCorCalor->GetXaxis()->SetRangeUser(0.2,2.5);
03595 hStsCorCalor->Rebin(4);
03596 hStsCorCalor->SetLineStyle(5);
03597 hStsCorCalor->SetLineWidth(3);
03598
03599
03600
03601
03602 TCanvas* cCorrectionFactorsSpect=new TCanvas
03603 ("cCorrectionFactorsSpect","cCorrectionFactorsSpect",
03604 0,0,1100,1000);
03605 cCorrectionFactorsSpect->SetFillColor(0);
03606 cCorrectionFactorsSpect->Divide(1,2);
03607 cCorrectionFactorsSpect->cd(1);
03608 hAttenCorSpect->Draw();
03609 hAttenCorSpect->SetTitle("Correction Factors");
03610 hAttenCorCalor->GetXaxis()->SetTitle("Correction Factor");
03611 hAttenCorCalor->GetXaxis()->SetRangeUser(0.2,2.5);
03612 hTotalCorSpect->Draw("SAMES");
03613 hGainCorSpect->Draw("SAMES");
03614 hAttenGreenCorSpect->Draw("SAMES");
03615 cCorrectionFactorsSpect->cd(2);
03616 TH1F* hSpect=static_cast<TH1F*>(hTotalCorSpect->Clone());
03617 hSpect->Draw();
03618 hSpect->Rebin(4);
03619 hSpect->GetXaxis()->SetRangeUser(0.2,2.5);
03620 hSpect->SetLineStyle(1);
03621 hSpect->SetLineColor(2);
03622 hSpect->SetLineWidth(3);
03623 hStsCorSpect->Draw("SAMES");
03624 hStsCorSpect->Rebin(4);
03625 hStsCorSpect->GetXaxis()->SetRangeUser(0.2,2.5);
03626 hStsCorSpect->SetLineStyle(5);
03627 hStsCorSpect->SetLineWidth(3);
03628
03629
03630
03631
03632 TCanvas* cCorrectionFactorsVsStrip=new TCanvas
03633 ("cCorrectionFactorsVsStrip","cCorrectionFactorsVsStrip",
03634 0,0,1100,1000);
03635 cCorrectionFactorsVsStrip->SetFillColor(0);
03636 cCorrectionFactorsVsStrip->Divide(2,2);
03637 cCorrectionFactorsVsStrip->cd(1);
03638 pAttenGreenCorVsStrip->Draw();
03639 cCorrectionFactorsVsStrip->cd(2);
03640 pTotalCorVsStrip->Draw();
03641 cCorrectionFactorsVsStrip->cd(3);
03642 pGainCorVsStrip->Draw();
03643 cCorrectionFactorsVsStrip->cd(4);
03644 pAttenCorVsStrip->Draw();
03645
03646
03647 TCanvas* cCorrectionFactorsVsStripU=new TCanvas
03648 ("cCorrectionFactorsVsStripU","cCorrectionFactorsVsStripU",
03649 0,0,1100,1000);
03650 cCorrectionFactorsVsStripU->SetFillColor(0);
03651 cCorrectionFactorsVsStripU->Divide(2,2);
03652 cCorrectionFactorsVsStripU->cd(1);
03653 pAttenGreenCorVsStripU->Draw();
03654 pAttenGreenCorVsStripU->SetTitle("Green Atten. Cor. Factor (U Planes)");
03655 pAttenGreenCorVsStripU->SetMinimum(0.8);
03656 pAttenGreenCorVsStripU->SetMaximum(2.0);
03657 cCorrectionFactorsVsStripU->cd(2);
03658 pTotalCorVsStripU->Draw();
03659 pTotalCorVsStripU->SetTitle("Total Correction Factor (U Planes)");
03660 pTotalCorVsStripU->SetMinimum(0.8);
03661 pTotalCorVsStripU->SetMaximum(2.0);
03662 cCorrectionFactorsVsStripU->cd(3);
03663 pGainCorVsStripU->Draw();
03664 pGainCorVsStripU->SetTitle("Gain Correction Factor (U Planes)");
03665 pGainCorVsStripU->SetMinimum(0.8);
03666 pGainCorVsStripU->SetMaximum(2.0);
03667 cCorrectionFactorsVsStripU->cd(4);
03668 pAttenCorVsStripU->Draw();
03669 pAttenCorVsStripU->SetTitle("Clear Atten. Correction Factor (U Planes)");
03670 pAttenCorVsStripU->SetMinimum(0.8);
03671 pAttenCorVsStripU->SetMaximum(2.0);
03672
03673
03674
03675 TCanvas* cCorrectionFactorsVsStripV=new TCanvas
03676 ("cCorrectionFactorsVsStripV","cCorrectionFactorsVsStripV",
03677 0,0,1100,1000);
03678 cCorrectionFactorsVsStripV->SetFillColor(0);
03679 cCorrectionFactorsVsStripV->Divide(2,2);
03680 cCorrectionFactorsVsStripV->cd(1);
03681 pAttenGreenCorVsStripV->Draw();
03682 pAttenGreenCorVsStripV->SetTitle("Green Atten. Correction Factor (V Planes)");
03683 pAttenGreenCorVsStripV->SetMinimum(0.8);
03684 pAttenGreenCorVsStripV->SetMaximum(2.0);
03685 cCorrectionFactorsVsStripV->cd(2);
03686 pTotalCorVsStripV->Draw();
03687 pTotalCorVsStripV->SetTitle("Total Correction Factor (V Planes)");
03688 pTotalCorVsStripV->SetMinimum(0.8);
03689 pTotalCorVsStripV->SetMaximum(2.0);
03690 cCorrectionFactorsVsStripV->cd(3);
03691 pGainCorVsStripV->Draw();
03692 pGainCorVsStripV->SetTitle("Gain Correction Factor (V Planes)");
03693 pGainCorVsStripV->SetMinimum(0.8);
03694 pGainCorVsStripV->SetMaximum(2.0);
03695 cCorrectionFactorsVsStripV->cd(4);
03696 pAttenCorVsStripV->Draw();
03697 pAttenCorVsStripV->SetTitle("Clear Atten. Correction Factor (V Planes)");
03698 pAttenCorVsStripV->SetMinimum(0.8);
03699 pAttenCorVsStripV->SetMaximum(2.0);
03700
03701
03702
03703
03704 TCanvas* cClearFiber2=new TCanvas("cClearFiber2","cClearFiber2",
03705 0,0,1100,1000);
03706 cClearFiber2->SetFillColor(0);
03707 cClearFiber2->Divide(2,2);
03708 cClearFiber2->cd(1);
03709 TGraph* g=(TGraph*)gCfVsTAll->DrawClone("AP");
03710 g->SetTitle("Clear Fibre Lengths (U-View, FI & PI)");
03711 g->GetXaxis()->SetTitle("TPos (m)");
03712 g->GetXaxis()->CenterTitle();
03713 g->GetYaxis()->SetTitle("Clear fibre (m)");
03714 g->GetYaxis()->CenterTitle();
03715 gCfVsTUF->Draw("P");
03716 gCfVsTUP->Draw("P");
03717 gCfVsTUF->SetMarkerColor(2);
03718 cClearFiber2->cd(2);
03719 gCfVsTUP->Draw("AP");
03720 gCfVsTUP->SetTitle("Clear Fibre Lengths (U-View, PI)");
03721 gCfVsTUP->GetXaxis()->SetTitle("TPos (m)");
03722 gCfVsTUP->GetXaxis()->CenterTitle();
03723 gCfVsTUP->GetYaxis()->SetTitle("Clear fibre (m)");
03724 gCfVsTUP->GetYaxis()->CenterTitle();
03725 cClearFiber2->cd(3);
03726 g=(TGraph*)gCfVsTAll->DrawClone("AP");
03727 g->SetTitle("Clear Fibre Lengths (V-View, FI & PI)");
03728 g->GetXaxis()->SetTitle("TPos (m)");
03729 g->GetXaxis()->CenterTitle();
03730 g->GetYaxis()->SetTitle("Clear fibre (m)");
03731 g->GetYaxis()->CenterTitle();
03732 gCfVsTVF->Draw("P");
03733 gCfVsTVP->Draw("P");
03734 gCfVsTVF->SetMarkerColor(2);
03735 cClearFiber2->cd(4);
03736 gCfVsTVP->Draw("AP");
03737 gCfVsTVP->SetTitle("Clear Fibre Lengths (V-View, PI)");
03738 gCfVsTVP->GetXaxis()->SetTitle("TPos (m)");
03739 gCfVsTVP->GetXaxis()->CenterTitle();
03740 gCfVsTVP->GetYaxis()->SetTitle("Clear fibre (m)");
03741 gCfVsTVP->GetYaxis()->CenterTitle();
03742
03743
03744 TCanvas* cPigtails2=new TCanvas("cPigtails2","cPigtails2",
03745 0,0,1100,1000);
03746 cPigtails2->SetFillColor(0);
03747 cPigtails2->Divide(2,2);
03748 cPigtails2->cd(1);
03749 g=(TGraph*)gPtVsTAll->DrawClone("AP");
03750 g->SetTitle("Pigtail Lengths (U-View, FI & PI)");
03751 g->GetXaxis()->SetTitle("TPos (m)");
03752 g->GetXaxis()->CenterTitle();
03753 g->GetYaxis()->SetTitle("Pigtail (m)");
03754 g->GetYaxis()->CenterTitle();
03755 gPtVsTUF->Draw("P");
03756 gPtVsTUP->Draw("P");
03757 gPtVsTUF->SetMarkerColor(2);
03758 cPigtails2->cd(2);
03759 gPtVsTUP->Draw("AP");
03760 gPtVsTUP->SetTitle("Pigtail Lengths (U-View, PI)");
03761 gPtVsTUP->GetXaxis()->SetTitle("TPos (m)");
03762 gPtVsTUP->GetXaxis()->CenterTitle();
03763 gPtVsTUP->GetYaxis()->SetTitle("Pigtail (m)");
03764 gPtVsTUP->GetYaxis()->CenterTitle();
03765 cPigtails2->cd(3);
03766 g=(TGraph*)gPtVsTAll->DrawClone("AP");
03767 g->SetTitle("Pigtail Lengths (V-View, FI & PI)");
03768 g->GetXaxis()->SetTitle("TPos (m)");
03769 g->GetXaxis()->CenterTitle();
03770 g->GetYaxis()->SetTitle("Pigtail (m)");
03771 g->GetYaxis()->CenterTitle();
03772 gPtVsTVF->Draw("P");
03773 gPtVsTVP->Draw("P");
03774 gPtVsTVF->SetMarkerColor(2);
03775 cPigtails2->cd(4);
03776 gPtVsTVP->Draw("AP");
03777 gPtVsTVP->SetTitle("Pigtail Lengths (V-View, PI)");
03778 gPtVsTVP->GetXaxis()->SetTitle("TPos (m)");
03779 gPtVsTVP->GetXaxis()->CenterTitle();
03780 gPtVsTVP->GetYaxis()->SetTitle("Pigtail (m)");
03781 gPtVsTVP->GetYaxis()->CenterTitle();
03782
03783
03784 TCanvas* cHalfLengths2=new TCanvas("cHalfLengths2","cHalfLengths2",
03785 0,0,1100,1000);
03786 cHalfLengths2->SetFillColor(0);
03787 cHalfLengths2->Divide(2,2);
03788 cHalfLengths2->cd(1);
03789 g=(TGraph*)gHlVsTAll->DrawClone("AP");
03790 g->SetTitle("Half Lengths (U-View, FI & PI)");
03791 g->GetXaxis()->SetTitle("TPos (m)");
03792 g->GetXaxis()->CenterTitle();
03793 g->GetYaxis()->SetTitle("Half Lengths (m)");
03794 g->GetYaxis()->CenterTitle();
03795 gHlVsTUF->Draw("P");
03796 gHlVsTUP->Draw("P");
03797 gHlVsTUF->SetMarkerColor(2);
03798 cHalfLengths2->cd(2);
03799 gHlVsTUP->Draw("AP");
03800 gHlVsTUP->SetTitle("Half Lengths (U-View, PI)");
03801 gHlVsTUP->GetXaxis()->SetTitle("TPos (m)");
03802 gHlVsTUP->GetXaxis()->CenterTitle();
03803 gHlVsTUP->GetYaxis()->SetTitle("Half Lengths (m)");
03804 gHlVsTUP->GetYaxis()->CenterTitle();
03805 cHalfLengths2->cd(3);
03806 g=(TGraph*)gHlVsTAll->DrawClone("AP");
03807 g->SetTitle("Half Lengths (V-View, FI & PI)");
03808 g->GetXaxis()->SetTitle("TPos (m)");
03809 g->GetXaxis()->CenterTitle();
03810 g->GetYaxis()->SetTitle("Half Lengths (m)");
03811 g->GetYaxis()->CenterTitle();
03812 gHlVsTVF->Draw("P");
03813 gHlVsTVP->Draw("P");
03814 gHlVsTVF->SetMarkerColor(2);
03815 cHalfLengths2->cd(4);
03816 gHlVsTVP->Draw("AP");
03817 gHlVsTVP->SetTitle("Half Lengths (V-View, PI)");
03818 gHlVsTVP->GetXaxis()->SetTitle("TPos (m)");
03819 gHlVsTVP->GetXaxis()->CenterTitle();
03820 gHlVsTVP->GetYaxis()->SetTitle("Half Lengths (m)");
03821 gHlVsTVP->GetYaxis()->CenterTitle();
03822
03823
03824
03825 TPolyLine* oU;
03826 TPolyLine* iU;
03827 TPolyLine* oFU;
03828 TPolyLine* iFU;
03829 TPolyLine* oV;
03830 TPolyLine* iV;
03831 TPolyLine* oFV;
03832 TPolyLine* iFV;
03833 PlaneOutline po;
03834 po.GetOutline(PlaneView::kU,PlaneCoverage::kNearPartial,
03835 oU,iU);
03836 po.GetOutline(PlaneView::kU,PlaneCoverage::kNearFull,
03837 oFU,iFU);
03838 po.GetOutline(PlaneView::kV,PlaneCoverage::kNearPartial,
03839 oV,iV);
03840 po.GetOutline(PlaneView::kV,PlaneCoverage::kNearFull,
03841 oFV,iFV);
03842
03843 oV->SetLineColor(14);
03844 oV->SetLineWidth(2);
03845 oU->SetLineWidth(2);
03846
03847 oFV->SetLineColor(2);
03848 iFV->SetLineColor(2);
03849 oFV->SetLineStyle(2);
03850 iFV->SetLineStyle(2);
03851
03852 oFU->SetLineColor(2);
03853 iFU->SetLineColor(2);
03854 oFU->SetLineStyle(3);
03855 iFU->SetLineStyle(3);
03856
03857 Int_t lineWidth=5;
03858 TGraph* readoutU2=new TGraph(3);
03859 readoutU2->SetLineWidth(lineWidth);
03860 readoutU2->SetLineColor(6);
03861 readoutU2->SetPoint(0,2.87,0.83);
03862 readoutU2->SetPoint(1,2.87,-0.82);
03863 readoutU2->SetPoint(2,1.7,-2.0);
03864
03865 TGraph* readoutV2=new TGraph(3);
03866 readoutV2->SetLineWidth(lineWidth);
03867 readoutV2->SetLineColor(6);
03868 readoutV2->SetPoint(0,2.87,-0.82);
03869 readoutV2->SetPoint(1,2.87,0.83);
03870 readoutV2->SetPoint(2,1.68,2.0);
03871
03872 TGraph* uStrip=new TGraph(2);
03873 uStrip->SetLineWidth(2);
03874 uStrip->SetPoint(0,2.87,-0.83);
03875 uStrip->SetPoint(1,0.86,1.23);
03876
03877 TGraph* vStrip=new TGraph(2);
03878 vStrip->SetLineWidth(2);
03879 vStrip->SetPoint(1,2.87,0.83);
03880 vStrip->SetPoint(0,0.86,-1.23);
03881
03882 TCanvas* cCentres=new TCanvas("cCentres","cCentres",
03883 0,0,1100,1000);
03884 cCentres->SetFillColor(0);
03885 cCentres->Divide(2,2);
03886 cCentres->cd(1);
03887 g=(TGraph*)gCentreAll->DrawClone("AP");
03888 g->SetTitle("Strip Centres (U-View, FI & PI)");
03889 g->GetXaxis()->SetTitle("X (m)");
03890 g->GetXaxis()->CenterTitle();
03891 g->GetYaxis()->SetTitle("Y (m)");
03892 g->GetYaxis()->CenterTitle();
03893 gCentreUF->Draw("P");
03894 gCentreUP->Draw("P");
03895 gCentreUF->SetMarkerColor(2);
03896
03897 oU->Draw();
03898 oFU->Draw();
03899 iFU->Draw();
03900 oV->Draw();
03901 oFV->Draw();
03902 iFV->Draw();
03903 readoutU2->Draw();
03904 uStrip->Draw();
03905 cCentres->cd(2);
03906 gCentreUP->Draw("AP");
03907 gCentreUP->SetTitle("Strip Centres (U-View, PI)");
03908 gCentreUP->GetXaxis()->SetTitle("X (m)");
03909 gCentreUP->GetXaxis()->CenterTitle();
03910 gCentreUP->GetYaxis()->SetTitle("Y (m)");
03911 gCentreUP->GetYaxis()->CenterTitle();
03912 cCentres->cd(3);
03913 g=(TGraph*)gCentreAll->DrawClone("AP");
03914 g->SetTitle("Strip Centres (V-View, FI & PI)");
03915 g->GetXaxis()->SetTitle("X (m)");
03916 g->GetXaxis()->CenterTitle();
03917 g->GetYaxis()->SetTitle("Y (m)");
03918 g->GetYaxis()->CenterTitle();
03919 gCentreVF->Draw("P");
03920 gCentreVP->Draw("P");
03921 gCentreVF->SetMarkerColor(2);
03922 oU->Draw();
03923 oFU->Draw();
03924 iFU->Draw();
03925 oV->Draw();
03926 oFV->Draw();
03927 iFV->Draw();
03928 readoutV2->Draw();
03929 vStrip->Draw();
03930 cCentres->cd(4);
03931 gCentreVP->Draw("AP");
03932 gCentreVP->SetTitle("Strip Centres (V-View, PI)");
03933 gCentreVP->GetXaxis()->SetTitle("X (m)");
03934 gCentreVP->GetXaxis()->CenterTitle();
03935 gCentreVP->GetYaxis()->SetTitle("Y (m)");
03936 gCentreVP->GetYaxis()->CenterTitle();
03937
03938
03939
03940 Float_t min2=0;
03941 Float_t max2=7;
03942 Bool_t doFit=false;
03943 TCanvas* cClearFiber=new TCanvas("cClearFiber","cClearFiber",
03944 0,0,1100,1000);
03945 cClearFiber->SetFillColor(0);
03946 cClearFiber->Divide(2,2);
03947 cClearFiber->cd(1);
03948 pCfVsTU1->Draw("rms");
03949 pCfVsTU1->SetTitle("ClearFiber vs TPos (U-View, East side)");
03950 pCfVsTU1->GetXaxis()->SetTitle("TPos (m)");
03951 pCfVsTU1->GetXaxis()->CenterTitle();
03952 pCfVsTU1->GetYaxis()->SetTitle("ClearFiber (m)");
03953 pCfVsTU1->GetYaxis()->CenterTitle();
03954
03955 if (doFit) pCfVsTU1->Fit("pol1");
03956 pCfVsTU1->SetMinimum(min2);
03957 pCfVsTU1->SetMaximum(max2);
03958 cClearFiber->cd(2);
03959 pCfVsTU2->Draw("rms");
03960 pCfVsTU2->SetTitle("ClearFiber vs TPos (U-View, West side)");
03961 pCfVsTU2->GetXaxis()->SetTitle("TPos (m)");
03962 pCfVsTU2->GetXaxis()->CenterTitle();
03963 pCfVsTU2->GetYaxis()->SetTitle("ClearFiber (m)");
03964 pCfVsTU2->GetYaxis()->CenterTitle();
03965
03966 if (doFit) pCfVsTU2->Fit("pol1");
03967 pCfVsTU2->SetMinimum(min2);
03968 pCfVsTU2->SetMaximum(max2);
03969 cClearFiber->cd(3);
03970 pCfVsTV1->Draw("rms");
03971 pCfVsTV1->SetTitle("ClearFiber vs TPos (V-View, East side)");
03972 pCfVsTV1->GetXaxis()->SetTitle("TPos (m)");
03973 pCfVsTV1->GetXaxis()->CenterTitle();
03974 pCfVsTV1->GetYaxis()->SetTitle("ClearFiber (m)");
03975 pCfVsTV1->GetYaxis()->CenterTitle();
03976
03977 if (doFit) pCfVsTV1->Fit("pol1");
03978 pCfVsTV1->SetMinimum(min2);
03979 pCfVsTV1->SetMaximum(max2);
03980 cClearFiber->cd(4);
03981 pCfVsTV2->Draw("rms");
03982 pCfVsTV2->SetTitle("ClearFiber vs TPos (V-View, West side)");
03983 pCfVsTV2->GetXaxis()->SetTitle("TPos (m)");
03984 pCfVsTV2->GetXaxis()->CenterTitle();
03985 pCfVsTV2->GetYaxis()->SetTitle("ClearFiber (m)");
03986 pCfVsTV2->GetYaxis()->CenterTitle();
03987
03988 if (doFit) pCfVsTV2->Fit("pol1");
03989 pCfVsTV2->SetMinimum(min2);
03990 pCfVsTV2->SetMaximum(max2);
03991
03992
03993 TCanvas* cPigtails=new TCanvas("cPigtails","cPigtails",
03994 0,0,1100,1000);
03995 cPigtails->SetFillColor(0);
03996 cPigtails->Divide(2,2);
03997 cPigtails->cd(1);
03998 pPtVsTU1->Draw("rms");
03999 pPtVsTU1->SetTitle("Pigtail vs TPos (U-View, East side)");
04000 pPtVsTU1->GetXaxis()->SetTitle("TPos (m)");
04001 pPtVsTU1->GetXaxis()->CenterTitle();
04002 pPtVsTU1->GetYaxis()->SetTitle("Pigtail (m)");
04003 pPtVsTU1->GetYaxis()->CenterTitle();
04004
04005 if (doFit) pPtVsTU1->Fit("pol1");
04006
04007
04008 cPigtails->cd(2);
04009 pPtVsTU2->Draw("rms");
04010 pPtVsTU2->SetTitle("Pigtail vs TPos (U-View, West side)");
04011 pPtVsTU2->GetXaxis()->SetTitle("TPos (m)");
04012 pPtVsTU2->GetXaxis()->CenterTitle();
04013 pPtVsTU2->GetYaxis()->SetTitle("Pigtail (m)");
04014 pPtVsTU2->GetYaxis()->CenterTitle();
04015
04016 if (doFit) pPtVsTU2->Fit("pol1");
04017
04018
04019 cPigtails->cd(3);
04020 pPtVsTV1->Draw("rms");
04021 pPtVsTV1->SetTitle("Pigtail vs TPos (V-View, East side)");
04022 pPtVsTV1->GetXaxis()->SetTitle("TPos (m)");
04023 pPtVsTV1->GetXaxis()->CenterTitle();
04024 pPtVsTV1->GetYaxis()->SetTitle("Pigtail (m)");
04025 pPtVsTV1->GetYaxis()->CenterTitle();
04026
04027 if (doFit) pPtVsTV1->Fit("pol1");
04028
04029
04030 cPigtails->cd(4);
04031 pPtVsTV2->Draw("rms");
04032 pPtVsTV2->SetTitle("Pigtail vs TPos (V-View, West side)");
04033 pPtVsTV2->GetXaxis()->SetTitle("TPos (m)");
04034 pPtVsTV2->GetXaxis()->CenterTitle();
04035 pPtVsTV2->GetYaxis()->SetTitle("Pigtail (m)");
04036 pPtVsTV2->GetYaxis()->CenterTitle();
04037
04038 if (doFit) pPtVsTV2->Fit("pol1");
04039
04040
04041
04042
04043 TCanvas* cHalfLength=new TCanvas("cHalfLength","cHalfLength",
04044 0,0,1100,1000);
04045 cHalfLength->SetFillColor(0);
04046 cHalfLength->Divide(2,2);
04047 cHalfLength->cd(1);
04048 pHlVsTU1->Draw("rms");
04049 pHlVsTU1->SetTitle("HalfLength vs TPos (U-View, East side)");
04050 pHlVsTU1->GetXaxis()->SetTitle("TPos (m)");
04051 pHlVsTU1->GetXaxis()->CenterTitle();
04052 pHlVsTU1->GetYaxis()->SetTitle("HalfLength (m)");
04053 pHlVsTU1->GetYaxis()->CenterTitle();
04054
04055 if (doFit) pHlVsTU1->Fit("pol1");
04056
04057
04058 cHalfLength->cd(2);
04059 pHlVsTU2->Draw("rms");
04060 pHlVsTU2->SetTitle("HalfLength vs TPos (U-View, West side)");
04061 pHlVsTU2->GetXaxis()->SetTitle("TPos (m)");
04062 pHlVsTU2->GetXaxis()->CenterTitle();
04063 pHlVsTU2->GetYaxis()->SetTitle("HalfLength (m)");
04064 pHlVsTU2->GetYaxis()->CenterTitle();
04065
04066 if (doFit) pHlVsTU2->Fit("pol1");
04067
04068
04069 cHalfLength->cd(3);
04070 pHlVsTV1->Draw("rms");
04071 pHlVsTV1->SetTitle("HalfLength vs TPos (V-View, East side)");
04072 pHlVsTV1->GetXaxis()->SetTitle("TPos (m)");
04073 pHlVsTV1->GetXaxis()->CenterTitle();
04074 pHlVsTV1->GetYaxis()->SetTitle("HalfLength (m)");
04075 pHlVsTV1->GetYaxis()->CenterTitle();
04076
04077 if (doFit) pHlVsTV1->Fit("pol1");
04078
04079
04080 cHalfLength->cd(4);
04081 pHlVsTV2->Draw("rms");
04082 pHlVsTV2->SetTitle("HalfLength vs TPos (V-View, West side)");
04083 pHlVsTV2->GetXaxis()->SetTitle("TPos (m)");
04084 pHlVsTV2->GetXaxis()->CenterTitle();
04085 pHlVsTV2->GetYaxis()->SetTitle("HalfLength (m)");
04086 pHlVsTV2->GetYaxis()->CenterTitle();
04087
04088 if (doFit) pHlVsTV2->Fit("pol1");
04089
04090
04091
04092
04093 gPad->SetBorderMode(0);
04094
04095 cout<<"End of macro"<<endl;
04096 }
04097
04098
04099
04100 void MeuPlots::MakeValidationPlots()
04101 {
04102 MSG("MeuPlots",Msg::kInfo)
04103 <<" ** Running MakeValidationPlots method... **"<<endl;
04104
04105
04106 fOutFile=this->OpenFile(fRunNumber,"MeuPlots");
04107
04108
04109 TH1F* hDetector=new TH1F("hDetector","hDetector",40,-20,20);
04110 TH1F* hSimFlag=new TH1F("hSimFlag","hSimFlag",40,-20,20);
04111
04112 TH1F* hCrateMask = new TH1F("hCrateMask","hCrateMask",18,-1,17);
04113 TH1F* hBusyChips = new TH1F("hBusyChips","hBusyChips",51,-1,50);
04114 TH1F* hColdChips = new TH1F("hColdChips","hColdChips",21,-1,20);
04115 TH1F* hDataQuality = new TH1F("hDataQuality","hDataQuality",3,-1,2);
04116
04117 TH1F* hGeVPerMeu=new TH1F("hGeVPerMeu","hGeVPerMeu",3000,-0.001,0.3);
04118 hGeVPerMeu->SetFillColor(0);
04119 hGeVPerMeu->SetTitle("GeV/MEU");
04120 hGeVPerMeu->GetXaxis()->SetTitle("GeV/MEU");
04121 hGeVPerMeu->GetXaxis()->CenterTitle();
04122
04123
04124 TH1F* hSigMap=new TH1F("hSigMap","hSigMap",3001,-1,3000);
04125 hSigMap->SetFillColor(0);
04126 hSigMap->SetTitle("MEU in SigMap Units");
04127 hSigMap->GetXaxis()->SetTitle("MEU");
04128 hSigMap->GetXaxis()->CenterTitle();
04129
04130 TH1F* hSigMapNoThresh=new TH1F("hSigMapNoThresh","hSigMapNoThresh",
04131 50032,-32,50000);
04132 hSigMapNoThresh->SetFillColor(0);
04133 hSigMapNoThresh->SetTitle("MEU in SigMap Units (High Thresh.)");
04134 hSigMapNoThresh->GetXaxis()->SetTitle("MEU");
04135 hSigMapNoThresh->GetXaxis()->CenterTitle();
04136
04137 TH1F* hSigMapDriftX=new TH1F("hSigMapDriftX","hSigMapDriftX",
04138 3001,-1,3000);
04139 hSigMapDriftX->SetFillColor(0);
04140 hSigMapDriftX->SetTitle("MEU in SigMap Units (w/ Drift Fudge)");
04141 hSigMapDriftX->GetXaxis()->SetTitle("MEU");
04142 hSigMapDriftX->GetXaxis()->CenterTitle();
04143
04144 TH1F* hSigMapWinCor=new TH1F("hSigMapWinCor","hSigMapWinCor",
04145 3001,-1,3000);
04146 hSigMapWinCor->SetFillColor(0);
04147 hSigMapWinCor->SetTitle("MEU in SigMap Units");
04148 hSigMapWinCor->GetXaxis()->SetTitle("MEU");
04149 hSigMapWinCor->GetXaxis()->CenterTitle();
04150
04151 TH1F* hSigMapMuPlus=new TH1F("hSigMapMuPlus","hSigMapMuPlus",3001,-1,3000);
04152 hSigMapMuPlus->SetFillColor(0);
04153 hSigMapMuPlus->SetTitle("MEU in SigMap Units");
04154 hSigMapMuPlus->GetXaxis()->SetTitle("MEU");
04155 hSigMapMuPlus->GetXaxis()->CenterTitle();
04156
04157 TH1F* hSigMapMuMinus=new TH1F("hSigMapMuMinus","hSigMapMuMinus",
04158 3001,-1,3000);
04159 hSigMapMuMinus->SetFillColor(0);
04160 hSigMapMuMinus->SetTitle("MEU in SigMap Units");
04161 hSigMapMuMinus->GetXaxis()->SetTitle("MEU");
04162 hSigMapMuMinus->GetXaxis()->CenterTitle();
04163
04164
04165 TH1F* hSigMapU1=new TH1F("hSigMapU1","hSigMapU1",3001,-1,3000);
04166 hSigMapU1->SetFillColor(0);
04167 hSigMapU1->SetTitle("MEU in SigMap Units");
04168 hSigMapU1->GetXaxis()->SetTitle("MEU");
04169 hSigMapU1->GetXaxis()->CenterTitle();
04170
04171 TH1F* hSigMapU2=new TH1F("hSigMapU2","hSigMapU2",3001,-1,3000);
04172 hSigMapU2->SetFillColor(0);
04173 hSigMapU2->SetTitle("MEU in SigMap Units");
04174 hSigMapU2->GetXaxis()->SetTitle("MEU");
04175 hSigMapU2->GetXaxis()->CenterTitle();
04176
04177 TH1F* hSigMapV1=new TH1F("hSigMapV1","hSigMapV1",3001,-1,3000);
04178 hSigMapV1->SetFillColor(0);
04179 hSigMapV1->SetTitle("MEU in SigMap Units");
04180 hSigMapV1->GetXaxis()->SetTitle("MEU");
04181 hSigMapV1->GetXaxis()->CenterTitle();
04182
04183 TH1F* hSigMapV2=new TH1F("hSigMapV2","hSigMapV2",3001,-1,3000);
04184 hSigMapV2->SetFillColor(0);
04185 hSigMapV2->SetTitle("MEU in SigMap Units");
04186 hSigMapV2->GetXaxis()->SetTitle("MEU");
04187 hSigMapV2->GetXaxis()->CenterTitle();
04188
04189
04190
04191 TH1F* hSigMapSM1U1=new TH1F("hSigMapSM1U1","hSigMapSM1U1",3001,-1,3000);
04192 hSigMapSM1U1->SetFillColor(0);
04193 hSigMapSM1U1->SetTitle("MEU in SigMap Units");
04194 hSigMapSM1U1->GetXaxis()->SetTitle("MEU");
04195 hSigMapSM1U1->GetXaxis()->CenterTitle();
04196
04197 TH1F* hSigMapSM1U2=new TH1F("hSigMapSM1U2","hSigMapSM1U2",3001,-1,3000);
04198 hSigMapSM1U2->SetFillColor(0);
04199 hSigMapSM1U2->SetTitle("MEU in SigMap Units");
04200 hSigMapSM1U2->GetXaxis()->SetTitle("MEU");
04201 hSigMapSM1U2->GetXaxis()->CenterTitle();
04202
04203 TH1F* hSigMapSM1V1=new TH1F("hSigMapSM1V1","hSigMapSM1V1",3001,-1,3000);
04204 hSigMapSM1V1->SetFillColor(0);
04205 hSigMapSM1V1->SetTitle("MEU in SigMap Units");
04206 hSigMapSM1V1->GetXaxis()->SetTitle("MEU");
04207 hSigMapSM1V1->GetXaxis()->CenterTitle();
04208
04209 TH1F* hSigMapSM1V2=new TH1F("hSigMapSM1V2","hSigMapSM1V2",3001,-1,3000);
04210 hSigMapSM1V2->SetFillColor(0);
04211 hSigMapSM1V2->SetTitle("MEU in SigMap Units");
04212 hSigMapSM1V2->GetXaxis()->SetTitle("MEU");
04213 hSigMapSM1V2->GetXaxis()->CenterTitle();
04214
04215
04216 TH1F* hSigMapSM2U1=new TH1F("hSigMapSM2U1","hSigMapSM2U1",3001,-1,3000);
04217 hSigMapSM2U1->SetFillColor(0);
04218 hSigMapSM2U1->SetTitle("MEU in SigMap Units");
04219 hSigMapSM2U1->GetXaxis()->SetTitle("MEU");
04220 hSigMapSM2U1->GetXaxis()->CenterTitle();
04221
04222 TH1F* hSigMapSM2U2=new TH1F("hSigMapSM2U2","hSigMapSM2U2",3001,-1,3000);
04223 hSigMapSM2U2->SetFillColor(0);
04224 hSigMapSM2U2->SetTitle("MEU in SigMap Units");
04225 hSigMapSM2U2->GetXaxis()->SetTitle("MEU");
04226 hSigMapSM2U2->GetXaxis()->CenterTitle();
04227
04228 TH1F* hSigMapSM2V1=new TH1F("hSigMapSM2V1","hSigMapSM2V1",3001,-1,3000);
04229 hSigMapSM2V1->SetFillColor(0);
04230 hSigMapSM2V1->SetTitle("MEU in SigMap Units");
04231 hSigMapSM2V1->GetXaxis()->SetTitle("MEU");
04232 hSigMapSM2V1->GetXaxis()->CenterTitle();
04233
04234 TH1F* hSigMapSM2V2=new TH1F("hSigMapSM2V2","hSigMapSM2V2",3001,-1,3000);
04235 hSigMapSM2V2->SetFillColor(0);
04236 hSigMapSM2V2->SetTitle("MEU in SigMap Units");
04237 hSigMapSM2V2->GetXaxis()->SetTitle("MEU");
04238 hSigMapSM2V2->GetXaxis()->CenterTitle();
04239
04240
04241 TH1F* hSigMapSM1=new TH1F("hSigMapSM1","hSigMapSM1",3001,-1,3000);
04242 hSigMapSM1->SetFillColor(0);
04243 hSigMapSM1->SetTitle("MEU in SigMap Units");
04244 hSigMapSM1->GetXaxis()->SetTitle("MEU");
04245 hSigMapSM1->GetXaxis()->CenterTitle();
04246
04247 TH1F* hSigMapSM2=new TH1F("hSigMapSM2","hSigMapSM2",3001,-1,3000);
04248 hSigMapSM2->SetFillColor(0);
04249 hSigMapSM2->SetTitle("MEU in SigMap Units");
04250 hSigMapSM2->GetXaxis()->SetTitle("MEU");
04251 hSigMapSM2->GetXaxis()->CenterTitle();
04252
04253
04254 TH1F* hSigMapForw=new TH1F("hSigMapForw","hSigMapForw",3001,-1,3000);
04255 hSigMapForw->SetFillColor(0);
04256 hSigMapForw->SetTitle("MEU in SigMap Units (Forward Going)");
04257 hSigMapForw->GetXaxis()->SetTitle("MEU");
04258 hSigMapForw->GetXaxis()->CenterTitle();
04259
04260 TH1F* hSigMapBack=new TH1F("hSigMapBack","hSigMapBack",3001,-1,3000);
04261 hSigMapBack->SetFillColor(0);
04262 hSigMapBack->SetTitle("MEU in SigMap Units (Backward Going)");
04263 hSigMapBack->GetXaxis()->SetTitle("MEU");
04264 hSigMapBack->GetXaxis()->CenterTitle();
04265
04266
04267 TH1F* hSigMapBForw=new TH1F("hSigMapBForw","hSigMapBForw",
04268 3001,-1,3000);
04269 hSigMapBForw->SetFillColor(0);
04270 hSigMapBForw->SetTitle("MEU in SigMap Units (Forward Going)");
04271 hSigMapBForw->GetXaxis()->SetTitle("MEU");
04272 hSigMapBForw->GetXaxis()->CenterTitle();
04273
04274 TH1F* hSigMapBBack=new TH1F("hSigMapBBack","hSigMapBBack",
04275 3001,-1,3000);
04276 hSigMapBBack->SetFillColor(0);
04277 hSigMapBBack->SetTitle("MEU in SigMap Units (Backward Going)");
04278 hSigMapBBack->GetXaxis()->SetTitle("MEU");
04279 hSigMapBBack->GetXaxis()->CenterTitle();
04280
04281 TH1F* hSigMapAll=new TH1F("hSigMapAll","hSigMapAll",20000,-1,20000);
04282 hSigMapAll->SetFillColor(0);
04283 hSigMapAll->SetTitle("MEU in SigMap Units");
04284 hSigMapAll->GetXaxis()->SetTitle("MEU");
04285 hSigMapAll->GetXaxis()->CenterTitle();
04286 hSigMapAll->SetBit(TH1::kCanRebin);
04287
04288 TH1F* hAvNumDigits=new TH1F("hAvNumDigits","hAvNumDigits",
04289 300,-1,30);
04290 hAvNumDigits->SetFillColor(0);
04291 hAvNumDigits->SetTitle("Av. Num. Digits");
04292 hAvNumDigits->GetXaxis()->SetTitle("Av. Num. Digits");
04293 hAvNumDigits->GetXaxis()->CenterTitle();
04294
04295
04296
04297 TH1F* hAvNumDigitsAll=new TH1F("hAvNumDigitsAll","hAvNumDigitsAll",
04298 3000,-1,300);
04299 hAvNumDigitsAll->SetFillColor(0);
04300 hAvNumDigitsAll->SetTitle("Av. Num. Digits");
04301 hAvNumDigitsAll->GetXaxis()->SetTitle("Av. Num. Digits");
04302 hAvNumDigitsAll->GetXaxis()->CenterTitle();
04303
04304 TH1F* hAvNumStrips=new TH1F("hAvNumStrips","hAvNumStrips",
04305 300,-1,30);
04306 hAvNumStrips->SetFillColor(0);
04307 hAvNumStrips->SetTitle("Av. Num. Strips");
04308 hAvNumStrips->GetXaxis()->SetTitle("Av. Num. Strips");
04309 hAvNumStrips->GetXaxis()->CenterTitle();
04310
04311 TH1F* hAvNumStripsAll=new TH1F("hAvNumStripsAll","hAvNumStripsAll",
04312 3000,-1,300);
04313 hAvNumStripsAll->SetFillColor(0);
04314 hAvNumStripsAll->SetTitle("Av. Num. Strips");
04315 hAvNumStripsAll->GetXaxis()->SetTitle("Av. Num. Strips");
04316 hAvNumStripsAll->GetXaxis()->CenterTitle();
04317
04318 TH1F* hAdc=new TH1F("hAdc","hAdc",3001,-1,3000);
04319 hAdc->SetFillColor(0);
04320 hAdc->SetTitle("MEU in ADCs");
04321 hAdc->GetXaxis()->SetTitle("ADC");
04322 hAdc->GetXaxis()->CenterTitle();
04323
04324 TH1F* hPe=new TH1F("hPe","hPe",500,-1,50);
04325 hPe->SetFillColor(0);
04326 hPe->SetTitle("MEU in PEs");
04327 hPe->GetXaxis()->SetTitle("PE");
04328 hPe->GetXaxis()->CenterTitle();
04329
04330 TH1F* hPeRaw=new TH1F("hPeRaw","hPeRaw",500,-1,50);
04331 hPeRaw->SetFillColor(0);
04332 hPeRaw->SetTitle("MEU in Raw PEs (not path corr.)");
04333 hPeRaw->GetXaxis()->SetTitle("PE");
04334 hPeRaw->GetXaxis()->CenterTitle();
04335
04336 TH1F* hSigLin=new TH1F("hSigLin","hSigLin",3001,-1,3000);
04337 hSigLin->SetFillColor(0);
04338 hSigLin->SetTitle("MEU in SigLins");
04339 hSigLin->GetXaxis()->SetTitle("SigLin");
04340 hSigLin->GetXaxis()->CenterTitle();
04341
04342 TH1F* hSigCor=new TH1F("hSigCor","hSigCor",3001,-1,3000);
04343 hSigCor->SetFillColor(0);
04344 hSigCor->SetTitle("MEU in SigCors");
04345 hSigCor->GetXaxis()->SetTitle("SigCor");
04346 hSigCor->GetXaxis()->CenterTitle();
04347
04348
04349
04350 TH1F* hSigDrf=new TH1F("hSigDrf","hSigDrf",3001,-1,3000);
04351 hSigDrf->SetFillColor(0);
04352 hSigDrf->SetTitle("MEU in SigDrfs");
04353 hSigDrf->GetXaxis()->SetTitle("SigDrf");
04354 hSigDrf->GetXaxis()->CenterTitle();
04355
04356 TH1F* hSigLinOnly=new TH1F("hSigLinOnly","hSigLinOnly",3001,-1,3000);
04357 hSigLinOnly->SetFillColor(0);
04358 hSigLinOnly->SetTitle("MEU in SigLin (no drift)");
04359 hSigLinOnly->GetXaxis()->SetTitle("SigLinOnly");
04360 hSigLinOnly->GetXaxis()->CenterTitle();
04361
04362 TH1F* hSigDrfWin=new TH1F("hSigDrfWin","hSigDrfWin",3001,-1,3000);
04363 hSigDrfWin->SetFillColor(0);
04364 hSigDrfWin->SetTitle("MEU in SigDrfs");
04365 hSigDrfWin->GetXaxis()->SetTitle("SigDrf");
04366 hSigDrfWin->GetXaxis()->CenterTitle();
04367
04368 TH1F* hSigLinOnlyWin=new TH1F("hSigLinOnlyWin","hSigLinOnlyWin",
04369 3001,-1,3000);
04370 hSigLinOnlyWin->SetFillColor(0);
04371 hSigLinOnlyWin->SetTitle("MEU in SigLin (no drift)");
04372 hSigLinOnlyWin->GetXaxis()->SetTitle("SigLinOnly");
04373 hSigLinOnlyWin->GetXaxis()->CenterTitle();
04374
04375
04376
04377 TH1F* hMatTrav=new TH1F("hMatTrav","hMatTrav",1000,0,10);
04378 hMatTrav->SetFillColor(0);
04379 hMatTrav->SetTitle("Distance Travelled by Muon");
04380 hMatTrav->GetXaxis()->SetTitle("Distance (m)");
04381 hMatTrav->GetXaxis()->CenterTitle();
04382
04383
04384 TH1F* hHighEn=new TH1F("hHighEn","hHighEn",10000,0,500);
04385 hHighEn->SetFillColor(0);
04386 hHighEn->SetTitle("Highest Muon Energy in Scintillator");
04387 hHighEn->GetXaxis()->SetTitle("Muon Energy (GeV)");
04388 hHighEn->GetXaxis()->CenterTitle();
04389 hHighEn->SetBit(TH1::kCanRebin);
04390
04391 TH1F* hLowEn=new TH1F("hLowEn","hLowEn",50000,0,500);
04392 hLowEn->SetFillColor(0);
04393 hLowEn->SetTitle("Lowest Muon Energy in Scintillator");
04394 hLowEn->GetXaxis()->SetTitle("Muon Energy (GeV)");
04395 hLowEn->GetXaxis()->CenterTitle();
04396 hLowEn->SetBit(TH1::kCanRebin);
04397
04398 TProfile* pLowEnVsCosThZ=new TProfile("pLowEnVsCosThZ",
04399 "pLowEnVsCosThZ",40,-1,1);
04400 TProfile* pLowEnVsX=new TProfile("pLowEnVsX","pLowEnVsX",40,-4,4);
04401 TProfile* pLowEnVsY=new TProfile("pLowEnVsY","pLowEnVsY",40,-4,4);
04402
04403 TH2F* hLowEnVsX=new TH2F("hLowEnVsX","hLowEnVsX",40,-4,4,120,0.1,1);
04404 TH2F* hLowEnVsY=new TH2F("hLowEnVsY","hLowEnVsY",40,-4,4,120,0.1,1);
04405
04406 map<Int_t,TH1F*> meuCosTh;
04407 for (Int_t i=0;i<20;i++){
04408 string sName="hMeuCosTh";
04409 string sNum=Form("%d",i);
04410 sName+=sNum;
04411 meuCosTh[i]=new TH1F(sName.c_str(),sName.c_str(),5000,0,5000);
04412 }
04413
04414 TH1F* hCosThZ=new TH1F("hCosThZ","hCosThZ",20,-1,1);
04415 hCosThZ->SetFillColor(0);
04416 hCosThZ->SetTitle("Distribution of Cos(#theta_{z})");
04417 hCosThZ->GetXaxis()->SetTitle("Cos(#theta_{z})");
04418 hCosThZ->GetXaxis()->CenterTitle();
04419
04420
04421 TH1F* hCosThZBForw=new TH1F("hCosThZBForw","hCosThZBForw",20,-1,1);
04422 hCosThZBForw->SetFillColor(0);
04423 hCosThZBForw->SetTitle("Distribution of Cos(#theta_{z})");
04424 hCosThZBForw->GetXaxis()->SetTitle("Cos(#theta_{z})");
04425 hCosThZBForw->GetXaxis()->CenterTitle();
04426
04427
04428 TH1F* hCosThZBBack=new TH1F("hCosThZBBack","hCosThZBBack",20,-1,1);
04429 hCosThZBBack->SetFillColor(0);
04430 hCosThZBBack->SetTitle("Distribution of Cos(#theta_{z})");
04431 hCosThZBBack->GetXaxis()->SetTitle("Cos(#theta_{z})");
04432 hCosThZBBack->GetXaxis()->CenterTitle();
04433
04434
04435
04436 TProfile* pEffVsPl=new TProfile
04437 ("pEffVsPl","pEffVsPl",486,0,486);
04438 TProfile* pEffTrkVsPl=new TProfile
04439 ("pEffTrkVsPl","pEffTrkVsPl",486,0,486);
04440
04441
04442 TProfile* pMeuVsPl=new TProfile
04443 ("pMeuVsPl","pMeuVsPl",486,0,486);
04444 TProfile* pPeVsPl=new TProfile
04445 ("pPeVsPl","pPeVsPl",486,0,486);
04446 TProfile* pStsVsPl=new TProfile
04447 ("pStsVsPl","pStsVsPl",486,0,486);
04448 TProfile* pSLVsPl=new TProfile
04449 ("pSLVsPl","pSLVsPl",486,0,486);
04450 TProfile* pAdcVsPl=new TProfile
04451 ("pAdcVsPl","pAdcVsPl",486,0,486);
04452
04453
04454 TProfile* pMeuVsPlU=new TProfile
04455 ("pMeuVsPlU","pMeuVsPlU",486,0,486);
04456 pMeuVsPlU->SetLineColor(2);
04457 TProfile* pPeVsPlU=new TProfile
04458 ("pPeVsPlU","pPeVsPlU",486,0,486);
04459 pPeVsPlU->SetLineColor(2);
04460 TProfile* pStsVsPlU=new TProfile
04461 ("pStsVsPlU","pStsVsPlU",486,0,486);
04462 pStsVsPlU->SetLineColor(2);
04463 TProfile* pSLVsPlU=new TProfile
04464 ("pSLVsPlU","pSLVsPlU",486,0,486);
04465 pSLVsPlU->SetLineColor(2);
04466 TProfile* pAdcVsPlU=new TProfile
04467 ("pAdcVsPlU","pAdcVsPlU",486,0,486);
04468 pAdcVsPlU->SetLineColor(2);
04469
04470
04471 TProfile* pMeuVsPlV=new TProfile
04472 ("pMeuVsPlV","pMeuVsPlV",486,0,486);
04473 pMeuVsPlV->SetLineColor(4);
04474 TProfile* pPeVsPlV=new TProfile
04475 ("pPeVsPlV","pPeVsPlV",486,0,486);
04476 pPeVsPlV->SetLineColor(4);
04477 TProfile* pStsVsPlV=new TProfile
04478 ("pStsVsPlV","pStsVsPlV",486,0,486);
04479 pStsVsPlV->SetLineColor(4);
04480 TProfile* pSLVsPlV=new TProfile
04481 ("pSLVsPlV","pSLVsPlV",486,0,486);
04482 pSLVsPlV->SetLineColor(4);
04483 TProfile* pAdcVsPlV=new TProfile
04484 ("pAdcVsPlV","pAdcVsPlV",486,0,486);
04485 pAdcVsPlV->SetLineColor(4);
04486
04487 TProfile* pMeuVsPl1=new TProfile
04488 ("pMeuVsPl1","pMeuVsPl1",486,0,486);
04489 TProfile* pPeVsPl1=new TProfile
04490 ("pPeVsPl1","pPeVsPl1",486,0,486);
04491 TProfile* pStsVsPl1=new TProfile
04492 ("pStsVsPl1","pStsVsPl1",486,0,486);
04493 TProfile* pSLVsPl1=new TProfile
04494 ("pSLVsPl1","pSLVsPl1",486,0,486);
04495 TProfile* pAdcVsPl1=new TProfile
04496 ("pAdcVsPl1","pAdcVsPl1",486,0,486);
04497
04498 TProfile* pMeuVsPl2=new TProfile
04499 ("pMeuVsPl2","pMeuVsPl2",486,0,486);
04500 TProfile* pPeVsPl2=new TProfile
04501 ("pPeVsPl2","pPeVsPl2",486,0,486);
04502 TProfile* pStsVsPl2=new TProfile
04503 ("pStsVsPl2","pStsVsPl2",486,0,486);
04504 TProfile* pSLVsPl2=new TProfile
04505 ("pSLVsPl2","pSLVsPl2",486,0,486);
04506 TProfile* pAdcVsPl2=new TProfile
04507 ("pAdcVsPl2","pAdcVsPl2",486,0,486);
04508
04509 TProfile* pMeuVsPl4=new TProfile
04510 ("pMeuVsPl4","pMeuVsPl4",486/4,0,486);
04511 TProfile* pPeVsPl4=new TProfile
04512 ("pPeVsPl4","pPeVsPl4",486/4,0,486);
04513 TProfile* pStsVsPl4=new TProfile
04514 ("pStsVsPl4","pStsVsPl4",486/4,0,486);
04515 TProfile* pSLVsPl4=new TProfile
04516 ("pSLVsPl4","pSLVsPl4",486/4,0,486);
04517 TProfile* pAdcVsPl4=new TProfile
04518 ("pAdcVsPl4","pAdcVsPl4",486/4,0,486);
04519
04520 TProfile* pMeuVsPl8=new TProfile
04521 ("pMeuVsPl8","pMeuVsPl8",486/8,0,486);
04522 TProfile* pPeVsPl8=new TProfile
04523 ("pPeVsPl8","pPeVsPl8",486/8,0,486);
04524 TProfile* pStsVsPl8=new TProfile
04525 ("pStsVsPl8","pStsVsPl8",486/8,0,486);
04526 TProfile* pSLVsPl8=new TProfile
04527 ("pSLVsPl8","pSLVsPl8",486/8,0,486);
04528 TProfile* pAdcVsPl8=new TProfile
04529 ("pAdcVsPl8","pAdcVsPl8",486/8,0,486);
04530
04531 TProfile* pMeuVsPl16=new TProfile
04532 ("pMeuVsPl16","pMeuVsPl16",486/16,0,486);
04533 TProfile* pPeVsPl16=new TProfile
04534 ("pPeVsPl16","pPeVsPl16",486/16,0,486);
04535 TProfile* pStsVsPl16=new TProfile
04536 ("pStsVsPl16","pStsVsPl16",486/16,0,486);
04537 TProfile* pSLVsPl16=new TProfile
04538 ("pSLVsPl16","pSLVsPl16",486/16,0,486);
04539 TProfile* pAdcVsPl16=new TProfile
04540 ("pAdcVsPl16","pAdcVsPl16",486/16,0,486);
04541
04542
04543 TProfile* pMeuVsPlT16=new TProfile
04544 ("pMeuVsPlT16","pMeuVsPlT16",486/16,0,486);
04545 TProfile* pStsVsPlT16=new TProfile
04546 ("pStsVsPlT16","pStsVsPlT16",486/16,0,486);
04547 TProfile* pSLVsPlT16=new TProfile
04548 ("pSLVsPlT16","pSLVsPlT16",486/16,0,486);
04549 TProfile* pAdcVsPlT16=new TProfile
04550 ("pAdcVsPlT16","pAdcVsPlT16",486/16,0,486);
04551
04552
04553 TProfile* pMeuVsStripU=new TProfile("pMeuVsStripU","pMeuVsStripU",
04554 194,-1,193);
04555 TProfile* pMeuVsStripUF=new TProfile("pMeuVsStripUF","pMeuVsStripUF",
04556 194,-1,193);
04557 TProfile* pMeuVsStripUP=new TProfile("pMeuVsStripUP","pMeuVsStripUP",
04558 194,-1,193);
04559 TProfile* pStsVsStripU=new TProfile("pStsVsStripU","pStsVsStripU",
04560 194,-1,193);
04561 TProfile* pStsVsStripUF=new TProfile("pStsVsStripUF","pStsVsStripUF",
04562 194,-1,193);
04563 TProfile* pStsVsStripUP=new TProfile("pStsVsStripUP","pStsVsStripUP",
04564 194,-1,193);
04565 TProfile* pAdcVsStripU=new TProfile("pAdcVsStripU","pAdcVsStripU",
04566 194,-1,193);
04567 TProfile* pAdcVsStripUF=new TProfile("pAdcVsStripUF","pAdcVsStripUF",
04568 194,-1,193);
04569 TProfile* pAdcVsStripUP=new TProfile("pAdcVsStripUP","pAdcVsStripUP",
04570 194,-1,193);
04571 TProfile* pPeVsStripU=new TProfile("pPeVsStripU","pPeVsStripU",
04572 194,-1,193);
04573 TProfile* pPeVsStripUF=new TProfile("pPeVsStripUF","pPeVsStripUF",
04574 194,-1,193);
04575 TProfile* pPeVsStripUP=new TProfile("pPeVsStripUP","pPeVsStripUP",
04576 194,-1,193);
04577
04578 TProfile* pMeuVsStripV=new TProfile("pMeuVsStripV","pMeuVsStripV",
04579 194,-1,193);
04580 TProfile* pMeuVsStripVF=new TProfile("pMeuVsStripVF","pMeuVsStripVF",
04581 194,-1,193);
04582 TProfile* pMeuVsStripVP=new TProfile("pMeuVsStripVP","pMeuVsStripVP",
04583 194,-1,193);
04584 TProfile* pStsVsStripV=new TProfile("pStsVsStripV","pStsVsStripV",
04585 194,-1,193);
04586 TProfile* pStsVsStripVF=new TProfile("pStsVsStripVF","pStsVsStripVF",
04587 194,-1,193);
04588 TProfile* pStsVsStripVP=new TProfile("pStsVsStripVP","pStsVsStripVP",
04589 194,-1,193);
04590 TProfile* pAdcVsStripV=new TProfile("pAdcVsStripV","pAdcVsStripV",
04591 194,-1,193);
04592 TProfile* pAdcVsStripVF=new TProfile("pAdcVsStripVF","pAdcVsStripVF",
04593 194,-1,193);
04594 TProfile* pAdcVsStripVP=new TProfile("pAdcVsStripVP","pAdcVsStripVP",
04595 194,-1,193);
04596 TProfile* pPeVsStripV=new TProfile("pPeVsStripV","pPeVsStripV",
04597 194,-1,193);
04598 TProfile* pPeVsStripVF=new TProfile("pPeVsStripVF","pPeVsStripVF",
04599 194,-1,193);
04600 TProfile* pPeVsStripVP=new TProfile("pPeVsStripVP","pPeVsStripVP",
04601 194,-1,193);
04602
04603
04604 TProfile* pMeuVsX=new TProfile("pMeuVsX","pMeuVsX",20,-5,5);
04605 TProfile* pMeuVsY=new TProfile("pMeuVsY","pMeuVsY",20,-5,5);
04606 TProfile* pMeuVsXU=new TProfile("pMeuVsXU","pMeuVsXU",20,-5,5);
04607 TProfile* pMeuVsYU=new TProfile("pMeuVsYU","pMeuVsYU",20,-5,5);
04608 TProfile* pMeuVsXV=new TProfile("pMeuVsXV","pMeuVsXV",20,-5,5);
04609 TProfile* pMeuVsYV=new TProfile("pMeuVsYV","pMeuVsYV",20,-5,5);
04610
04611
04612 TProfile* pMeuVsStripU20=new TProfile
04613 ("pMeuVsStripU20","pMeuVsStripU20",20,0,192);
04614 TProfile* pMeuVsStripV20=new TProfile
04615 ("pMeuVsStripV20","pMeuVsStripV20",20,0,192);
04616 TProfile* pMeuVsTU=new TProfile("pMeuVsTU","pMeuVsTU",20,-5,5);
04617 TProfile* pMeuVsTV=new TProfile("pMeuVsTV","pMeuVsTV",20,-5,5);
04618 TProfile* pMeuVsLU=new TProfile("pMeuVsLU","pMeuVsLU",20,-5,5);
04619 TProfile* pMeuVsLV=new TProfile("pMeuVsLV","pMeuVsLV",20,-5,5);
04620 TProfile* pMeuVsTU8=new TProfile("pMeuVsTU8","pMeuVsTU8",20,-5,5);
04621 TProfile* pMeuVsLU8=new TProfile("pMeuVsLU8","pMeuVsLU8",20,-5,5);
04622 TProfile* pMeuVsLU18=new TProfile("pMeuVsLU18","pMeuVsLU18",20,-5,5);
04623 TProfile* pMeuVsLU28=new TProfile("pMeuVsLU28","pMeuVsLU28",20,-5,5);
04624 TProfile* pMeuVsTV8=new TProfile("pMeuVsTV8","pMeuVsTV8",20,-5,5);
04625 TProfile* pMeuVsLV8=new TProfile("pMeuVsLV8","pMeuVsLV8",20,-5,5);
04626 TProfile* pMeuVsLV18=new TProfile("pMeuVsLV18","pMeuVsLV18",20,-5,5);
04627 TProfile* pMeuVsLV28=new TProfile("pMeuVsLV28","pMeuVsLV28",20,-5,5);
04628
04629
04630 TProfile* pMeuVsTU11=new TProfile("pMeuVsTU11","pMeuVsTU11",20,-5,5);
04631 TProfile* pMeuVsTU21=new TProfile("pMeuVsTU21","pMeuVsTU21",20,-5,5);
04632 TProfile* pMeuVsTV11=new TProfile("pMeuVsTV11","pMeuVsTV11",20,-5,5);
04633 TProfile* pMeuVsTV21=new TProfile("pMeuVsTV21","pMeuVsTV21",20,-5,5);
04634
04635
04636 TProfile* pMeuVsTU15=new TProfile("pMeuVsTU15","pMeuVsTU15",20,-5,5);
04637 TProfile* pMeuVsTU25=new TProfile("pMeuVsTU25","pMeuVsTU25",20,-5,5);
04638 TProfile* pMeuVsTV15=new TProfile("pMeuVsTV15","pMeuVsTV15",20,-5,5);
04639 TProfile* pMeuVsTV25=new TProfile("pMeuVsTV25","pMeuVsTV25",20,-5,5);
04640
04641 TProfile* pCorVsTU=new TProfile("pCorVsTU","pCorVsTU",20,-5,5);
04642 TProfile* pCorVsLU=new TProfile("pCorVsLU","pCorVsLU",20,-5,5);
04643 TProfile* pCorVsTV=new TProfile("pCorVsTV","pCorVsTV",20,-5,5);
04644 TProfile* pCorVsLV=new TProfile("pCorVsLV","pCorVsLV",20,-5,5);
04645
04646 TProfile* pCorVsTU8=new TProfile("pCorVsTU8","pCorVsTU8",20,-5,5);
04647 TProfile* pCorVsLU8=new TProfile("pCorVsLU8","pCorVsLU8",20,-5,5);
04648 TProfile* pCorVsLU18=new TProfile("pCorVsLU18","pCorVsLU18",20,-5,5);
04649 TProfile* pCorVsLU28=new TProfile("pCorVsLU28","pCorVsLU28",20,-5,5);
04650 TProfile* pCorVsTV8=new TProfile("pCorVsTV8","pCorVsTV8",20,-5,5);
04651 TProfile* pCorVsLV8=new TProfile("pCorVsLV8","pCorVsLV8",20,-5,5);
04652 TProfile* pCorVsLV18=new TProfile("pCorVsLV18","pCorVsLV18",20,-5,5);
04653 TProfile* pCorVsLV28=new TProfile("pCorVsLV28","pCorVsLV28",20,-5,5);
04654
04655 TProfile* pAdcVsLU8=new TProfile("pAdcVsLU8","pAdcVsLU8",20,-5,5);
04656 TProfile* pAdcVsLV8=new TProfile("pAdcVsLV8","pAdcVsLV8",20,-5,5);
04657 TProfile* pAdcVsLU18=new TProfile("pAdcVsLU18","pAdcVsLU18",20,-5,5);
04658 TProfile* pAdcVsLU28=new TProfile("pAdcVsLU28","pAdcVsLU28",20,-5,5);
04659 TProfile* pAdcVsLV18=new TProfile("pAdcVsLV18","pAdcVsLV18",20,-5,5);
04660 TProfile* pAdcVsLV28=new TProfile("pAdcVsLV28","pAdcVsLV28",20,-5,5);
04661
04662 TProfile* pAdcVsTU1=new TProfile("pAdcVsTU1","pAdcVsTU1",20,-5,5);
04663 TProfile* pAdcVsTU2=new TProfile("pAdcVsTU2","pAdcVsTU2",20,-5,5);
04664 TProfile* pAdcVsTV1=new TProfile("pAdcVsTV1","pAdcVsTV1",20,-5,5);
04665 TProfile* pAdcVsTV2=new TProfile("pAdcVsTV2","pAdcVsTV2",20,-5,5);
04666
04667 TProfile* pPeVsLU8=new TProfile("pPeVsLU8","pPeVsLU8",20,-5,5);
04668 TProfile* pPeVsLV8=new TProfile("pPeVsLV8","pPeVsLV8",20,-5,5);
04669 TProfile* pPeVsLU18=new TProfile("pPeVsLU18","pPeVsLU18",20,-5,5);
04670 TProfile* pPeVsLU28=new TProfile("pPeVsLU28","pPeVsLU28",20,-5,5);
04671 TProfile* pPeVsLV18=new TProfile("pPeVsLV18","pPeVsLV18",20,-5,5);
04672 TProfile* pPeVsLV28=new TProfile("pPeVsLV28","pPeVsLV28",20,-5,5);
04673
04674
04675
04677
04678
04679 TProfile* pMeuVs40X=new TProfile("pMeuVs40X","pMeuVs40X",40,-5,5);
04680 TProfile* pMeuVs40Y=new TProfile("pMeuVs40Y","pMeuVs40Y",40,-5,5);
04681 TProfile* pMeuVs40XU=new TProfile("pMeuVs40XU","pMeuVs40XU",40,-5,5);
04682 TProfile* pMeuVs40YU=new TProfile("pMeuVs40YU","pMeuVs40YU",40,-5,5);
04683 TProfile* pMeuVs40XV=new TProfile("pMeuVs40XV","pMeuVs40XV",40,-5,5);
04684 TProfile* pMeuVs40YV=new TProfile("pMeuVs40YV","pMeuVs40YV",40,-5,5);
04685
04686
04687 TProfile* pMeuVs40TU=new TProfile
04688 ("pMeuVs40TU","pMeuVs40TU",40,-5,5);
04689 TProfile* pMeuVs40StripU=new TProfile
04690 ("pMeuVs40StripU","pMeuVs40StripU",40,0,192);
04691 TProfile* pMeuVs40LU=new TProfile
04692 ("pMeuVs40LU","pMeuVs40LU",40,-5,5);
04693 TProfile* pMeuVs40TV=new TProfile
04694 ("pMeuVs40TV","pMeuVs40TV",40,-5,5);
04695 TProfile* pMeuVs40StripV=new TProfile
04696 ("pMeuVs40StripV","pMeuVs40StripV",40,0,192);
04697 TProfile* pMeuVs40LV=new TProfile
04698 ("pMeuVs40LV","pMeuVs40LV",40,-5,5);
04699 TProfile* pMeuVs40TU8=new TProfile
04700 ("pMeuVs40TU8","pMeuVs40TU8",40,-5,5);
04701 TProfile* pMeuVs40LU8=new TProfile
04702 ("pMeuVs40LU8","pMeuVs40LU8",40,-5,5);
04703 TProfile* pMeuVs40LU18=new TProfile
04704 ("pMeuVs40LU18","pMeuVs40LU18",40,-5,5);
04705 TProfile* pMeuVs40LU28=new TProfile
04706 ("pMeuVs40LU28","pMeuVs40LU28",40,-5,5);
04707 TProfile* pMeuVs40TV8=new TProfile
04708 ("pMeuVs40TV8","pMeuVs40TV8",40,-5,5);
04709 TProfile* pMeuVs40LV8=new TProfile
04710 ("pMeuVs40LV8","pMeuVs40LV8",40,-5,5);
04711 TProfile* pMeuVs40LV18=new TProfile
04712 ("pMeuVs40LV18","pMeuVs40LV18",40,-5,5);
04713 TProfile* pMeuVs40LV28=new TProfile
04714 ("pMeuVs40LV28","pMeuVs40LV28",40,-5,5);
04715
04716
04717 TProfile* pMeuVs40TU11=new TProfile
04718 ("pMeuVs40TU11","pMeuVs40TU11",40,-5,5);
04719 TProfile* pMeuVs40TU21=new TProfile
04720 ("pMeuVs40TU21","pMeuVs40TU21",40,-5,5);
04721 TProfile* pMeuVs40TV11=new TProfile
04722 ("pMeuVs40TV11","pMeuVs40TV11",40,-5,5);
04723 TProfile* pMeuVs40TV21=new TProfile
04724 ("pMeuVs40TV21","pMeuVs40TV21",40,-5,5);
04725
04726
04727 TProfile* pMeuVs40TU15=new TProfile
04728 ("pMeuVs40TU15","pMeuVs40TU15",40,-5,5);
04729 TProfile* pMeuVs40TU25=new TProfile
04730 ("pMeuVs40TU25","pMeuVs40TU25",40,-5,5);
04731 TProfile* pMeuVs40TV15=new TProfile
04732 ("pMeuVs40TV15","pMeuVs40TV15",40,-5,5);
04733 TProfile* pMeuVs40TV25=new TProfile
04734 ("pMeuVs40TV25","pMeuVs40TV25",40,-5,5);
04735
04736 TProfile* pCorVs40TU=new TProfile
04737 ("pCorVs40TU","pCorVs40TU",40,-5,5);
04738 TProfile* pCorVs40LU=new TProfile
04739 ("pCorVs40LU","pCorVs40LU",40,-5,5);
04740 TProfile* pCorVs40TV=new TProfile
04741 ("pCorVs40TV","pCorVs40TV",40,-5,5);
04742 TProfile* pCorVs40LV=new TProfile
04743 ("pCorVs40LV","pCorVs40LV",40,-5,5);
04744
04745 TProfile* pCorVs40TU8=new TProfile
04746 ("pCorVs40TU8","pCorVs40TU8",40,-5,5);
04747 TProfile* pCorVs40LU8=new TProfile
04748 ("pCorVs40LU8","pCorVs40LU8",40,-5,5);
04749 TProfile* pCorVs40LU18=new TProfile
04750 ("pCorVs40LU18","pCorVs40LU18",40,-5,5);
04751 TProfile* pCorVs40LU28=new TProfile
04752 ("pCorVs40LU28","pCorVs40LU28",40,-5,5);
04753 TProfile* pCorVs40TV8=new TProfile
04754 ("pCorVs40TV8","pCorVs40TV8",40,-5,5);
04755 TProfile* pCorVs40LV8=new TProfile
04756 ("pCorVs40LV8","pCorVs40LV8",40,-5,5);
04757 TProfile* pCorVs40LV18=new TProfile
04758 ("pCorVs40LV18","pCorVs40LV18",40,-5,5);
04759 TProfile* pCorVs40LV28=new TProfile
04760 ("pCorVs40LV28","pCorVs40LV28",40,-5,5);
04761
04762 TProfile* pAdcVs40LU8=new TProfile
04763 ("pAdcVs40LU8","pAdcVs40LU8",40,-5,5);
04764 TProfile* pAdcVs40LV8=new TProfile
04765 ("pAdcVs40LV8","pAdcVs40LV8",40,-5,5);
04766 TProfile* pAdcVs40LU18=new TProfile
04767 ("pAdcVs40LU18","pAdcVs40LU18",40,-5,5);
04768 TProfile* pAdcVs40LU28=new TProfile
04769 ("pAdcVs40LU28","pAdcVs40LU28",40,-5,5);
04770 TProfile* pAdcVs40LV18=new TProfile
04771 ("pAdcV1s40LV18","pAdcVs40LV18",40,-5,5);
04772 TProfile* pAdcVs40LV28=new TProfile
04773 ("pAdcVs40LV28","pAdcVs40LV28",40,-5,5);
04774
04775 TProfile* pAdcVs40TU1=new TProfile
04776 ("pAdcVs40TU1","pAdcVs40TU1",40,-5,5);
04777 TProfile* pAdcVs40TU2=new TProfile
04778 ("pAdcVs40TU2","pAdcVs40TU2",40,-5,5);
04779 TProfile* pAdcVs40TV1=new TProfile
04780 ("pAdcVs40TV1","pAdcVs40TV1",40,-5,5);
04781 TProfile* pAdcVs40TV2=new TProfile
04782 ("pAdcVs40TV2","pAdcVs40TV2",40,-5,5);
04783
04784 TProfile* pPeVs40LU8=new TProfile
04785 ("pPeVs40LU8","pPeVs40LU8",40,-5,5);
04786 TProfile* pPeVs40LV8=new TProfile
04787 ("pPeVs40LV8","pPeVs40LV8",40,-5,5);
04788 TProfile* pPeVs40LU18=new TProfile
04789 ("pPeVs40LU18","pPeVs40LU18",40,-5,5);
04790 TProfile* pPeVs40LU28=new TProfile
04791 ("pPeVs40LU28","pPeVs40LU28",40,-5,5);
04792 TProfile* pPeVs40LV18=new TProfile
04793 ("pPeVs40LV18","pPeVs40LV18",40,-5,5);
04794 TProfile* pPeVs40LV28=new TProfile
04795 ("pPeVs40LV28","pPeVs40LV28",40,-5,5);
04796
04797
04799
04800 TProfile2D* pYvsXMeu=new TProfile2D("pYvsXMeu","pYvsXMeu",
04801 30,-4,4,30,-4,4);
04802 pYvsXMeu->SetTitle("MEU");
04803 pYvsXMeu->GetXaxis()->SetTitle("X (m)");
04804 pYvsXMeu->GetXaxis()->CenterTitle();
04805 pYvsXMeu->GetYaxis()->SetTitle("Y (m)");
04806 pYvsXMeu->GetYaxis()->CenterTitle();
04807
04808 TH2F* hYvsX15=new TH2F("hYvsX15","hYvsX15",15,-4,4,15,-4,4);
04809 hYvsX15->SetTitle("MEU");
04810 hYvsX15->GetXaxis()->SetTitle("X (m)");
04811 hYvsX15->GetXaxis()->CenterTitle();
04812 hYvsX15->GetYaxis()->SetTitle("Y (m)");
04813 hYvsX15->GetYaxis()->CenterTitle();
04814
04815 TProfile2D* pYvsX15=new TProfile2D
04816 ("pYvsX15","pYvsX15",15,-4,4,15,-4,4);
04817 pYvsX15->SetTitle("MEU");
04818 pYvsX15->GetXaxis()->SetTitle("X (m)");
04819 pYvsX15->GetXaxis()->CenterTitle();
04820 pYvsX15->GetYaxis()->SetTitle("Y (m)");
04821 pYvsX15->GetYaxis()->CenterTitle();
04822
04823 TProfile2D* pYvsX20=new TProfile2D
04824 ("pYvsX20","pYvsX20",20,-4,4,20,-4,4);
04825 pYvsX20->SetTitle("MEU");
04826 pYvsX20->GetXaxis()->SetTitle("X (m)");
04827 pYvsX20->GetXaxis()->CenterTitle();
04828 pYvsX20->GetYaxis()->SetTitle("Y (m)");
04829 pYvsX20->GetYaxis()->CenterTitle();
04830
04831 TProfile2D* pYvsX22=new TProfile2D
04832 ("pYvsX22","pYvsX22",22,-4,4,22,-4,4);
04833 pYvsX22->SetTitle("MEU");
04834 pYvsX22->GetXaxis()->SetTitle("X (m)");
04835 pYvsX22->GetXaxis()->CenterTitle();
04836 pYvsX22->GetYaxis()->SetTitle("Y (m)");
04837 pYvsX22->GetYaxis()->CenterTitle();
04838
04839 TProfile2D* pYvsX25=new TProfile2D
04840 ("pYvsX25","pYvsX25",25,-4,4,25,-4,4);
04841 pYvsX25->SetTitle("MEU");
04842 pYvsX25->GetXaxis()->SetTitle("X (m)");
04843 pYvsX25->GetXaxis()->CenterTitle();
04844 pYvsX25->GetYaxis()->SetTitle("Y (m)");
04845 pYvsX25->GetYaxis()->CenterTitle();
04846
04847
04848
04850
04851 TH2F* hYvsX16=new TH2F("hYvsX16","hYvsX16",16,-4,4,16,-4,4);
04852 hYvsX16->SetTitle("MEU");
04853 hYvsX16->GetXaxis()->SetTitle("X (m)");
04854 hYvsX16->GetXaxis()->CenterTitle();
04855 hYvsX16->GetYaxis()->SetTitle("Y (m)");
04856 hYvsX16->GetYaxis()->CenterTitle();
04857
04858 TProfile2D* pYvsX16=new TProfile2D("pYvsX16","pYvsX16",
04859 16,-4,4,16,-4,4);
04860 pYvsX16->SetTitle("MEU");
04861 pYvsX16->GetXaxis()->SetTitle("X (m)");
04862 pYvsX16->GetXaxis()->CenterTitle();
04863 pYvsX16->GetYaxis()->SetTitle("Y (m)");
04864 pYvsX16->GetYaxis()->CenterTitle();
04865
04866 TH2F* hYvsX16U=new TH2F("hYvsX16U","hYvsX16U",16,-4,4,16,-4,4);
04867 hYvsX16U->SetTitle("MEU");
04868 hYvsX16U->GetXaxis()->SetTitle("X (m)");
04869 hYvsX16U->GetXaxis()->CenterTitle();
04870 hYvsX16U->GetYaxis()->SetTitle("Y (m)");
04871 hYvsX16U->GetYaxis()->CenterTitle();
04872
04873 TProfile2D* pYvsX16U=new TProfile2D("pYvsX16U","pYvsX16U",
04874 16,-4,4,16,-4,4);
04875 pYvsX16U->SetTitle("MEU");
04876 pYvsX16U->GetXaxis()->SetTitle("X (m)");
04877 pYvsX16U->GetXaxis()->CenterTitle();
04878 pYvsX16U->GetYaxis()->SetTitle("Y (m)");
04879 pYvsX16U->GetYaxis()->CenterTitle();
04880
04881 TProfile2D* pYvsX16U1=new TProfile2D("pYvsX16U1","pYvsX16U1",
04882 16,-4,4,16,-4,4);
04883 pYvsX16U1->SetTitle("MEU1");
04884 pYvsX16U1->GetXaxis()->SetTitle("X (m)");
04885 pYvsX16U1->GetXaxis()->CenterTitle();
04886 pYvsX16U1->GetYaxis()->SetTitle("Y (m)");
04887 pYvsX16U1->GetYaxis()->CenterTitle();
04888
04889 TProfile2D* pYvsX16U2=new TProfile2D("pYvsX16U2","pYvsX16U2",
04890 16,-4,4,16,-4,4);
04891 pYvsX16U2->SetTitle("MEU2");
04892 pYvsX16U2->GetXaxis()->SetTitle("X (m)");
04893 pYvsX16U2->GetXaxis()->CenterTitle();
04894 pYvsX16U2->GetYaxis()->SetTitle("Y (m)");
04895 pYvsX16U2->GetYaxis()->CenterTitle();
04896
04897 TH2F* hYvsX16V=new TH2F("hYvsX16V","hYvsX16V",16,-4,4,16,-4,4);
04898 hYvsX16V->SetTitle("MEU");
04899 hYvsX16V->GetXaxis()->SetTitle("X (m)");
04900 hYvsX16V->GetXaxis()->CenterTitle();
04901 hYvsX16V->GetYaxis()->SetTitle("Y (m)");
04902 hYvsX16V->GetYaxis()->CenterTitle();
04903
04904 TProfile2D* pYvsX16V=new TProfile2D("pYvsX16V","pYvsX16V",
04905 16,-4,4,16,-4,4);
04906 pYvsX16V->SetTitle("MEU");
04907 pYvsX16V->GetXaxis()->SetTitle("X (m)");
04908 pYvsX16V->GetXaxis()->CenterTitle();
04909 pYvsX16V->GetYaxis()->SetTitle("Y (m)");
04910 pYvsX16V->GetYaxis()->CenterTitle();
04911
04912 TProfile2D* pYvsX16V1=new TProfile2D("pYvsX16V1","pYvsX16V1",
04913 16,-4,4,16,-4,4);
04914 pYvsX16V1->SetTitle("MEU");
04915 pYvsX16V1->GetXaxis()->SetTitle("X (m)");
04916 pYvsX16V1->GetXaxis()->CenterTitle();
04917 pYvsX16V1->GetYaxis()->SetTitle("Y (m)");
04918 pYvsX16V1->GetYaxis()->CenterTitle();
04919
04920 TProfile2D* pYvsX16V2=new TProfile2D("pYvsX16V2","pYvsX16V2",
04921 16,-4,4,16,-4,4);
04922 pYvsX16V2->SetTitle("MEU");
04923 pYvsX16V2->GetXaxis()->SetTitle("X (m)");
04924 pYvsX16V2->GetXaxis()->CenterTitle();
04925 pYvsX16V2->GetYaxis()->SetTitle("Y (m)");
04926 pYvsX16V2->GetYaxis()->CenterTitle();
04927
04928
04929 TProfile2D* pStsYvsX16U=new TProfile2D("pStsYvsX16U","pStsYvsX16U",
04930 16,-4,4,16,-4,4);
04931 pStsYvsX16U->SetTitle("MEU");
04932 pStsYvsX16U->GetXaxis()->SetTitle("X (m)");
04933 pStsYvsX16U->GetXaxis()->CenterTitle();
04934 pStsYvsX16U->GetYaxis()->SetTitle("Y (m)");
04935 pStsYvsX16U->GetYaxis()->CenterTitle();
04936
04937 TProfile2D* pStsYvsX16U1=new TProfile2D("pStsYvsX16U1","pStsYvsX16U1",
04938 16,-4,4,16,-4,4);
04939 pStsYvsX16U1->SetTitle("MEU1");
04940 pStsYvsX16U1->GetXaxis()->SetTitle("X (m)");
04941 pStsYvsX16U1->GetXaxis()->CenterTitle();
04942 pStsYvsX16U1->GetYaxis()->SetTitle("Y (m)");
04943 pStsYvsX16U1->GetYaxis()->CenterTitle();
04944
04945 TProfile2D* pStsYvsX16U2=new TProfile2D("pStsYvsX16U2","pStsYvsX16U2",
04946 16,-4,4,16,-4,4);
04947 pStsYvsX16U2->SetTitle("MEU2");
04948 pStsYvsX16U2->GetXaxis()->SetTitle("X (m)");
04949 pStsYvsX16U2->GetXaxis()->CenterTitle();
04950 pStsYvsX16U2->GetYaxis()->SetTitle("Y (m)");
04951 pStsYvsX16U2->GetYaxis()->CenterTitle();
04952
04953 TProfile2D* pStsYvsX16U1Trk=new TProfile2D("pStsYvsX16U1Trk",
04954 "pStsYvsX16U1Trk",
04955 16,-4,4,16,-4,4);
04956 pStsYvsX16U1Trk->SetTitle("MEU");
04957 pStsYvsX16U1Trk->GetXaxis()->SetTitle("X (m)");
04958 pStsYvsX16U1Trk->GetXaxis()->CenterTitle();
04959 pStsYvsX16U1Trk->GetYaxis()->SetTitle("Y (m)");
04960 pStsYvsX16U1Trk->GetYaxis()->CenterTitle();
04961
04962 TProfile2D* pStsYvsX16U2Trk=new TProfile2D("pStsYvsX16U2Trk",
04963 "pStsYvsX16U2Trk",
04964 16,-4,4,16,-4,4);
04965 pStsYvsX16U2Trk->SetTitle("MEU");
04966 pStsYvsX16U2Trk->GetXaxis()->SetTitle("X (m)");
04967 pStsYvsX16U2Trk->GetXaxis()->CenterTitle();
04968 pStsYvsX16U2Trk->GetYaxis()->SetTitle("Y (m)");
04969 pStsYvsX16U2Trk->GetYaxis()->CenterTitle();
04970
04971 TProfile2D* pStsYvsX16V=new TProfile2D("pStsYvsX16V","pStsYvsX16V",
04972 16,-4,4,16,-4,4);
04973 pStsYvsX16V->SetTitle("MEU");
04974 pStsYvsX16V->GetXaxis()->SetTitle("X (m)");
04975 pStsYvsX16V->GetXaxis()->CenterTitle();
04976 pStsYvsX16V->GetYaxis()->SetTitle("Y (m)");
04977 pStsYvsX16V->GetYaxis()->CenterTitle();
04978
04979 TProfile2D* pStsYvsX16V1=new TProfile2D("pStsYvsX16V1","pStsYvsX16V1",
04980 16,-4,4,16,-4,4);
04981 pStsYvsX16V1->SetTitle("MEU");
04982 pStsYvsX16V1->GetXaxis()->SetTitle("X (m)");
04983 pStsYvsX16V1->GetXaxis()->CenterTitle();
04984 pStsYvsX16V1->GetYaxis()->SetTitle("Y (m)");
04985 pStsYvsX16V1->GetYaxis()->CenterTitle();
04986
04987 TProfile2D* pStsYvsX16V2=new TProfile2D("pStsYvsX16V2","pStsYvsX16V2",
04988 16,-4,4,16,-4,4);
04989 pStsYvsX16V2->SetTitle("MEU");
04990 pStsYvsX16V2->GetXaxis()->SetTitle("X (m)");
04991 pStsYvsX16V2->GetXaxis()->CenterTitle();
04992 pStsYvsX16V2->GetYaxis()->SetTitle("Y (m)");
04993 pStsYvsX16V2->GetYaxis()->CenterTitle();
04994
04995 TProfile2D* pStsYvsX16V1Trk=new TProfile2D("pStsYvsX16V1Trk",
04996 "pStsYvsX16V1Trk",
04997 16,-4,4,16,-4,4);
04998 pStsYvsX16V1Trk->SetTitle("MEU");
04999 pStsYvsX16V1Trk->GetXaxis()->SetTitle("X (m)");
05000 pStsYvsX16V1Trk->GetXaxis()->CenterTitle();
05001 pStsYvsX16V1Trk->GetYaxis()->SetTitle("Y (m)");
05002 pStsYvsX16V1Trk->GetYaxis()->CenterTitle();
05003
05004 TProfile2D* pStsYvsX16V2Trk=new TProfile2D("pStsYvsX16V2Trk",
05005 "pStsYvsX16V2Trk",
05006 16,-4,4,16,-4,4);
05007 pStsYvsX16V2Trk->SetTitle("MEU");
05008 pStsYvsX16V2Trk->GetXaxis()->SetTitle("X (m)");
05009 pStsYvsX16V2Trk->GetXaxis()->CenterTitle();
05010 pStsYvsX16V2Trk->GetYaxis()->SetTitle("Y (m)");
05011 pStsYvsX16V2Trk->GetYaxis()->CenterTitle();
05012
05013 TProfile2D* pAdcYvsX16U=new TProfile2D("pAdcYvsX16U","pAdcYvsX16U",
05014 16,-4,4,16,-4,4);
05015 pAdcYvsX16U->SetTitle("MEU");
05016 pAdcYvsX16U->GetXaxis()->SetTitle("X (m)");
05017 pAdcYvsX16U->GetXaxis()->CenterTitle();
05018 pAdcYvsX16U->GetYaxis()->SetTitle("Y (m)");
05019 pAdcYvsX16U->GetYaxis()->CenterTitle();
05020
05021 TProfile2D* pAdcYvsX16U1=new TProfile2D("pAdcYvsX16U1","pAdcYvsX16U1",
05022 16,-4,4,16,-4,4);
05023 pAdcYvsX16U1->SetTitle("MEU1");
05024 pAdcYvsX16U1->GetXaxis()->SetTitle("X (m)");
05025 pAdcYvsX16U1->GetXaxis()->CenterTitle();
05026 pAdcYvsX16U1->GetYaxis()->SetTitle("Y (m)");
05027 pAdcYvsX16U1->GetYaxis()->CenterTitle();
05028
05029 TProfile2D* pAdcYvsX16U2=new TProfile2D("pAdcYvsX16U2","pAdcYvsX16U2",
05030 16,-4,4,16,-4,4);
05031 pAdcYvsX16U2->SetTitle("MEU2");
05032 pAdcYvsX16U2->GetXaxis()->SetTitle("X (m)");
05033 pAdcYvsX16U2->GetXaxis()->CenterTitle();
05034 pAdcYvsX16U2->GetYaxis()->SetTitle("Y (m)");
05035 pAdcYvsX16U2->GetYaxis()->CenterTitle();
05036
05037 TProfile2D* pAdcYvsX16V=new TProfile2D("pAdcYvsX16V","pAdcYvsX16V",
05038 16,-4,4,16,-4,4);
05039 pAdcYvsX16V->SetTitle("MEU");
05040 pAdcYvsX16V->GetXaxis()->SetTitle("X (m)");
05041 pAdcYvsX16V->GetXaxis()->CenterTitle();
05042 pAdcYvsX16V->GetYaxis()->SetTitle("Y (m)");
05043 pAdcYvsX16V->GetYaxis()->CenterTitle();
05044
05045 TProfile2D* pAdcYvsX16V1=new TProfile2D("pAdcYvsX16V1","pAdcYvsX16V1",
05046 16,-4,4,16,-4,4);
05047 pAdcYvsX16V1->SetTitle("MEU");
05048 pAdcYvsX16V1->GetXaxis()->SetTitle("X (m)");
05049 pAdcYvsX16V1->GetXaxis()->CenterTitle();
05050 pAdcYvsX16V1->GetYaxis()->SetTitle("Y (m)");
05051 pAdcYvsX16V1->GetYaxis()->CenterTitle();
05052
05053 TProfile2D* pAdcYvsX16V2=new TProfile2D("pAdcYvsX16V2","pAdcYvsX16V2",
05054 16,-4,4,16,-4,4);
05055 pAdcYvsX16V2->SetTitle("MEU");
05056 pAdcYvsX16V2->GetXaxis()->SetTitle("X (m)");
05057 pAdcYvsX16V2->GetXaxis()->CenterTitle();
05058 pAdcYvsX16V2->GetYaxis()->SetTitle("Y (m)");
05059 pAdcYvsX16V2->GetYaxis()->CenterTitle();
05060
05061 TProfile2D* pPeYvsX16U=new TProfile2D("pPeYvsX16U","pPeYvsX16U",
05062 16,-4,4,16,-4,4);
05063 pPeYvsX16U->SetTitle("MEU");
05064 pPeYvsX16U->GetXaxis()->SetTitle("X (m)");
05065 pPeYvsX16U->GetXaxis()->CenterTitle();
05066 pPeYvsX16U->GetYaxis()->SetTitle("Y (m)");
05067 pPeYvsX16U->GetYaxis()->CenterTitle();
05068
05069 TProfile2D* pPeYvsX16U1=new TProfile2D("pPeYvsX16U1","pPeYvsX16U1",
05070 16,-4,4,16,-4,4);
05071 pPeYvsX16U1->SetTitle("MEU1");
05072 pPeYvsX16U1->GetXaxis()->SetTitle("X (m)");
05073 pPeYvsX16U1->GetXaxis()->CenterTitle();
05074 pPeYvsX16U1->GetYaxis()->SetTitle("Y (m)");
05075 pPeYvsX16U1->GetYaxis()->CenterTitle();
05076
05077 TProfile2D* pPeYvsX16U2=new TProfile2D("pPeYvsX16U2","pPeYvsX16U2",
05078 16,-4,4,16,-4,4);
05079 pPeYvsX16U2->SetTitle("MEU2");
05080 pPeYvsX16U2->GetXaxis()->SetTitle("X (m)");
05081 pPeYvsX16U2->GetXaxis()->CenterTitle();
05082 pPeYvsX16U2->GetYaxis()->SetTitle("Y (m)");
05083 pPeYvsX16U2->GetYaxis()->CenterTitle();
05084
05085 TProfile2D* pPeYvsX16V=new TProfile2D("pPeYvsX16V","pPeYvsX16V",
05086 16,-4,4,16,-4,4);
05087 pPeYvsX16V->SetTitle("MEU");
05088 pPeYvsX16V->GetXaxis()->SetTitle("X (m)");
05089 pPeYvsX16V->GetXaxis()->CenterTitle();
05090 pPeYvsX16V->GetYaxis()->SetTitle("Y (m)");
05091 pPeYvsX16V->GetYaxis()->CenterTitle();
05092
05093 TProfile2D* pPeYvsX16V1=new TProfile2D("pPeYvsX16V1","pPeYvsX16V1",
05094 16,-4,4,16,-4,4);
05095 pPeYvsX16V1->SetTitle("MEU");
05096 pPeYvsX16V1->GetXaxis()->SetTitle("X (m)");
05097 pPeYvsX16V1->GetXaxis()->CenterTitle();
05098 pPeYvsX16V1->GetYaxis()->SetTitle("Y (m)");
05099 pPeYvsX16V1->GetYaxis()->CenterTitle();
05100
05101 TProfile2D* pPeYvsX16V2=new TProfile2D("pPeYvsX16V2","pPeYvsX16V2",
05102 16,-4,4,16,-4,4);
05103 pPeYvsX16V2->SetTitle("MEU");
05104 pPeYvsX16V2->GetXaxis()->SetTitle("X (m)");
05105 pPeYvsX16V2->GetXaxis()->CenterTitle();
05106 pPeYvsX16V2->GetYaxis()->SetTitle("Y (m)");
05107 pPeYvsX16V2->GetYaxis()->CenterTitle();
05108
05109
05110
05112
05113 TH2F* hYvsX30=new TH2F("hYvsX30","hYvsX30",30,-4,4,30,-4,4);
05114 hYvsX30->SetTitle("MEU");
05115 hYvsX30->GetXaxis()->SetTitle("X (m)");
05116 hYvsX30->GetXaxis()->CenterTitle();
05117 hYvsX30->GetYaxis()->SetTitle("Y (m)");
05118 hYvsX30->GetYaxis()->CenterTitle();
05119
05120 TProfile2D* pYvsX30=new TProfile2D("pYvsX30","pYvsX30",
05121 30,-4,4,30,-4,4);
05122 pYvsX30->SetTitle("MEU");
05123 pYvsX30->GetXaxis()->SetTitle("X (m)");
05124 pYvsX30->GetXaxis()->CenterTitle();
05125 pYvsX30->GetYaxis()->SetTitle("Y (m)");
05126 pYvsX30->GetYaxis()->CenterTitle();
05127
05128 TH2F* hYvsX30U=new TH2F("hYvsX30U","hYvsX30U",30,-4,4,30,-4,4);
05129 hYvsX30U->SetTitle("MEU");
05130 hYvsX30U->GetXaxis()->SetTitle("X (m)");
05131 hYvsX30U->GetXaxis()->CenterTitle();
05132 hYvsX30U->GetYaxis()->SetTitle("Y (m)");
05133 hYvsX30U->GetYaxis()->CenterTitle();
05134
05135 TProfile2D* pYvsX30U=new TProfile2D("pYvsX30U","pYvsX30U",
05136 30,-4,4,30,-4,4);
05137 pYvsX30U->SetTitle("MEU");
05138 pYvsX30U->GetXaxis()->SetTitle("X (m)");
05139 pYvsX30U->GetXaxis()->CenterTitle();
05140 pYvsX30U->GetYaxis()->SetTitle("Y (m)");
05141 pYvsX30U->GetYaxis()->CenterTitle();
05142
05143 TProfile2D* pYvsX30U1=new TProfile2D("pYvsX30U1","pYvsX30U1",
05144 30,-4,4,30,-4,4);
05145 pYvsX30U1->SetTitle("MEU1");
05146 pYvsX30U1->GetXaxis()->SetTitle("X (m)");
05147 pYvsX30U1->GetXaxis()->CenterTitle();
05148 pYvsX30U1->GetYaxis()->SetTitle("Y (m)");
05149 pYvsX30U1->GetYaxis()->CenterTitle();
05150
05151 TProfile2D* pYvsX30U2=new TProfile2D("pYvsX30U2","pYvsX30U2",
05152 30,-4,4,30,-4,4);
05153 pYvsX30U2->SetTitle("MEU2");
05154 pYvsX30U2->GetXaxis()->SetTitle("X (m)");
05155 pYvsX30U2->GetXaxis()->CenterTitle();
05156 pYvsX30U2->GetYaxis()->SetTitle("Y (m)");
05157 pYvsX30U2->GetYaxis()->CenterTitle();
05158
05159 TH2F* hYvsX30V=new TH2F("hYvsX30V","hYvsX30V",30,-4,4,30,-4,4);
05160 hYvsX30V->SetTitle("MEU");
05161 hYvsX30V->GetXaxis()->SetTitle("X (m)");
05162 hYvsX30V->GetXaxis()->CenterTitle();
05163 hYvsX30V->GetYaxis()->SetTitle("Y (m)");
05164 hYvsX30V->GetYaxis()->CenterTitle();
05165
05166 TProfile2D* pYvsX30V=new TProfile2D("pYvsX30V","pYvsX30V",
05167 30,-4,4,30,-4,4);
05168 pYvsX30V->SetTitle("MEU");
05169 pYvsX30V->GetXaxis()->SetTitle("X (m)");
05170 pYvsX30V->GetXaxis()->CenterTitle();
05171 pYvsX30V->GetYaxis()->SetTitle("Y (m)");
05172 pYvsX30V->GetYaxis()->CenterTitle();
05173
05174 TProfile2D* pYvsX30V1=new TProfile2D("pYvsX30V1","pYvsX30V1",
05175 30,-4,4,30,-4,4);
05176 pYvsX30V1->SetTitle("MEU");
05177 pYvsX30V1->GetXaxis()->SetTitle("X (m)");
05178 pYvsX30V1->GetXaxis()->CenterTitle();
05179 pYvsX30V1->GetYaxis()->SetTitle("Y (m)");
05180 pYvsX30V1->GetYaxis()->CenterTitle();
05181
05182 TProfile2D* pYvsX30V2=new TProfile2D("pYvsX30V2","pYvsX30V2",
05183 30,-4,4,30,-4,4);
05184 pYvsX30V2->SetTitle("MEU");
05185 pYvsX30V2->GetXaxis()->SetTitle("X (m)");
05186 pYvsX30V2->GetXaxis()->CenterTitle();
05187 pYvsX30V2->GetYaxis()->SetTitle("Y (m)");
05188 pYvsX30V2->GetYaxis()->CenterTitle();
05189
05190
05191 TProfile2D* pStsYvsX30U=new TProfile2D("pStsYvsX30U","pStsYvsX30U",
05192 30,-4,4,30,-4,4);
05193 pStsYvsX30U->SetTitle("MEU");
05194 pStsYvsX30U->GetXaxis()->SetTitle("X (m)");
05195 pStsYvsX30U->GetXaxis()->CenterTitle();
05196 pStsYvsX30U->GetYaxis()->SetTitle("Y (m)");
05197 pStsYvsX30U->GetYaxis()->CenterTitle();
05198
05199 TProfile2D* pStsYvsX30U1=new TProfile2D("pStsYvsX30U1","pStsYvsX30U1",
05200 30,-4,4,30,-4,4);
05201 pStsYvsX30U1->SetTitle("MEU1");
05202 pStsYvsX30U1->GetXaxis()->SetTitle("X (m)");
05203 pStsYvsX30U1->GetXaxis()->CenterTitle();
05204 pStsYvsX30U1->GetYaxis()->SetTitle("Y (m)");
05205 pStsYvsX30U1->GetYaxis()->CenterTitle();
05206
05207 TProfile2D* pStsYvsX30U2=new TProfile2D("pStsYvsX30U2","pStsYvsX30U2",
05208 30,-4,4,30,-4,4);
05209 pStsYvsX30U2->SetTitle("MEU2");
05210 pStsYvsX30U2->GetXaxis()->SetTitle("X (m)");
05211 pStsYvsX30U2->GetXaxis()->CenterTitle();
05212 pStsYvsX30U2->GetYaxis()->SetTitle("Y (m)");
05213 pStsYvsX30U2->GetYaxis()->CenterTitle();
05214
05215 TProfile2D* pStsYvsX30U1Trk=new TProfile2D("pStsYvsX30U1Trk",
05216 "pStsYvsX30U1Trk",
05217 30,-4,4,30,-4,4);
05218 pStsYvsX30U1Trk->SetTitle("MEU");
05219 pStsYvsX30U1Trk->GetXaxis()->SetTitle("X (m)");
05220 pStsYvsX30U1Trk->GetXaxis()->CenterTitle();
05221 pStsYvsX30U1Trk->GetYaxis()->SetTitle("Y (m)");
05222 pStsYvsX30U1Trk->GetYaxis()->CenterTitle();
05223
05224 TProfile2D* pStsYvsX30U2Trk=new TProfile2D("pStsYvsX30U2Trk",
05225 "pStsYvsX30U2Trk",
05226 30,-4,4,30,-4,4);
05227 pStsYvsX30U2Trk->SetTitle("MEU");
05228 pStsYvsX30U2Trk->GetXaxis()->SetTitle("X (m)");
05229 pStsYvsX30U2Trk->GetXaxis()->CenterTitle();
05230 pStsYvsX30U2Trk->GetYaxis()->SetTitle("Y (m)");
05231 pStsYvsX30U2Trk->GetYaxis()->CenterTitle();
05232
05233 TProfile2D* pStsYvsX30V=new TProfile2D("pStsYvsX30V","pStsYvsX30V",
05234 30,-4,4,30,-4,4);
05235 pStsYvsX30V->SetTitle("MEU");
05236 pStsYvsX30V->GetXaxis()->SetTitle("X (m)");
05237 pStsYvsX30V->GetXaxis()->CenterTitle();
05238 pStsYvsX30V->GetYaxis()->SetTitle("Y (m)");
05239 pStsYvsX30V->GetYaxis()->CenterTitle();
05240
05241 TProfile2D* pStsYvsX30V1=new TProfile2D("pStsYvsX30V1","pStsYvsX30V1",
05242 30,-4,4,30,-4,4);
05243 pStsYvsX30V1->SetTitle("MEU");
05244 pStsYvsX30V1->GetXaxis()->SetTitle("X (m)");
05245 pStsYvsX30V1->GetXaxis()->CenterTitle();
05246 pStsYvsX30V1->GetYaxis()->SetTitle("Y (m)");
05247 pStsYvsX30V1->GetYaxis()->CenterTitle();
05248
05249 TProfile2D* pStsYvsX30V2=new TProfile2D("pStsYvsX30V2","pStsYvsX30V2",
05250 30,-4,4,30,-4,4);
05251 pStsYvsX30V2->SetTitle("MEU");
05252 pStsYvsX30V2->GetXaxis()->SetTitle("X (m)");
05253 pStsYvsX30V2->GetXaxis()->CenterTitle();
05254 pStsYvsX30V2->GetYaxis()->SetTitle("Y (m)");
05255 pStsYvsX30V2->GetYaxis()->CenterTitle();
05256
05257 TProfile2D* pStsYvsX30V1Trk=new TProfile2D("pStsYvsX30V1Trk",
05258 "pStsYvsX30V1Trk",
05259 30,-4,4,30,-4,4);
05260 pStsYvsX30V1Trk->SetTitle("MEU");
05261 pStsYvsX30V1Trk->GetXaxis()->SetTitle("X (m)");
05262 pStsYvsX30V1Trk->GetXaxis()->CenterTitle();
05263 pStsYvsX30V1Trk->GetYaxis()->SetTitle("Y (m)");
05264 pStsYvsX30V1Trk->GetYaxis()->CenterTitle();
05265
05266 TProfile2D* pStsYvsX30V2Trk=new TProfile2D("pStsYvsX30V2Trk",
05267 "pStsYvsX30V2Trk",
05268 30,-4,4,30,-4,4);
05269 pStsYvsX30V2Trk->SetTitle("MEU");
05270 pStsYvsX30V2Trk->GetXaxis()->SetTitle("X (m)");
05271 pStsYvsX30V2Trk->GetXaxis()->CenterTitle();
05272 pStsYvsX30V2Trk->GetYaxis()->SetTitle("Y (m)");
05273 pStsYvsX30V2Trk->GetYaxis()->CenterTitle();
05274
05275 TProfile2D* pAdcYvsX30U=new TProfile2D("pAdcYvsX30U","pAdcYvsX30U",
05276 30,-4,4,30,-4,4);
05277 pAdcYvsX30U->SetTitle("MEU");
05278 pAdcYvsX30U->GetXaxis()->SetTitle("X (m)");
05279 pAdcYvsX30U->GetXaxis()->CenterTitle();
05280 pAdcYvsX30U->GetYaxis()->SetTitle("Y (m)");
05281 pAdcYvsX30U->GetYaxis()->CenterTitle();
05282
05283 TProfile2D* pAdcYvsX30U1=new TProfile2D("pAdcYvsX30U1","pAdcYvsX30U1",
05284 30,-4,4,30,-4,4);
05285 pAdcYvsX30U1->SetTitle("MEU1");
05286 pAdcYvsX30U1->GetXaxis()->SetTitle("X (m)");
05287 pAdcYvsX30U1->GetXaxis()->CenterTitle();
05288 pAdcYvsX30U1->GetYaxis()->SetTitle("Y (m)");
05289 pAdcYvsX30U1->GetYaxis()->CenterTitle();
05290
05291 TProfile2D* pAdcYvsX30U2=new TProfile2D("pAdcYvsX30U2","pAdcYvsX30U2",
05292 30,-4,4,30,-4,4);
05293 pAdcYvsX30U2->SetTitle("MEU2");
05294 pAdcYvsX30U2->GetXaxis()->SetTitle("X (m)");
05295 pAdcYvsX30U2->GetXaxis()->CenterTitle();
05296 pAdcYvsX30U2->GetYaxis()->SetTitle("Y (m)");
05297 pAdcYvsX30U2->GetYaxis()->CenterTitle();
05298
05299 TProfile2D* pAdcYvsX30V=new TProfile2D("pAdcYvsX30V","pAdcYvsX30V",
05300 30,-4,4,30,-4,4);
05301 pAdcYvsX30V->SetTitle("MEU");
05302 pAdcYvsX30V->GetXaxis()->SetTitle("X (m)");
05303 pAdcYvsX30V->GetXaxis()->CenterTitle();
05304 pAdcYvsX30V->GetYaxis()->SetTitle("Y (m)");
05305 pAdcYvsX30V->GetYaxis()->CenterTitle();
05306
05307 TProfile2D* pAdcYvsX30V1=new TProfile2D("pAdcYvsX30V1","pAdcYvsX30V1",
05308 30,-4,4,30,-4,4);
05309 pAdcYvsX30V1->SetTitle("MEU");
05310 pAdcYvsX30V1->GetXaxis()->SetTitle("X (m)");
05311 pAdcYvsX30V1->GetXaxis()->CenterTitle();
05312 pAdcYvsX30V1->GetYaxis()->SetTitle("Y (m)");
05313 pAdcYvsX30V1->GetYaxis()->CenterTitle();
05314
05315 TProfile2D* pAdcYvsX30V2=new TProfile2D("pAdcYvsX30V2","pAdcYvsX30V2",
05316 30,-4,4,30,-4,4);
05317 pAdcYvsX30V2->SetTitle("MEU");
05318 pAdcYvsX30V2->GetXaxis()->SetTitle("X (m)");
05319 pAdcYvsX30V2->GetXaxis()->CenterTitle();
05320 pAdcYvsX30V2->GetYaxis()->SetTitle("Y (m)");
05321 pAdcYvsX30V2->GetYaxis()->CenterTitle();
05322
05323 TProfile2D* pPeYvsX30U=new TProfile2D("pPeYvsX30U","pPeYvsX30U",
05324 30,-4,4,30,-4,4);
05325 pPeYvsX30U->SetTitle("MEU");
05326 pPeYvsX30U->GetXaxis()->SetTitle("X (m)");
05327 pPeYvsX30U->GetXaxis()->CenterTitle();
05328 pPeYvsX30U->GetYaxis()->SetTitle("Y (m)");
05329 pPeYvsX30U->GetYaxis()->CenterTitle();
05330
05331 TProfile2D* pPeYvsX30U1=new TProfile2D("pPeYvsX30U1","pPeYvsX30U1",
05332 30,-4,4,30,-4,4);
05333 pPeYvsX30U1->SetTitle("MEU1");
05334 pPeYvsX30U1->GetXaxis()->SetTitle("X (m)");
05335 pPeYvsX30U1->GetXaxis()->CenterTitle();
05336 pPeYvsX30U1->GetYaxis()->SetTitle("Y (m)");
05337 pPeYvsX30U1->GetYaxis()->CenterTitle();
05338
05339 TProfile2D* pPeYvsX30U2=new TProfile2D("pPeYvsX30U2","pPeYvsX30U2",
05340 30,-4,4,30,-4,4);
05341 pPeYvsX30U2->SetTitle("MEU2");
05342 pPeYvsX30U2->GetXaxis()->SetTitle("X (m)");
05343 pPeYvsX30U2->GetXaxis()->CenterTitle();
05344 pPeYvsX30U2->GetYaxis()->SetTitle("Y (m)");
05345 pPeYvsX30U2->GetYaxis()->CenterTitle();
05346
05347 TProfile2D* pPeYvsX30V=new TProfile2D("pPeYvsX30V","pPeYvsX30V",
05348 30,-4,4,30,-4,4);
05349 pPeYvsX30V->SetTitle("MEU");
05350 pPeYvsX30V->GetXaxis()->SetTitle("X (m)");
05351 pPeYvsX30V->GetXaxis()->CenterTitle();
05352 pPeYvsX30V->GetYaxis()->SetTitle("Y (m)");
05353 pPeYvsX30V->GetYaxis()->CenterTitle();
05354
05355 TProfile2D* pPeYvsX30V1=new TProfile2D("pPeYvsX30V1","pPeYvsX30V1",
05356 30,-4,4,30,-4,4);
05357 pPeYvsX30V1->SetTitle("MEU");
05358 pPeYvsX30V1->GetXaxis()->SetTitle("X (m)");
05359 pPeYvsX30V1->GetXaxis()->CenterTitle();
05360 pPeYvsX30V1->GetYaxis()->SetTitle("Y (m)");
05361 pPeYvsX30V1->GetYaxis()->CenterTitle();
05362
05363 TProfile2D* pPeYvsX30V2=new TProfile2D("pPeYvsX30V2","pPeYvsX30V2",
05364 30,-4,4,30,-4,4);
05365 pPeYvsX30V2->SetTitle("MEU");
05366 pPeYvsX30V2->GetXaxis()->SetTitle("X (m)");
05367 pPeYvsX30V2->GetXaxis()->CenterTitle();
05368 pPeYvsX30V2->GetYaxis()->SetTitle("Y (m)");
05369 pPeYvsX30V2->GetYaxis()->CenterTitle();
05370
05371
05373 Int_t nYvsX60=60;
05374 TH2F* hYvsX=new TH2F("hYvsX","hYvsX",nYvsX60,-4,4,nYvsX60,-4,4);
05375 hYvsX->SetTitle("MEU");
05376 hYvsX->GetXaxis()->SetTitle("X (m)");
05377 hYvsX->GetXaxis()->CenterTitle();
05378 hYvsX->GetYaxis()->SetTitle("Y (m)");
05379 hYvsX->GetYaxis()->CenterTitle();
05380
05381 TH2F* hYvsXVtx=new TH2F
05382 ("hYvsXVtx","hYvsXVtx",nYvsX60,-4,4,nYvsX60,-4,4);
05383 hYvsXVtx->SetTitle("MEU");
05384 hYvsXVtx->GetXaxis()->SetTitle("X (m)");
05385 hYvsXVtx->GetXaxis()->CenterTitle();
05386 hYvsXVtx->GetYaxis()->SetTitle("Y (m)");
05387 hYvsXVtx->GetYaxis()->CenterTitle();
05388
05389 TH2F* hYvsXEnd=new TH2F
05390 ("hYvsXEnd","hYvsXEnd",nYvsX60,-4,4,nYvsX60,-4,4);
05391 hYvsXEnd->SetTitle("MEU");
05392 hYvsXEnd->GetXaxis()->SetTitle("X (m)");
05393 hYvsXEnd->GetXaxis()->CenterTitle();
05394 hYvsXEnd->GetYaxis()->SetTitle("Y (m)");
05395 hYvsXEnd->GetYaxis()->CenterTitle();
05396
05397 TProfile2D* pYvsX=new TProfile2D
05398 ("pYvsX","pYvsX",nYvsX60,-4,4,nYvsX60,-4,4);
05399 pYvsX->SetTitle("MEU");
05400 pYvsX->GetXaxis()->SetTitle("X (m)");
05401 pYvsX->GetXaxis()->CenterTitle();
05402 pYvsX->GetYaxis()->SetTitle("Y (m)");
05403 pYvsX->GetYaxis()->CenterTitle();
05404
05405 TProfile2D* pAdcYvsX=new TProfile2D
05406 ("pAdcYvsX","pAdcYvsX",nYvsX60,-4,4,nYvsX60,-4,4);
05407 pAdcYvsX->SetTitle("MEU");
05408 pAdcYvsX->GetXaxis()->SetTitle("X (m)");
05409 pAdcYvsX->GetXaxis()->CenterTitle();
05410 pAdcYvsX->GetYaxis()->SetTitle("Y (m)");
05411 pAdcYvsX->GetYaxis()->CenterTitle();
05412
05413 TProfile2D* pStsYvsX=new TProfile2D
05414 ("pStsYvsX","pStsYvsX",nYvsX60,-4,4,nYvsX60,-4,4);
05415 pStsYvsX->SetTitle("MEU");
05416 pStsYvsX->GetXaxis()->SetTitle("X (m)");
05417 pStsYvsX->GetXaxis()->CenterTitle();
05418 pStsYvsX->GetYaxis()->SetTitle("Y (m)");
05419 pStsYvsX->GetYaxis()->CenterTitle();
05420
05421 TProfile2D* pPeYvsX=new TProfile2D
05422 ("pPeYvsX","pPeYvsX",nYvsX60,-4,4,nYvsX60,-4,4);
05423 pPeYvsX->SetTitle("MEU");
05424 pPeYvsX->GetXaxis()->SetTitle("X (m)");
05425 pPeYvsX->GetXaxis()->CenterTitle();
05426 pPeYvsX->GetYaxis()->SetTitle("Y (m)");
05427 pPeYvsX->GetYaxis()->CenterTitle();
05428
05429 TH2F* hYvsXU=new TH2F
05430 ("hYvsXU","hYvsXU",nYvsX60,-4,4,nYvsX60,-4,4);
05431 hYvsXU->SetTitle("MEU");
05432 hYvsXU->GetXaxis()->SetTitle("X (m)");
05433 hYvsXU->GetXaxis()->CenterTitle();
05434 hYvsXU->GetYaxis()->SetTitle("Y (m)");
05435 hYvsXU->GetYaxis()->CenterTitle();
05436
05437 TProfile2D* pYvsXU=new TProfile2D
05438 ("pYvsXU","pYvsXU",nYvsX60,-4,4,nYvsX60,-4,4);
05439 pYvsXU->SetTitle("MEU");
05440 pYvsXU->GetXaxis()->SetTitle("X (m)");
05441 pYvsXU->GetXaxis()->CenterTitle();
05442 pYvsXU->GetYaxis()->SetTitle("Y (m)");
05443 pYvsXU->GetYaxis()->CenterTitle();
05444
05445 TProfile2D* pYvsXU1=new TProfile2D
05446 ("pYvsXU1","pYvsXU1",nYvsX60,-4,4,nYvsX60,-4,4);
05447 pYvsXU1->SetTitle("MEU1");
05448 pYvsXU1->GetXaxis()->SetTitle("X (m)");
05449 pYvsXU1->GetXaxis()->CenterTitle();
05450 pYvsXU1->GetYaxis()->SetTitle("Y (m)");
05451 pYvsXU1->GetYaxis()->CenterTitle();
05452
05453 TProfile2D* pYvsXU2=new TProfile2D
05454 ("pYvsXU2","pYvsXU2",nYvsX60,-4,4,nYvsX60,-4,4);
05455 pYvsXU2->SetTitle("MEU2");
05456 pYvsXU2->GetXaxis()->SetTitle("X (m)");
05457 pYvsXU2->GetXaxis()->CenterTitle();
05458 pYvsXU2->GetYaxis()->SetTitle("Y (m)");
05459 pYvsXU2->GetYaxis()->CenterTitle();
05460
05461 TH2F* hYvsXV=new TH2F
05462 ("hYvsXV","hYvsXV",nYvsX60,-4,4,nYvsX60,-4,4);
05463 hYvsXV->SetTitle("MEU");
05464 hYvsXV->GetXaxis()->SetTitle("X (m)");
05465 hYvsXV->GetXaxis()->CenterTitle();
05466 hYvsXV->GetYaxis()->SetTitle("Y (m)");
05467 hYvsXV->GetYaxis()->CenterTitle();
05468
05469 TProfile2D* pYvsXV=new TProfile2D("pYvsXV","pYvsXV",
05470 nYvsX60,-4,4,nYvsX60,-4,4);
05471 pYvsXV->SetTitle("MEU");
05472 pYvsXV->GetXaxis()->SetTitle("X (m)");
05473 pYvsXV->GetXaxis()->CenterTitle();
05474 pYvsXV->GetYaxis()->SetTitle("Y (m)");
05475 pYvsXV->GetYaxis()->CenterTitle();
05476
05477 TProfile2D* pYvsXV1=new TProfile2D("pYvsXV1","pYvsXV1",
05478 nYvsX60,-4,4,nYvsX60,-4,4);
05479 pYvsXV1->SetTitle("MEU");
05480 pYvsXV1->GetXaxis()->SetTitle("X (m)");
05481 pYvsXV1->GetXaxis()->CenterTitle();
05482 pYvsXV1->GetYaxis()->SetTitle("Y (m)");
05483 pYvsXV1->GetYaxis()->CenterTitle();
05484
05485 TProfile2D* pYvsXV2=new TProfile2D("pYvsXV2","pYvsXV2",
05486 nYvsX60,-4,4,nYvsX60,-4,4);
05487 pYvsXV2->SetTitle("MEU");
05488 pYvsXV2->GetXaxis()->SetTitle("X (m)");
05489 pYvsXV2->GetXaxis()->CenterTitle();
05490 pYvsXV2->GetYaxis()->SetTitle("Y (m)");
05491 pYvsXV2->GetYaxis()->CenterTitle();
05492
05493 TProfile2D* pStsYvsXU=new TProfile2D("pStsYvsXU","pStsYvsXU",
05494 nYvsX60,-4,4,nYvsX60,-4,4);
05495 pStsYvsXU->SetTitle("MEU");
05496 pStsYvsXU->GetXaxis()->SetTitle("X (m)");
05497 pStsYvsXU->GetXaxis()->CenterTitle();
05498 pStsYvsXU->GetYaxis()->SetTitle("Y (m)");
05499 pStsYvsXU->GetYaxis()->CenterTitle();
05500
05501 TProfile2D* pStsYvsXU1=new TProfile2D("pStsYvsXU1","pStsYvsXU1",
05502 nYvsX60,-4,4,nYvsX60,-4,4);
05503 pStsYvsXU1->SetTitle("MEU1");
05504 pStsYvsXU1->GetXaxis()->SetTitle("X (m)");
05505 pStsYvsXU1->GetXaxis()->CenterTitle();
05506 pStsYvsXU1->GetYaxis()->SetTitle("Y (m)");
05507 pStsYvsXU1->GetYaxis()->CenterTitle();
05508
05509 TProfile2D* pStsYvsXU2=new TProfile2D("pStsYvsXU2","pStsYvsXU2",
05510 nYvsX60,-4,4,nYvsX60,-4,4);
05511 pStsYvsXU2->SetTitle("MEU2");
05512 pStsYvsXU2->GetXaxis()->SetTitle("X (m)");
05513 pStsYvsXU2->GetXaxis()->CenterTitle();
05514 pStsYvsXU2->GetYaxis()->SetTitle("Y (m)");
05515 pStsYvsXU2->GetYaxis()->CenterTitle();
05516
05517 TProfile2D* pStsYvsXU1Trk=new TProfile2D("pStsYvsXU1Trk",
05518 "pStsYvsXU1Trk",
05519 nYvsX60,-4,4,nYvsX60,-4,4);
05520 pStsYvsXU1Trk->SetTitle("MEU");
05521 pStsYvsXU1Trk->GetXaxis()->SetTitle("X (m)");
05522 pStsYvsXU1Trk->GetXaxis()->CenterTitle();
05523 pStsYvsXU1Trk->GetYaxis()->SetTitle("Y (m)");
05524 pStsYvsXU1Trk->GetYaxis()->CenterTitle();
05525
05526 TProfile2D* pStsYvsXU2Trk=new TProfile2D("pStsYvsXU2Trk",
05527 "pStsYvsXU2Trk",
05528 nYvsX60,-4,4,nYvsX60,-4,4);
05529 pStsYvsXU2Trk->SetTitle("MEU");
05530 pStsYvsXU2Trk->GetXaxis()->SetTitle("X (m)");
05531 pStsYvsXU2Trk->GetXaxis()->CenterTitle();
05532 pStsYvsXU2Trk->GetYaxis()->SetTitle("Y (m)");
05533 pStsYvsXU2Trk->GetYaxis()->CenterTitle();
05534
05535 TProfile2D* pStsYvsXV=new TProfile2D("pStsYvsXV","pStsYvsXV",
05536 nYvsX60,-4,4,nYvsX60,-4,4);
05537 pStsYvsXV->SetTitle("MEU");
05538 pStsYvsXV->GetXaxis()->SetTitle("X (m)");
05539 pStsYvsXV->GetXaxis()->CenterTitle();
05540 pStsYvsXV->GetYaxis()->SetTitle("Y (m)");
05541 pStsYvsXV->GetYaxis()->CenterTitle();
05542
05543 TProfile2D* pStsYvsXV1=new TProfile2D("pStsYvsXV1","pStsYvsXV1",
05544 nYvsX60,-4,4,nYvsX60,-4,4);
05545 pStsYvsXV1->SetTitle("MEU");
05546 pStsYvsXV1->GetXaxis()->SetTitle("X (m)");
05547 pStsYvsXV1->GetXaxis()->CenterTitle();
05548 pStsYvsXV1->GetYaxis()->SetTitle("Y (m)");
05549 pStsYvsXV1->GetYaxis()->CenterTitle();
05550
05551 TProfile2D* pStsYvsXV2=new TProfile2D("pStsYvsXV2","pStsYvsXV2",
05552 nYvsX60,-4,4,nYvsX60,-4,4);
05553 pStsYvsXV2->SetTitle("MEU");
05554 pStsYvsXV2->GetXaxis()->SetTitle("X (m)");
05555 pStsYvsXV2->GetXaxis()->CenterTitle();
05556 pStsYvsXV2->GetYaxis()->SetTitle("Y (m)");
05557 pStsYvsXV2->GetYaxis()->CenterTitle();
05558
05559 TProfile2D* pStsYvsXV1Trk=new TProfile2D("pStsYvsXV1Trk",
05560 "pStsYvsXV1Trk",
05561 nYvsX60,-4,4,nYvsX60,-4,4);
05562 pStsYvsXV1Trk->SetTitle("MEU");
05563 pStsYvsXV1Trk->GetXaxis()->SetTitle("X (m)");
05564 pStsYvsXV1Trk->GetXaxis()->CenterTitle();
05565 pStsYvsXV1Trk->GetYaxis()->SetTitle("Y (m)");
05566 pStsYvsXV1Trk->GetYaxis()->CenterTitle();
05567
05568 TProfile2D* pStsYvsXV2Trk=new TProfile2D("pStsYvsXV2Trk",
05569 "pStsYvsXV2Trk",
05570 nYvsX60,-4,4,nYvsX60,-4,4);
05571 pStsYvsXV2Trk->SetTitle("MEU");
05572 pStsYvsXV2Trk->GetXaxis()->SetTitle("X (m)");
05573 pStsYvsXV2Trk->GetXaxis()->CenterTitle();
05574 pStsYvsXV2Trk->GetYaxis()->SetTitle("Y (m)");
05575 pStsYvsXV2Trk->GetYaxis()->CenterTitle();
05576
05577 TProfile2D* pAdcYvsXU=new TProfile2D("pAdcYvsXU","pAdcYvsXU",
05578 nYvsX60,-4,4,nYvsX60,-4,4);
05579 pAdcYvsXU->SetTitle("MEU");
05580 pAdcYvsXU->GetXaxis()->SetTitle("X (m)");
05581 pAdcYvsXU->GetXaxis()->CenterTitle();
05582 pAdcYvsXU->GetYaxis()->SetTitle("Y (m)");
05583 pAdcYvsXU->GetYaxis()->CenterTitle();
05584
05585 TProfile2D* pAdcYvsXU1=new TProfile2D("pAdcYvsXU1","pAdcYvsXU1",
05586 nYvsX60,-4,4,nYvsX60,-4,4);
05587 pAdcYvsXU1->SetTitle("MEU1");
05588 pAdcYvsXU1->GetXaxis()->SetTitle("X (m)");
05589 pAdcYvsXU1->GetXaxis()->CenterTitle();
05590 pAdcYvsXU1->GetYaxis()->SetTitle("Y (m)");
05591 pAdcYvsXU1->GetYaxis()->CenterTitle();
05592
05593 TProfile2D* pAdcYvsXU2=new TProfile2D("pAdcYvsXU2","pAdcYvsXU2",
05594 nYvsX60,-4,4,nYvsX60,-4,4);
05595 pAdcYvsXU2->SetTitle("MEU2");
05596 pAdcYvsXU2->GetXaxis()->SetTitle("X (m)");
05597 pAdcYvsXU2->GetXaxis()->CenterTitle();
05598 pAdcYvsXU2->GetYaxis()->SetTitle("Y (m)");
05599 pAdcYvsXU2->GetYaxis()->CenterTitle();
05600
05601 TProfile2D* pAdcYvsXV=new TProfile2D("pAdcYvsXV","pAdcYvsXV",
05602 nYvsX60,-4,4,nYvsX60,-4,4);
05603 pAdcYvsXV->SetTitle("MEU");
05604 pAdcYvsXV->GetXaxis()->SetTitle("X (m)");
05605 pAdcYvsXV->GetXaxis()->CenterTitle();
05606 pAdcYvsXV->GetYaxis()->SetTitle("Y (m)");
05607 pAdcYvsXV->GetYaxis()->CenterTitle();
05608
05609 TProfile2D* pAdcYvsXV1=new TProfile2D("pAdcYvsXV1","pAdcYvsXV1",
05610 nYvsX60,-4,4,nYvsX60,-4,4);
05611 pAdcYvsXV1->SetTitle("MEU");
05612 pAdcYvsXV1->GetXaxis()->SetTitle("X (m)");
05613 pAdcYvsXV1->GetXaxis()->CenterTitle();
05614 pAdcYvsXV1->GetYaxis()->SetTitle("Y (m)");
05615 pAdcYvsXV1->GetYaxis()->CenterTitle();
05616
05617 TProfile2D* pAdcYvsXV2=new TProfile2D("pAdcYvsXV2","pAdcYvsXV2",
05618 nYvsX60,-4,4,nYvsX60,-4,4);
05619 pAdcYvsXV2->SetTitle("MEU");
05620 pAdcYvsXV2->GetXaxis()->SetTitle("X (m)");
05621 pAdcYvsXV2->GetXaxis()->CenterTitle();
05622 pAdcYvsXV2->GetYaxis()->SetTitle("Y (m)");
05623 pAdcYvsXV2->GetYaxis()->CenterTitle();
05624
05625 TProfile2D* pPeYvsXU=new TProfile2D("pPeYvsXU","pPeYvsXU",
05626 nYvsX60,-4,4,nYvsX60,-4,4);
05627 pPeYvsXU->SetTitle("MEU");
05628 pPeYvsXU->GetXaxis()->SetTitle("X (m)");
05629 pPeYvsXU->GetXaxis()->CenterTitle();
05630 pPeYvsXU->GetYaxis()->SetTitle("Y (m)");
05631 pPeYvsXU->GetYaxis()->CenterTitle();
05632
05633 TProfile2D* pPeYvsXU1=new TProfile2D("pPeYvsXU1","pPeYvsXU1",
05634 nYvsX60,-4,4,nYvsX60,-4,4);
05635 pPeYvsXU1->SetTitle("MEU1");
05636 pPeYvsXU1->GetXaxis()->SetTitle("X (m)");
05637 pPeYvsXU1->GetXaxis()->CenterTitle();
05638 pPeYvsXU1->GetYaxis()->SetTitle("Y (m)");
05639 pPeYvsXU1->GetYaxis()->CenterTitle();
05640
05641 TProfile2D* pPeYvsXU2=new TProfile2D("pPeYvsXU2","pPeYvsXU2",
05642 nYvsX60,-4,4,nYvsX60,-4,4);
05643 pPeYvsXU2->SetTitle("MEU2");
05644 pPeYvsXU2->GetXaxis()->SetTitle("X (m)");
05645 pPeYvsXU2->GetXaxis()->CenterTitle();
05646 pPeYvsXU2->GetYaxis()->SetTitle("Y (m)");
05647 pPeYvsXU2->GetYaxis()->CenterTitle();
05648
05649 TProfile2D* pPeYvsXV=new TProfile2D("pPeYvsXV","pPeYvsXV",
05650 nYvsX60,-4,4,nYvsX60,-4,4);
05651 pPeYvsXV->SetTitle("MEU");
05652 pPeYvsXV->GetXaxis()->SetTitle("X (m)");
05653 pPeYvsXV->GetXaxis()->CenterTitle();
05654 pPeYvsXV->GetYaxis()->SetTitle("Y (m)");
05655 pPeYvsXV->GetYaxis()->CenterTitle();
05656
05657 TProfile2D* pPeYvsXV1=new TProfile2D("pPeYvsXV1","pPeYvsXV1",
05658 nYvsX60,-4,4,nYvsX60,-4,4);
05659 pPeYvsXV1->SetTitle("MEU");
05660 pPeYvsXV1->GetXaxis()->SetTitle("X (m)");
05661 pPeYvsXV1->GetXaxis()->CenterTitle();
05662 pPeYvsXV1->GetYaxis()->SetTitle("Y (m)");
05663 pPeYvsXV1->GetYaxis()->CenterTitle();
05664
05665 TProfile2D* pPeYvsXV2=new TProfile2D("pPeYvsXV2","pPeYvsXV2",
05666 nYvsX60,-4,4,nYvsX60,-4,4);
05667 pPeYvsXV2->SetTitle("MEU");
05668 pPeYvsXV2->GetXaxis()->SetTitle("X (m)");
05669 pPeYvsXV2->GetXaxis()->CenterTitle();
05670 pPeYvsXV2->GetYaxis()->SetTitle("Y (m)");
05671 pPeYvsXV2->GetYaxis()->CenterTitle();
05672
05673
05674
05676 TH2F* hYvsXF=new TH2F("hYvsXF","hYvsXF",nYvsX60,-4,4,nYvsX60,-4,4);
05677 hYvsXF->SetTitle("MEU");
05678 hYvsXF->GetXaxis()->SetTitle("X (m)");
05679 hYvsXF->GetXaxis()->CenterTitle();
05680 hYvsXF->GetYaxis()->SetTitle("Y (m)");
05681 hYvsXF->GetYaxis()->CenterTitle();
05682
05683 TH2F* hYvsXFVtx=new TH2F
05684 ("hYvsXFVtx","hYvsXFVtx",nYvsX60,-4,4,nYvsX60,-4,4);
05685 hYvsXFVtx->SetTitle("MEU");
05686 hYvsXFVtx->GetXaxis()->SetTitle("X (m)");
05687 hYvsXFVtx->GetXaxis()->CenterTitle();
05688 hYvsXFVtx->GetYaxis()->SetTitle("Y (m)");
05689 hYvsXFVtx->GetYaxis()->CenterTitle();
05690
05691 TH2F* hYvsXFEnd=new TH2F
05692 ("hYvsXFEnd","hYvsXFEnd",nYvsX60,-4,4,nYvsX60,-4,4);
05693 hYvsXFEnd->SetTitle("MEU");
05694 hYvsXFEnd->GetXaxis()->SetTitle("X (m)");
05695 hYvsXFEnd->GetXaxis()->CenterTitle();
05696 hYvsXFEnd->GetYaxis()->SetTitle("Y (m)");
05697 hYvsXFEnd->GetYaxis()->CenterTitle();
05698
05699 TProfile2D* pYvsXF=new TProfile2D
05700 ("pYvsXF","pYvsXF",nYvsX60,-4,4,nYvsX60,-4,4);
05701 pYvsXF->SetTitle("MEU");
05702 pYvsXF->GetXaxis()->SetTitle("X (m)");
05703 pYvsXF->GetXaxis()->CenterTitle();
05704 pYvsXF->GetYaxis()->SetTitle("Y (m)");
05705 pYvsXF->GetYaxis()->CenterTitle();
05706
05707 TH2F* hYvsXFU=new TH2F
05708 ("hYvsXFU","hYvsXFU",nYvsX60,-4,4,nYvsX60,-4,4);
05709 hYvsXFU->SetTitle("MEU");
05710 hYvsXFU->GetXaxis()->SetTitle("X (m)");
05711 hYvsXFU->GetXaxis()->CenterTitle();
05712 hYvsXFU->GetYaxis()->SetTitle("Y (m)");
05713 hYvsXFU->GetYaxis()->CenterTitle();
05714
05715 TProfile2D* pYvsXFU=new TProfile2D
05716 ("pYvsXFU","pYvsXFU",nYvsX60,-4,4,nYvsX60,-4,4);
05717 pYvsXFU->SetTitle("MEU");
05718 pYvsXFU->GetXaxis()->SetTitle("X (m)");
05719 pYvsXFU->GetXaxis()->CenterTitle();
05720 pYvsXFU->GetYaxis()->SetTitle("Y (m)");
05721 pYvsXFU->GetYaxis()->CenterTitle();
05722
05723 TProfile2D* pYvsXFU1=new TProfile2D
05724 ("pYvsXFU1","pYvsXFU1",nYvsX60,-4,4,nYvsX60,-4,4);
05725 pYvsXFU1->SetTitle("MEU1");
05726 pYvsXFU1->GetXaxis()->SetTitle("X (m)");
05727 pYvsXFU1->GetXaxis()->CenterTitle();
05728 pYvsXFU1->GetYaxis()->SetTitle("Y (m)");
05729 pYvsXFU1->GetYaxis()->CenterTitle();
05730
05731 TProfile2D* pYvsXFU2=new TProfile2D
05732 ("pYvsXFU2","pYvsXFU2",nYvsX60,-4,4,nYvsX60,-4,4);
05733 pYvsXFU2->SetTitle("MEU2");
05734 pYvsXFU2->GetXaxis()->SetTitle("X (m)");
05735 pYvsXFU2->GetXaxis()->CenterTitle();
05736 pYvsXFU2->GetYaxis()->SetTitle("Y (m)");
05737 pYvsXFU2->GetYaxis()->CenterTitle();
05738
05739 TH2F* hYvsXFV=new TH2F
05740 ("hYvsXFV","hYvsXFV",nYvsX60,-4,4,nYvsX60,-4,4);
05741 hYvsXFV->SetTitle("MEU");
05742 hYvsXFV->GetXaxis()->SetTitle("X (m)");
05743 hYvsXFV->GetXaxis()->CenterTitle();
05744 hYvsXFV->GetYaxis()->SetTitle("Y (m)");
05745 hYvsXFV->GetYaxis()->CenterTitle();
05746
05747 TProfile2D* pYvsXFV=new TProfile2D("pYvsXFV","pYvsXFV",
05748 nYvsX60,-4,4,nYvsX60,-4,4);
05749 pYvsXFV->SetTitle("MEU");
05750 pYvsXFV->GetXaxis()->SetTitle("X (m)");
05751 pYvsXFV->GetXaxis()->CenterTitle();
05752 pYvsXFV->GetYaxis()->SetTitle("Y (m)");
05753 pYvsXFV->GetYaxis()->CenterTitle();
05754
05755 TProfile2D* pYvsXFV1=new TProfile2D("pYvsXFV1","pYvsXFV1",
05756 nYvsX60,-4,4,nYvsX60,-4,4);
05757 pYvsXFV1->SetTitle("MEU");
05758 pYvsXFV1->GetXaxis()->SetTitle("X (m)");
05759 pYvsXFV1->GetXaxis()->CenterTitle();
05760 pYvsXFV1->GetYaxis()->SetTitle("Y (m)");
05761 pYvsXFV1->GetYaxis()->CenterTitle();
05762
05763 TProfile2D* pYvsXFV2=new TProfile2D("pYvsXFV2","pYvsXFV2",
05764 nYvsX60,-4,4,nYvsX60,-4,4);
05765 pYvsXFV2->SetTitle("MEU");
05766 pYvsXFV2->GetXaxis()->SetTitle("X (m)");
05767 pYvsXFV2->GetXaxis()->CenterTitle();
05768 pYvsXFV2->GetYaxis()->SetTitle("Y (m)");
05769 pYvsXFV2->GetYaxis()->CenterTitle();
05770
05771 TProfile2D* pStsYvsXFU=new TProfile2D("pStsYvsXFU","pStsYvsXFU",
05772 nYvsX60,-4,4,nYvsX60,-4,4);
05773 pStsYvsXFU->SetTitle("MEU");
05774 pStsYvsXFU->GetXaxis()->SetTitle("X (m)");
05775 pStsYvsXFU->GetXaxis()->CenterTitle();
05776 pStsYvsXFU->GetYaxis()->SetTitle("Y (m)");
05777 pStsYvsXFU->GetYaxis()->CenterTitle();
05778
05779 TProfile2D* pStsYvsXFU1=new TProfile2D("pStsYvsXFU1","pStsYvsXFU1",
05780 nYvsX60,-4,4,nYvsX60,-4,4);
05781 pStsYvsXFU1->SetTitle("MEU1");
05782 pStsYvsXFU1->GetXaxis()->SetTitle("X (m)");
05783 pStsYvsXFU1->GetXaxis()->CenterTitle();
05784 pStsYvsXFU1->GetYaxis()->SetTitle("Y (m)");
05785 pStsYvsXFU1->GetYaxis()->CenterTitle();
05786
05787 TProfile2D* pStsYvsXFU2=new TProfile2D("pStsYvsXFU2","pStsYvsXFU2",
05788 nYvsX60,-4,4,nYvsX60,-4,4);
05789 pStsYvsXFU2->SetTitle("MEU2");
05790 pStsYvsXFU2->GetXaxis()->SetTitle("X (m)");
05791 pStsYvsXFU2->GetXaxis()->CenterTitle();
05792 pStsYvsXFU2->GetYaxis()->SetTitle("Y (m)");
05793 pStsYvsXFU2->GetYaxis()->CenterTitle();
05794
05795 TProfile2D* pStsYvsXFU1Trk=new TProfile2D("pStsYvsXFU1Trk",
05796 "pStsYvsXFU1Trk",
05797 nYvsX60,-4,4,nYvsX60,-4,4);
05798 pStsYvsXFU1Trk->SetTitle("MEU");
05799 pStsYvsXFU1Trk->GetXaxis()->SetTitle("X (m)");
05800 pStsYvsXFU1Trk->GetXaxis()->CenterTitle();
05801 pStsYvsXFU1Trk->GetYaxis()->SetTitle("Y (m)");
05802 pStsYvsXFU1Trk->GetYaxis()->CenterTitle();
05803
05804 TProfile2D* pStsYvsXFU2Trk=new TProfile2D("pStsYvsXFU2Trk",
05805 "pStsYvsXFU2Trk",
05806 nYvsX60,-4,4,nYvsX60,-4,4);
05807 pStsYvsXFU2Trk->SetTitle("MEU");
05808 pStsYvsXFU2Trk->GetXaxis()->SetTitle("X (m)");
05809 pStsYvsXFU2Trk->GetXaxis()->CenterTitle();
05810 pStsYvsXFU2Trk->GetYaxis()->SetTitle("Y (m)");
05811 pStsYvsXFU2Trk->GetYaxis()->CenterTitle();
05812
05813 TProfile2D* pStsYvsXFV=new TProfile2D("pStsYvsXFV","pStsYvsXFV",
05814 nYvsX60,-4,4,nYvsX60,-4,4);
05815 pStsYvsXFV->SetTitle("MEU");
05816 pStsYvsXFV->GetXaxis()->SetTitle("X (m)");
05817 pStsYvsXFV->GetXaxis()->CenterTitle();
05818 pStsYvsXFV->GetYaxis()->SetTitle("Y (m)");
05819 pStsYvsXFV->GetYaxis()->CenterTitle();
05820
05821 TProfile2D* pStsYvsXFV1=new TProfile2D("pStsYvsXFV1","pStsYvsXFV1",
05822 nYvsX60,-4,4,nYvsX60,-4,4);
05823 pStsYvsXFV1->SetTitle("MEU");
05824 pStsYvsXFV1->GetXaxis()->SetTitle("X (m)");
05825 pStsYvsXFV1->GetXaxis()->CenterTitle();
05826 pStsYvsXFV1->GetYaxis()->SetTitle("Y (m)");
05827 pStsYvsXFV1->GetYaxis()->CenterTitle();
05828
05829 TProfile2D* pStsYvsXFV2=new TProfile2D("pStsYvsXFV2","pStsYvsXFV2",
05830 nYvsX60,-4,4,nYvsX60,-4,4);
05831 pStsYvsXFV2->SetTitle("MEU");
05832 pStsYvsXFV2->GetXaxis()->SetTitle("X (m)");
05833 pStsYvsXFV2->GetXaxis()->CenterTitle();
05834 pStsYvsXFV2->GetYaxis()->SetTitle("Y (m)");
05835 pStsYvsXFV2->GetYaxis()->CenterTitle();
05836
05837 TProfile2D* pStsYvsXFV1Trk=new TProfile2D("pStsYvsXFV1Trk",
05838 "pStsYvsXFV1Trk",
05839 nYvsX60,-4,4,nYvsX60,-4,4);
05840 pStsYvsXFV1Trk->SetTitle("MEU");
05841 pStsYvsXFV1Trk->GetXaxis()->SetTitle("X (m)");
05842 pStsYvsXFV1Trk->GetXaxis()->CenterTitle();
05843 pStsYvsXFV1Trk->GetYaxis()->SetTitle("Y (m)");
05844 pStsYvsXFV1Trk->GetYaxis()->CenterTitle();
05845
05846 TProfile2D* pStsYvsXFV2Trk=new TProfile2D("pStsYvsXFV2Trk",
05847 "pStsYvsXFV2Trk",
05848 nYvsX60,-4,4,nYvsX60,-4,4);
05849 pStsYvsXFV2Trk->SetTitle("MEU");
05850 pStsYvsXFV2Trk->GetXaxis()->SetTitle("X (m)");
05851 pStsYvsXFV2Trk->GetXaxis()->CenterTitle();
05852 pStsYvsXFV2Trk->GetYaxis()->SetTitle("Y (m)");
05853 pStsYvsXFV2Trk->GetYaxis()->CenterTitle();
05854
05855 TProfile2D* pAdcYvsXFU=new TProfile2D("pAdcYvsXFU","pAdcYvsXFU",
05856 nYvsX60,-4,4,nYvsX60,-4,4);
05857 pAdcYvsXFU->SetTitle("MEU");
05858 pAdcYvsXFU->GetXaxis()->SetTitle("X (m)");
05859 pAdcYvsXFU->GetXaxis()->CenterTitle();
05860 pAdcYvsXFU->GetYaxis()->SetTitle("Y (m)");
05861 pAdcYvsXFU->GetYaxis()->CenterTitle();
05862
05863 TProfile2D* pAdcYvsXFU1=new TProfile2D("pAdcYvsXFU1","pAdcYvsXFU1",
05864 nYvsX60,-4,4,nYvsX60,-4,4);
05865 pAdcYvsXFU1->SetTitle("MEU1");
05866 pAdcYvsXFU1->GetXaxis()->SetTitle("X (m)");
05867 pAdcYvsXFU1->GetXaxis()->CenterTitle();
05868 pAdcYvsXFU1->GetYaxis()->SetTitle("Y (m)");
05869 pAdcYvsXFU1->GetYaxis()->CenterTitle();
05870
05871 TProfile2D* pAdcYvsXFU2=new TProfile2D("pAdcYvsXFU2","pAdcYvsXFU2",
05872 nYvsX60,-4,4,nYvsX60,-4,4);
05873 pAdcYvsXFU2->SetTitle("MEU2");
05874 pAdcYvsXFU2->GetXaxis()->SetTitle("X (m)");
05875 pAdcYvsXFU2->GetXaxis()->CenterTitle();
05876 pAdcYvsXFU2->GetYaxis()->SetTitle("Y (m)");
05877 pAdcYvsXFU2->GetYaxis()->CenterTitle();
05878
05879 TProfile2D* pAdcYvsXFV=new TProfile2D("pAdcYvsXFV","pAdcYvsXFV",
05880 nYvsX60,-4,4,nYvsX60,-4,4);
05881 pAdcYvsXFV->SetTitle("MEU");
05882 pAdcYvsXFV->GetXaxis()->SetTitle("X (m)");
05883 pAdcYvsXFV->GetXaxis()->CenterTitle();
05884 pAdcYvsXFV->GetYaxis()->SetTitle("Y (m)");
05885 pAdcYvsXFV->GetYaxis()->CenterTitle();
05886
05887 TProfile2D* pAdcYvsXFV1=new TProfile2D("pAdcYvsXFV1","pAdcYvsXFV1",
05888 nYvsX60,-4,4,nYvsX60,-4,4);
05889 pAdcYvsXFV1->SetTitle("MEU");
05890 pAdcYvsXFV1->GetXaxis()->SetTitle("X (m)");
05891 pAdcYvsXFV1->GetXaxis()->CenterTitle();
05892 pAdcYvsXFV1->GetYaxis()->SetTitle("Y (m)");
05893 pAdcYvsXFV1->GetYaxis()->CenterTitle();
05894
05895 TProfile2D* pAdcYvsXFV2=new TProfile2D("pAdcYvsXFV2","pAdcYvsXFV2",
05896 nYvsX60,-4,4,nYvsX60,-4,4);
05897 pAdcYvsXFV2->SetTitle("MEU");
05898 pAdcYvsXFV2->GetXaxis()->SetTitle("X (m)");
05899 pAdcYvsXFV2->GetXaxis()->CenterTitle();
05900 pAdcYvsXFV2->GetYaxis()->SetTitle("Y (m)");
05901 pAdcYvsXFV2->GetYaxis()->CenterTitle();
05902
05903
05904
05906 TH2F* hYvsXP=new TH2F("hYvsXP","hYvsXP",nYvsX60,-4,4,nYvsX60,-4,4);
05907 hYvsXP->SetTitle("MEU");
05908 hYvsXP->GetXaxis()->SetTitle("X (m)");
05909 hYvsXP->GetXaxis()->CenterTitle();
05910 hYvsXP->GetYaxis()->SetTitle("Y (m)");
05911 hYvsXP->GetYaxis()->CenterTitle();
05912
05913 TH2F* hYvsXPVtx=new TH2F
05914 ("hYvsXPVtx","hYvsXPVtx",nYvsX60,-4,4,nYvsX60,-4,4);
05915 hYvsXPVtx->SetTitle("MEU");
05916 hYvsXPVtx->GetXaxis()->SetTitle("X (m)");
05917 hYvsXPVtx->GetXaxis()->CenterTitle();
05918 hYvsXPVtx->GetYaxis()->SetTitle("Y (m)");
05919 hYvsXPVtx->GetYaxis()->CenterTitle();
05920
05921 TH2F* hYvsXPEnd=new TH2F
05922 ("hYvsXPEnd","hYvsXPEnd",nYvsX60,-4,4,nYvsX60,-4,4);
05923 hYvsXPEnd->SetTitle("MEU");
05924 hYvsXPEnd->GetXaxis()->SetTitle("X (m)");
05925 hYvsXPEnd->GetXaxis()->CenterTitle();
05926 hYvsXPEnd->GetYaxis()->SetTitle("Y (m)");
05927 hYvsXPEnd->GetYaxis()->CenterTitle();
05928
05929 TProfile2D* pYvsXP=new TProfile2D
05930 ("pYvsXP","pYvsXP",nYvsX60,-4,4,nYvsX60,-4,4);
05931 pYvsXP->SetTitle("MEU");
05932 pYvsXP->GetXaxis()->SetTitle("X (m)");
05933 pYvsXP->GetXaxis()->CenterTitle();
05934 pYvsXP->GetYaxis()->SetTitle("Y (m)");
05935 pYvsXP->GetYaxis()->CenterTitle();
05936
05937 TH2F* hYvsXPU=new TH2F
05938 ("hYvsXPU","hYvsXPU",nYvsX60,-4,4,nYvsX60,-4,4);
05939 hYvsXPU->SetTitle("MEU");
05940 hYvsXPU->GetXaxis()->SetTitle("X (m)");
05941 hYvsXPU->GetXaxis()->CenterTitle();
05942 hYvsXPU->GetYaxis()->SetTitle("Y (m)");
05943 hYvsXPU->GetYaxis()->CenterTitle();
05944
05945 TProfile2D* pYvsXPU=new TProfile2D
05946 ("pYvsXPU","pYvsXPU",nYvsX60,-4,4,nYvsX60,-4,4);
05947 pYvsXPU->SetTitle("MEU");
05948 pYvsXPU->GetXaxis()->SetTitle("X (m)");
05949 pYvsXPU->GetXaxis()->CenterTitle();
05950 pYvsXPU->GetYaxis()->SetTitle("Y (m)");
05951 pYvsXPU->GetYaxis()->CenterTitle();
05952
05953 TProfile2D* pYvsXPU1=new TProfile2D
05954 ("pYvsXPU1","pYvsXPU1",nYvsX60,-4,4,nYvsX60,-4,4);
05955 pYvsXPU1->SetTitle("MEU1");
05956 pYvsXPU1->GetXaxis()->SetTitle("X (m)");
05957 pYvsXPU1->GetXaxis()->CenterTitle();
05958 pYvsXPU1->GetYaxis()->SetTitle("Y (m)");
05959 pYvsXPU1->GetYaxis()->CenterTitle();
05960
05961 TProfile2D* pYvsXPU2=new TProfile2D
05962 ("pYvsXPU2","pYvsXPU2",nYvsX60,-4,4,nYvsX60,-4,4);
05963 pYvsXPU2->SetTitle("MEU2");
05964 pYvsXPU2->GetXaxis()->SetTitle("X (m)");
05965 pYvsXPU2->GetXaxis()->CenterTitle();
05966 pYvsXPU2->GetYaxis()->SetTitle("Y (m)");
05967 pYvsXPU2->GetYaxis()->CenterTitle();
05968
05969 TH2F* hYvsXPV=new TH2F
05970 ("hYvsXPV","hYvsXPV",nYvsX60,-4,4,nYvsX60,-4,4);
05971 hYvsXPV->SetTitle("MEU");
05972 hYvsXPV->GetXaxis()->SetTitle("X (m)");
05973 hYvsXPV->GetXaxis()->CenterTitle();
05974 hYvsXPV->GetYaxis()->SetTitle("Y (m)");
05975 hYvsXPV->GetYaxis()->CenterTitle();
05976
05977 TProfile2D* pYvsXPV=new TProfile2D("pYvsXPV","pYvsXPV",
05978 nYvsX60,-4,4,nYvsX60,-4,4);
05979 pYvsXPV->SetTitle("MEU");
05980 pYvsXPV->GetXaxis()->SetTitle("X (m)");
05981 pYvsXPV->GetXaxis()->CenterTitle();
05982 pYvsXPV->GetYaxis()->SetTitle("Y (m)");
05983 pYvsXPV->GetYaxis()->CenterTitle();
05984
05985 TProfile2D* pYvsXPV1=new TProfile2D("pYvsXPV1","pYvsXPV1",
05986 nYvsX60,-4,4,nYvsX60,-4,4);
05987 pYvsXPV1->SetTitle("MEU");
05988 pYvsXPV1->GetXaxis()->SetTitle("X (m)");
05989 pYvsXPV1->GetXaxis()->CenterTitle();
05990 pYvsXPV1->GetYaxis()->SetTitle("Y (m)");
05991 pYvsXPV1->GetYaxis()->CenterTitle();
05992
05993 TProfile2D* pYvsXPV2=new TProfile2D("pYvsXPV2","pYvsXPV2",
05994 nYvsX60,-4,4,nYvsX60,-4,4);
05995 pYvsXPV2->SetTitle("MEU");
05996 pYvsXPV2->GetXaxis()->SetTitle("X (m)");
05997 pYvsXPV2->GetXaxis()->CenterTitle();
05998 pYvsXPV2->GetYaxis()->SetTitle("Y (m)");
05999 pYvsXPV2->GetYaxis()->CenterTitle();
06000
06001 TProfile2D* pStsYvsXPU=new TProfile2D("pStsYvsXPU","pStsYvsXPU",
06002 nYvsX60,-4,4,nYvsX60,-4,4);
06003 pStsYvsXPU->SetTitle("MEU");
06004 pStsYvsXPU->GetXaxis()->SetTitle("X (m)");
06005 pStsYvsXPU->GetXaxis()->CenterTitle();
06006 pStsYvsXPU->GetYaxis()->SetTitle("Y (m)");
06007 pStsYvsXPU->GetYaxis()->CenterTitle();
06008
06009 TProfile2D* pStsYvsXPU1=new TProfile2D("pStsYvsXPU1","pStsYvsXPU1",
06010 nYvsX60,-4,4,nYvsX60,-4,4);
06011 pStsYvsXPU1->SetTitle("MEU1");
06012 pStsYvsXPU1->GetXaxis()->SetTitle("X (m)");
06013 pStsYvsXPU1->GetXaxis()->CenterTitle();
06014 pStsYvsXPU1->GetYaxis()->SetTitle("Y (m)");
06015 pStsYvsXPU1->GetYaxis()->CenterTitle();
06016
06017 TProfile2D* pStsYvsXPU2=new TProfile2D("pStsYvsXPU2","pStsYvsXPU2",
06018 nYvsX60,-4,4,nYvsX60,-4,4);
06019 pStsYvsXPU2->SetTitle("MEU2");
06020 pStsYvsXPU2->GetXaxis()->SetTitle("X (m)");
06021 pStsYvsXPU2->GetXaxis()->CenterTitle();
06022 pStsYvsXPU2->GetYaxis()->SetTitle("Y (m)");
06023 pStsYvsXPU2->GetYaxis()->CenterTitle();
06024
06025 TProfile2D* pStsYvsXPU1Trk=new TProfile2D("pStsYvsXPU1Trk",
06026 "pStsYvsXPU1Trk",
06027 nYvsX60,-4,4,nYvsX60,-4,4);
06028 pStsYvsXPU1Trk->SetTitle("MEU");
06029 pStsYvsXPU1Trk->GetXaxis()->SetTitle("X (m)");
06030 pStsYvsXPU1Trk->GetXaxis()->CenterTitle();
06031 pStsYvsXPU1Trk->GetYaxis()->SetTitle("Y (m)");
06032 pStsYvsXPU1Trk->GetYaxis()->CenterTitle();
06033
06034 TProfile2D* pStsYvsXPU2Trk=new TProfile2D("pStsYvsXPU2Trk",
06035 "pStsYvsXPU2Trk",
06036 nYvsX60,-4,4,nYvsX60,-4,4);
06037 pStsYvsXPU2Trk->SetTitle("MEU");
06038 pStsYvsXPU2Trk->GetXaxis()->SetTitle("X (m)");
06039 pStsYvsXPU2Trk->GetXaxis()->CenterTitle();
06040 pStsYvsXPU2Trk->GetYaxis()->SetTitle("Y (m)");
06041 pStsYvsXPU2Trk->GetYaxis()->CenterTitle();
06042
06043 TProfile2D* pStsYvsXPV=new TProfile2D("pStsYvsXPV","pStsYvsXPV",
06044 nYvsX60,-4,4,nYvsX60,-4,4);
06045 pStsYvsXPV->SetTitle("MEU");
06046 pStsYvsXPV->GetXaxis()->SetTitle("X (m)");
06047 pStsYvsXPV->GetXaxis()->CenterTitle();
06048 pStsYvsXPV->GetYaxis()->SetTitle("Y (m)");
06049 pStsYvsXPV->GetYaxis()->CenterTitle();
06050
06051 TProfile2D* pStsYvsXPV1=new TProfile2D("pStsYvsXPV1","pStsYvsXPV1",
06052 nYvsX60,-4,4,nYvsX60,-4,4);
06053 pStsYvsXPV1->SetTitle("MEU");
06054 pStsYvsXPV1->GetXaxis()->SetTitle("X (m)");
06055 pStsYvsXPV1->GetXaxis()->CenterTitle();
06056 pStsYvsXPV1->GetYaxis()->SetTitle("Y (m)");
06057 pStsYvsXPV1->GetYaxis()->CenterTitle();
06058
06059 TProfile2D* pStsYvsXPV2=new TProfile2D("pStsYvsXPV2","pStsYvsXPV2",
06060 nYvsX60,-4,4,nYvsX60,-4,4);
06061 pStsYvsXPV2->SetTitle("MEU");
06062 pStsYvsXPV2->GetXaxis()->SetTitle("X (m)");
06063 pStsYvsXPV2->GetXaxis()->CenterTitle();
06064 pStsYvsXPV2->GetYaxis()->SetTitle("Y (m)");
06065 pStsYvsXPV2->GetYaxis()->CenterTitle();
06066
06067 TProfile2D* pStsYvsXPV1Trk=new TProfile2D("pStsYvsXPV1Trk",
06068 "pStsYvsXPV1Trk",
06069 nYvsX60,-4,4,nYvsX60,-4,4);
06070 pStsYvsXPV1Trk->SetTitle("MEU");
06071 pStsYvsXPV1Trk->GetXaxis()->SetTitle("X (m)");
06072 pStsYvsXPV1Trk->GetXaxis()->CenterTitle();
06073 pStsYvsXPV1Trk->GetYaxis()->SetTitle("Y (m)");
06074 pStsYvsXPV1Trk->GetYaxis()->CenterTitle();
06075
06076 TProfile2D* pStsYvsXPV2Trk=new TProfile2D("pStsYvsXPV2Trk",
06077 "pStsYvsXPV2Trk",
06078 nYvsX60,-4,4,nYvsX60,-4,4);
06079 pStsYvsXPV2Trk->SetTitle("MEU");
06080 pStsYvsXPV2Trk->GetXaxis()->SetTitle("X (m)");
06081 pStsYvsXPV2Trk->GetXaxis()->CenterTitle();
06082 pStsYvsXPV2Trk->GetYaxis()->SetTitle("Y (m)");
06083 pStsYvsXPV2Trk->GetYaxis()->CenterTitle();
06084
06085 TProfile2D* pAdcYvsXPU=new TProfile2D("pAdcYvsXPU","pAdcYvsXPU",
06086 nYvsX60,-4,4,nYvsX60,-4,4);
06087 pAdcYvsXPU->SetTitle("MEU");
06088 pAdcYvsXPU->GetXaxis()->SetTitle("X (m)");
06089 pAdcYvsXPU->GetXaxis()->CenterTitle();
06090 pAdcYvsXPU->GetYaxis()->SetTitle("Y (m)");
06091 pAdcYvsXPU->GetYaxis()->CenterTitle();
06092
06093 TProfile2D* pAdcYvsXPU1=new TProfile2D("pAdcYvsXPU1","pAdcYvsXPU1",
06094 nYvsX60,-4,4,nYvsX60,-4,4);
06095 pAdcYvsXPU1->SetTitle("MEU1");
06096 pAdcYvsXPU1->GetXaxis()->SetTitle("X (m)");
06097 pAdcYvsXPU1->GetXaxis()->CenterTitle();
06098 pAdcYvsXPU1->GetYaxis()->SetTitle("Y (m)");
06099 pAdcYvsXPU1->GetYaxis()->CenterTitle();
06100
06101 TProfile2D* pAdcYvsXPU2=new TProfile2D("pAdcYvsXPU2","pAdcYvsXPU2",
06102 nYvsX60,-4,4,nYvsX60,-4,4);
06103 pAdcYvsXPU2->SetTitle("MEU2");
06104 pAdcYvsXPU2->GetXaxis()->SetTitle("X (m)");
06105 pAdcYvsXPU2->GetXaxis()->CenterTitle();
06106 pAdcYvsXPU2->GetYaxis()->SetTitle("Y (m)");
06107 pAdcYvsXPU2->GetYaxis()->CenterTitle();
06108
06109 TProfile2D* pAdcYvsXPV=new TProfile2D("pAdcYvsXPV","pAdcYvsXPV",
06110 nYvsX60,-4,4,nYvsX60,-4,4);
06111 pAdcYvsXPV->SetTitle("MEU");
06112 pAdcYvsXPV->GetXaxis()->SetTitle("X (m)");
06113 pAdcYvsXPV->GetXaxis()->CenterTitle();
06114 pAdcYvsXPV->GetYaxis()->SetTitle("Y (m)");
06115 pAdcYvsXPV->GetYaxis()->CenterTitle();
06116
06117 TProfile2D* pAdcYvsXPV1=new TProfile2D("pAdcYvsXPV1","pAdcYvsXPV1",
06118 nYvsX60,-4,4,nYvsX60,-4,4);
06119 pAdcYvsXPV1->SetTitle("MEU");
06120 pAdcYvsXPV1->GetXaxis()->SetTitle("X (m)");
06121 pAdcYvsXPV1->GetXaxis()->CenterTitle();
06122 pAdcYvsXPV1->GetYaxis()->SetTitle("Y (m)");
06123 pAdcYvsXPV1->GetYaxis()->CenterTitle();
06124
06125 TProfile2D* pAdcYvsXPV2=new TProfile2D("pAdcYvsXPV2","pAdcYvsXPV2",
06126 nYvsX60,-4,4,nYvsX60,-4,4);
06127 pAdcYvsXPV2->SetTitle("MEU");
06128 pAdcYvsXPV2->GetXaxis()->SetTitle("X (m)");
06129 pAdcYvsXPV2->GetXaxis()->CenterTitle();
06130 pAdcYvsXPV2->GetYaxis()->SetTitle("Y (m)");
06131 pAdcYvsXPV2->GetYaxis()->CenterTitle();
06133
06134
06135
06136
06138 Int_t nYvsX100=100;
06139 TH2F* hYvsX100=new TH2F
06140 ("hYvsX100","hYvsX100",nYvsX100,-4,4,nYvsX100,-4,4);
06141 hYvsX100->SetTitle("MEU");
06142 hYvsX100->GetXaxis()->SetTitle("X (m)");
06143 hYvsX100->GetXaxis()->CenterTitle();
06144 hYvsX100->GetYaxis()->SetTitle("Y (m)");
06145 hYvsX100->GetYaxis()->CenterTitle();
06146
06147 TH2F* hYvsX100Vtx=new TH2F
06148 ("hYvsX100Vtx","hYvsX100Vtx",nYvsX100,-4,4,nYvsX100,-4,4);
06149 hYvsX100Vtx->SetTitle("MEU");
06150 hYvsX100Vtx->GetXaxis()->SetTitle("X (m)");
06151 hYvsX100Vtx->GetXaxis()->CenterTitle();
06152 hYvsX100Vtx->GetYaxis()->SetTitle("Y (m)");
06153 hYvsX100Vtx->GetYaxis()->CenterTitle();
06154
06155 TH2F* hYvsX100End=new TH2F
06156 ("hYvsX100End","hYvsX100End",nYvsX100,-4,4,nYvsX100,-4,4);
06157 hYvsX100End->SetTitle("MEU");
06158 hYvsX100End->GetXaxis()->SetTitle("X (m)");
06159 hYvsX100End->GetXaxis()->CenterTitle();
06160 hYvsX100End->GetYaxis()->SetTitle("Y (m)");
06161 hYvsX100End->GetYaxis()->CenterTitle();
06162
06163 TProfile2D* pYvsX100=new TProfile2D
06164 ("pYvsX100","pYvsX100",nYvsX100,-4,4,nYvsX100,-4,4);
06165 pYvsX100->SetTitle("MEU");
06166 pYvsX100->GetXaxis()->SetTitle("X (m)");
06167 pYvsX100->GetXaxis()->CenterTitle();
06168 pYvsX100->GetYaxis()->SetTitle("Y (m)");
06169 pYvsX100->GetYaxis()->CenterTitle();
06170
06171 TProfile2D* pYvsXPitt100=new TProfile2D
06172 ("pYvsXPitt100","pYvsXPitt100",nYvsX100,-4,4,nYvsX100,-4,4);
06173 pYvsXPitt100->SetTitle("MEU");
06174 pYvsXPitt100->GetXaxis()->SetTitle("X (m)");
06175 pYvsXPitt100->GetXaxis()->CenterTitle();
06176 pYvsXPitt100->GetYaxis()->SetTitle("Y (m)");
06177 pYvsXPitt100->GetYaxis()->CenterTitle();
06178
06179 TProfile2D* pYvsXPittZ100=new TProfile2D
06180 ("pYvsXPittZ100","pYvsXPittZ100",nYvsX100,-4,4,nYvsX100,-4,4);
06181 pYvsXPittZ100->SetTitle("MEU");
06182 pYvsXPittZ100->GetXaxis()->SetTitle("X (m)");
06183 pYvsXPittZ100->GetXaxis()->CenterTitle();
06184 pYvsXPittZ100->GetYaxis()->SetTitle("Y (m)");
06185 pYvsXPittZ100->GetYaxis()->CenterTitle();
06186
06187 TH2F* hYvsX100U=new TH2F("hYvsX100U","hYvsX100U",nYvsX100,-4,4,nYvsX100,-4,4);
06188 hYvsX100U->SetTitle("MEU");
06189 hYvsX100U->GetXaxis()->SetTitle("X (m)");
06190 hYvsX100U->GetXaxis()->CenterTitle();
06191 hYvsX100U->GetYaxis()->SetTitle("Y (m)");
06192 hYvsX100U->GetYaxis()->CenterTitle();
06193
06194 TProfile2D* pYvsX100U=new TProfile2D("pYvsX100U","pYvsX100U",
06195 nYvsX100,-4,4,nYvsX100,-4,4);
06196 pYvsX100U->SetTitle("MEU");
06197 pYvsX100U->GetXaxis()->SetTitle("X (m)");
06198 pYvsX100U->GetXaxis()->CenterTitle();
06199 pYvsX100U->GetYaxis()->SetTitle("Y (m)");
06200 pYvsX100U->GetYaxis()->CenterTitle();
06201
06202 TProfile2D* pYvsX100U1=new TProfile2D("pYvsX100U1","pYvsX100U1",
06203 nYvsX100,-4,4,nYvsX100,-4,4);
06204 pYvsX100U1->SetTitle("MEU1");
06205 pYvsX100U1->GetXaxis()->SetTitle("X (m)");
06206 pYvsX100U1->GetXaxis()->CenterTitle();
06207 pYvsX100U1->GetYaxis()->SetTitle("Y (m)");
06208 pYvsX100U1->GetYaxis()->CenterTitle();
06209
06210 TProfile2D* pYvsX100U2=new TProfile2D("pYvsX100U2","pYvsX100U2",
06211 nYvsX100,-4,4,nYvsX100,-4,4);
06212 pYvsX100U2->SetTitle("MEU2");
06213 pYvsX100U2->GetXaxis()->SetTitle("X (m)");
06214 pYvsX100U2->GetXaxis()->CenterTitle();
06215 pYvsX100U2->GetYaxis()->SetTitle("Y (m)");
06216 pYvsX100U2->GetYaxis()->CenterTitle();
06217
06218 TH2F* hYvsX100V=new TH2F("hYvsX100V","hYvsX100V",nYvsX100,-4,4,nYvsX100,-4,4);
06219 hYvsX100V->SetTitle("MEU");
06220 hYvsX100V->GetXaxis()->SetTitle("X (m)");
06221 hYvsX100V->GetXaxis()->CenterTitle();
06222 hYvsX100V->GetYaxis()->SetTitle("Y (m)");
06223 hYvsX100V->GetYaxis()->CenterTitle();
06224
06225 TProfile2D* pYvsX100V=new TProfile2D("pYvsX100V","pYvsX100V",
06226 nYvsX100,-4,4,nYvsX100,-4,4);
06227 pYvsX100V->SetTitle("MEU");
06228 pYvsX100V->GetXaxis()->SetTitle("X (m)");
06229 pYvsX100V->GetXaxis()->CenterTitle();
06230 pYvsX100V->GetYaxis()->SetTitle("Y (m)");
06231 pYvsX100V->GetYaxis()->CenterTitle();
06232
06233 TProfile2D* pYvsX100V1=new TProfile2D("pYvsX100V1","pYvsX100V1",
06234 nYvsX100,-4,4,nYvsX100,-4,4);
06235 pYvsX100V1->SetTitle("MEU");
06236 pYvsX100V1->GetXaxis()->SetTitle("X (m)");
06237 pYvsX100V1->GetXaxis()->CenterTitle();
06238 pYvsX100V1->GetYaxis()->SetTitle("Y (m)");
06239 pYvsX100V1->GetYaxis()->CenterTitle();
06240
06241 TProfile2D* pYvsX100V2=new TProfile2D("pYvsX100V2","pYvsX100V2",
06242 nYvsX100,-4,4,nYvsX100,-4,4);
06243 pYvsX100V2->SetTitle("MEU");
06244 pYvsX100V2->GetXaxis()->SetTitle("X (m)");
06245 pYvsX100V2->GetXaxis()->CenterTitle();
06246 pYvsX100V2->GetYaxis()->SetTitle("Y (m)");
06247 pYvsX100V2->GetYaxis()->CenterTitle();
06248
06249 TProfile2D* pStsYvsX100U=new TProfile2D("pStsYvsX100U","pStsYvsX100U",
06250 nYvsX100,-4,4,nYvsX100,-4,4);
06251 pStsYvsX100U->SetTitle("MEU");
06252 pStsYvsX100U->GetXaxis()->SetTitle("X (m)");
06253 pStsYvsX100U->GetXaxis()->CenterTitle();
06254 pStsYvsX100U->GetYaxis()->SetTitle("Y (m)");
06255 pStsYvsX100U->GetYaxis()->CenterTitle();
06256
06257 TProfile2D* pStsYvsX100U1=new TProfile2D("pStsYvsX100U1","pStsYvsX100U1",
06258 nYvsX100,-4,4,nYvsX100,-4,4);
06259 pStsYvsX100U1->SetTitle("MEU1");
06260 pStsYvsX100U1->GetXaxis()->SetTitle("X (m)");
06261 pStsYvsX100U1->GetXaxis()->CenterTitle();
06262 pStsYvsX100U1->GetYaxis()->SetTitle("Y (m)");
06263 pStsYvsX100U1->GetYaxis()->CenterTitle();
06264
06265 TProfile2D* pStsYvsX100U2=new TProfile2D("pStsYvsX100U2","pStsYvsX100U2",
06266 nYvsX100,-4,4,nYvsX100,-4,4);
06267 pStsYvsX100U2->SetTitle("MEU2");
06268 pStsYvsX100U2->GetXaxis()->SetTitle("X (m)");
06269 pStsYvsX100U2->GetXaxis()->CenterTitle();
06270 pStsYvsX100U2->GetYaxis()->SetTitle("Y (m)");
06271 pStsYvsX100U2->GetYaxis()->CenterTitle();
06272
06273 TProfile2D* pStsYvsX100U1Trk=new TProfile2D("pStsYvsX100U1Trk",
06274 "pStsYvsX100U1Trk",
06275 nYvsX100,-4,4,nYvsX100,-4,4);
06276 pStsYvsX100U1Trk->SetTitle("MEU");
06277 pStsYvsX100U1Trk->GetXaxis()->SetTitle("X (m)");
06278 pStsYvsX100U1Trk->GetXaxis()->CenterTitle();
06279 pStsYvsX100U1Trk->GetYaxis()->SetTitle("Y (m)");
06280 pStsYvsX100U1Trk->GetYaxis()->CenterTitle();
06281
06282 TProfile2D* pStsYvsX100U2Trk=new TProfile2D("pStsYvsX100U2Trk",
06283 "pStsYvsX100U2Trk",
06284 nYvsX100,-4,4,nYvsX100,-4,4);
06285 pStsYvsX100U2Trk->SetTitle("MEU");
06286 pStsYvsX100U2Trk->GetXaxis()->SetTitle("X (m)");
06287 pStsYvsX100U2Trk->GetXaxis()->CenterTitle();
06288 pStsYvsX100U2Trk->GetYaxis()->SetTitle("Y (m)");
06289 pStsYvsX100U2Trk->GetYaxis()->CenterTitle();
06290
06291 TProfile2D* pStsYvsX100V=new TProfile2D("pStsYvsX100V","pStsYvsX100V",
06292 nYvsX100,-4,4,nYvsX100,-4,4);
06293 pStsYvsX100V->SetTitle("MEU");
06294 pStsYvsX100V->GetXaxis()->SetTitle("X (m)");
06295 pStsYvsX100V->GetXaxis()->CenterTitle();
06296 pStsYvsX100V->GetYaxis()->SetTitle("Y (m)");
06297 pStsYvsX100V->GetYaxis()->CenterTitle();
06298
06299 TProfile2D* pStsYvsX100V1=new TProfile2D("pStsYvsX100V1","pStsYvsX100V1",
06300 nYvsX100,-4,4,nYvsX100,-4,4);
06301 pStsYvsX100V1->SetTitle("MEU");
06302 pStsYvsX100V1->GetXaxis()->SetTitle("X (m)");
06303 pStsYvsX100V1->GetXaxis()->CenterTitle();
06304 pStsYvsX100V1->GetYaxis()->SetTitle("Y (m)");
06305 pStsYvsX100V1->GetYaxis()->CenterTitle();
06306
06307 TProfile2D* pStsYvsX100V2=new TProfile2D("pStsYvsX100V2","pStsYvsX100V2",
06308 nYvsX100,-4,4,nYvsX100,-4,4);
06309 pStsYvsX100V2->SetTitle("MEU");
06310 pStsYvsX100V2->GetXaxis()->SetTitle("X (m)");
06311 pStsYvsX100V2->GetXaxis()->CenterTitle();
06312 pStsYvsX100V2->GetYaxis()->SetTitle("Y (m)");
06313 pStsYvsX100V2->GetYaxis()->CenterTitle();
06314
06315 TProfile2D* pStsYvsX100V1Trk=new TProfile2D("pStsYvsX100V1Trk",
06316 "pStsYvsX100V1Trk",
06317 nYvsX100,-4,4,nYvsX100,-4,4);
06318 pStsYvsX100V1Trk->SetTitle("MEU");
06319 pStsYvsX100V1Trk->GetXaxis()->SetTitle("X (m)");
06320 pStsYvsX100V1Trk->GetXaxis()->CenterTitle();
06321 pStsYvsX100V1Trk->GetYaxis()->SetTitle("Y (m)");
06322 pStsYvsX100V1Trk->GetYaxis()->CenterTitle();
06323
06324 TProfile2D* pStsYvsX100V2Trk=new TProfile2D("pStsYvsX100V2Trk",
06325 "pStsYvsX100V2Trk",
06326 nYvsX100,-4,4,nYvsX100,-4,4);
06327 pStsYvsX100V2Trk->SetTitle("MEU");
06328 pStsYvsX100V2Trk->GetXaxis()->SetTitle("X (m)");
06329 pStsYvsX100V2Trk->GetXaxis()->CenterTitle();
06330 pStsYvsX100V2Trk->GetYaxis()->SetTitle("Y (m)");
06331 pStsYvsX100V2Trk->GetYaxis()->CenterTitle();
06332
06333 TProfile2D* pAdcYvsX100U=new TProfile2D("pAdcYvsX100U","pAdcYvsX100U",
06334 nYvsX100,-4,4,nYvsX100,-4,4);
06335 pAdcYvsX100U->SetTitle("MEU");
06336 pAdcYvsX100U->GetXaxis()->SetTitle("X (m)");
06337 pAdcYvsX100U->GetXaxis()->CenterTitle();
06338 pAdcYvsX100U->GetYaxis()->SetTitle("Y (m)");
06339 pAdcYvsX100U->GetYaxis()->CenterTitle();
06340
06341 TProfile2D* pAdcYvsX100U1=new TProfile2D("pAdcYvsX100U1","pAdcYvsX100U1",
06342 nYvsX100,-4,4,nYvsX100,-4,4);
06343 pAdcYvsX100U1->SetTitle("MEU1");
06344 pAdcYvsX100U1->GetXaxis()->SetTitle("X (m)");
06345 pAdcYvsX100U1->GetXaxis()->CenterTitle();
06346 pAdcYvsX100U1->GetYaxis()->SetTitle("Y (m)");
06347 pAdcYvsX100U1->GetYaxis()->CenterTitle();
06348
06349 TProfile2D* pAdcYvsX100U2=new TProfile2D("pAdcYvsX100U2","pAdcYvsX100U2",
06350 nYvsX100,-4,4,nYvsX100,-4,4);
06351 pAdcYvsX100U2->SetTitle("MEU2");
06352 pAdcYvsX100U2->GetXaxis()->SetTitle("X (m)");
06353 pAdcYvsX100U2->GetXaxis()->CenterTitle();
06354 pAdcYvsX100U2->GetYaxis()->SetTitle("Y (m)");
06355 pAdcYvsX100U2->GetYaxis()->CenterTitle();
06356
06357 TProfile2D* pAdcYvsX100V=new TProfile2D("pAdcYvsX100V","pAdcYvsX100V",
06358 nYvsX100,-4,4,nYvsX100,-4,4);
06359 pAdcYvsX100V->SetTitle("MEU");
06360 pAdcYvsX100V->GetXaxis()->SetTitle("X (m)");
06361 pAdcYvsX100V->GetXaxis()->CenterTitle();
06362 pAdcYvsX100V->GetYaxis()->SetTitle("Y (m)");
06363 pAdcYvsX100V->GetYaxis()->CenterTitle();
06364
06365 TProfile2D* pAdcYvsX100V1=new TProfile2D("pAdcYvsX100V1","pAdcYvsX100V1",
06366 nYvsX100,-4,4,nYvsX100,-4,4);
06367 pAdcYvsX100V1->SetTitle("MEU");
06368 pAdcYvsX100V1->GetXaxis()->SetTitle("X (m)");
06369 pAdcYvsX100V1->GetXaxis()->CenterTitle();
06370 pAdcYvsX100V1->GetYaxis()->SetTitle("Y (m)");
06371 pAdcYvsX100V1->GetYaxis()->CenterTitle();
06372
06373 TProfile2D* pAdcYvsX100V2=new TProfile2D("pAdcYvsX100V2","pAdcYvsX100V2",
06374 nYvsX100,-4,4,nYvsX100,-4,4);
06375 pAdcYvsX100V2->SetTitle("MEU");
06376 pAdcYvsX100V2->GetXaxis()->SetTitle("X (m)");
06377 pAdcYvsX100V2->GetXaxis()->CenterTitle();
06378 pAdcYvsX100V2->GetYaxis()->SetTitle("Y (m)");
06379 pAdcYvsX100V2->GetYaxis()->CenterTitle();
06380
06381
06382
06383
06384
06385
06386 TProfile2D* pPeYvsX100U=new TProfile2D("pPeYvsX100U","pPeYvsX100U",
06387 nYvsX100,-4,4,nYvsX100,-4,4);
06388 pPeYvsX100U->SetTitle("MEU");
06389 pPeYvsX100U->GetXaxis()->SetTitle("X (m)");
06390 pPeYvsX100U->GetXaxis()->CenterTitle();
06391 pPeYvsX100U->GetYaxis()->SetTitle("Y (m)");
06392 pPeYvsX100U->GetYaxis()->CenterTitle();
06393
06394 TProfile2D* pPeYvsX100U1=new TProfile2D("pPeYvsX100U1","pPeYvsX100U1",
06395 nYvsX100,-4,4,nYvsX100,-4,4);
06396 pPeYvsX100U1->SetTitle("MEU1");
06397 pPeYvsX100U1->GetXaxis()->SetTitle("X (m)");
06398 pPeYvsX100U1->GetXaxis()->CenterTitle();
06399 pPeYvsX100U1->GetYaxis()->SetTitle("Y (m)");
06400 pPeYvsX100U1->GetYaxis()->CenterTitle();
06401
06402 TProfile2D* pPeYvsX100U2=new TProfile2D("pPeYvsX100U2","pPeYvsX100U2",
06403 nYvsX100,-4,4,nYvsX100,-4,4);
06404 pPeYvsX100U2->SetTitle("MEU2");
06405 pPeYvsX100U2->GetXaxis()->SetTitle("X (m)");
06406 pPeYvsX100U2->GetXaxis()->CenterTitle();
06407 pPeYvsX100U2->GetYaxis()->SetTitle("Y (m)");
06408 pPeYvsX100U2->GetYaxis()->CenterTitle();
06409
06410 TProfile2D* pPeYvsX100V=new TProfile2D("pPeYvsX100V","pPeYvsX100V",
06411 nYvsX100,-4,4,nYvsX100,-4,4);
06412 pPeYvsX100V->SetTitle("MEU");
06413 pPeYvsX100V->GetXaxis()->SetTitle("X (m)");
06414 pPeYvsX100V->GetXaxis()->CenterTitle();
06415 pPeYvsX100V->GetYaxis()->SetTitle("Y (m)");
06416 pPeYvsX100V->GetYaxis()->CenterTitle();
06417
06418 TProfile2D* pPeYvsX100V1=new TProfile2D("pPeYvsX100V1","pPeYvsX100V1",
06419 nYvsX100,-4,4,nYvsX100,-4,4);
06420 pPeYvsX100V1->SetTitle("MEU");
06421 pPeYvsX100V1->GetXaxis()->SetTitle("X (m)");
06422 pPeYvsX100V1->GetXaxis()->CenterTitle();
06423 pPeYvsX100V1->GetYaxis()->SetTitle("Y (m)");
06424 pPeYvsX100V1->GetYaxis()->CenterTitle();
06425
06426 TProfile2D* pPeYvsX100V2=new TProfile2D("pPeYvsX100V2","pPeYvsX100V2",
06427 nYvsX100,-4,4,nYvsX100,-4,4);
06428 pPeYvsX100V2->SetTitle("MEU");
06429 pPeYvsX100V2->GetXaxis()->SetTitle("X (m)");
06430 pPeYvsX100V2->GetXaxis()->CenterTitle();
06431 pPeYvsX100V2->GetYaxis()->SetTitle("Y (m)");
06432 pPeYvsX100V2->GetYaxis()->CenterTitle();
06434
06435
06436
06438 Int_t nYvsX200=200;
06439 TH2F* hYvsX200=new TH2F
06440 ("hYvsX200","hYvsX200",nYvsX200,-4,4,nYvsX200,-4,4);
06441 hYvsX200->SetTitle("MEU");
06442 hYvsX200->GetXaxis()->SetTitle("X (m)");
06443 hYvsX200->GetXaxis()->CenterTitle();
06444 hYvsX200->GetYaxis()->SetTitle("Y (m)");
06445 hYvsX200->GetYaxis()->CenterTitle();
06446
06447 TH2F* hYvsX200Vtx=new TH2F
06448 ("hYvsX200Vtx","hYvsX200Vtx",nYvsX200,-4,4,nYvsX200,-4,4);
06449 hYvsX200Vtx->SetTitle("MEU");
06450 hYvsX200Vtx->GetXaxis()->SetTitle("X (m)");
06451 hYvsX200Vtx->GetXaxis()->CenterTitle();
06452 hYvsX200Vtx->GetYaxis()->SetTitle("Y (m)");
06453 hYvsX200Vtx->GetYaxis()->CenterTitle();
06454
06455 TH2F* hYvsX200End=new TH2F
06456 ("hYvsX200End","hYvsX200End",nYvsX200,-4,4,nYvsX200,-4,4);
06457 hYvsX200End->SetTitle("MEU");
06458 hYvsX200End->GetXaxis()->SetTitle("X (m)");
06459 hYvsX200End->GetXaxis()->CenterTitle();
06460 hYvsX200End->GetYaxis()->SetTitle("Y (m)");
06461 hYvsX200End->GetYaxis()->CenterTitle();
06462
06463 TProfile2D* pYvsX200=new TProfile2D
06464 ("pYvsX200","pYvsX200",nYvsX200,-4,4,nYvsX200,-4,4);
06465 pYvsX200->SetTitle("MEU");
06466 pYvsX200->GetXaxis()->SetTitle("X (m)");
06467 pYvsX200->GetXaxis()->CenterTitle();
06468 pYvsX200->GetYaxis()->SetTitle("Y (m)");
06469 pYvsX200->GetYaxis()->CenterTitle();
06470
06471 TH2F* hYvsX200U=new TH2F("hYvsX200U","hYvsX200U",nYvsX200,-4,4,nYvsX200,-4,4);
06472 hYvsX200U->SetTitle("MEU");
06473 hYvsX200U->GetXaxis()->SetTitle("X (m)");
06474 hYvsX200U->GetXaxis()->CenterTitle();
06475 hYvsX200U->GetYaxis()->SetTitle("Y (m)");
06476 hYvsX200U->GetYaxis()->CenterTitle();
06477
06478 TProfile2D* pYvsX200U=new TProfile2D("pYvsX200U","pYvsX200U",
06479 nYvsX200,-4,4,nYvsX200,-4,4);
06480 pYvsX200U->SetTitle("MEU");
06481 pYvsX200U->GetXaxis()->SetTitle("X (m)");
06482 pYvsX200U->GetXaxis()->CenterTitle();
06483 pYvsX200U->GetYaxis()->SetTitle("Y (m)");
06484 pYvsX200U->GetYaxis()->CenterTitle();
06485
06486 TProfile2D* pYvsX200U1=new TProfile2D("pYvsX200U1","pYvsX200U1",
06487 nYvsX200,-4,4,nYvsX200,-4,4);
06488 pYvsX200U1->SetTitle("MEU1");
06489 pYvsX200U1->GetXaxis()->SetTitle("X (m)");
06490 pYvsX200U1->GetXaxis()->CenterTitle();
06491 pYvsX200U1->GetYaxis()->SetTitle("Y (m)");
06492 pYvsX200U1->GetYaxis()->CenterTitle();
06493
06494 TProfile2D* pYvsX200U2=new TProfile2D("pYvsX200U2","pYvsX200U2",
06495 nYvsX200,-4,4,nYvsX200,-4,4);
06496 pYvsX200U2->SetTitle("MEU2");
06497 pYvsX200U2->GetXaxis()->SetTitle("X (m)");
06498 pYvsX200U2->GetXaxis()->CenterTitle();
06499 pYvsX200U2->GetYaxis()->SetTitle("Y (m)");
06500 pYvsX200U2->GetYaxis()->CenterTitle();
06501
06502 TH2F* hYvsX200V=new TH2F("hYvsX200V","hYvsX200V",nYvsX200,-4,4,nYvsX200,-4,4);
06503 hYvsX200V->SetTitle("MEU");
06504 hYvsX200V->GetXaxis()->SetTitle("X (m)");
06505 hYvsX200V->GetXaxis()->CenterTitle();
06506 hYvsX200V->GetYaxis()->SetTitle("Y (m)");
06507 hYvsX200V->GetYaxis()->CenterTitle();
06508
06509 TProfile2D* pYvsX200V=new TProfile2D("pYvsX200V","pYvsX200V",
06510 nYvsX200,-4,4,nYvsX200,-4,4);
06511 pYvsX200V->SetTitle("MEU");
06512 pYvsX200V->GetXaxis()->SetTitle("X (m)");
06513 pYvsX200V->GetXaxis()->CenterTitle();
06514 pYvsX200V->GetYaxis()->SetTitle("Y (m)");
06515 pYvsX200V->GetYaxis()->CenterTitle();
06516
06517 TProfile2D* pYvsX200V1=new TProfile2D("pYvsX200V1","pYvsX200V1",
06518 nYvsX200,-4,4,nYvsX200,-4,4);
06519 pYvsX200V1->SetTitle("MEU");
06520 pYvsX200V1->GetXaxis()->SetTitle("X (m)");
06521 pYvsX200V1->GetXaxis()->CenterTitle();
06522 pYvsX200V1->GetYaxis()->SetTitle("Y (m)");
06523 pYvsX200V1->GetYaxis()->CenterTitle();
06524
06525 TProfile2D* pYvsX200V2=new TProfile2D("pYvsX200V2","pYvsX200V2",
06526 nYvsX200,-4,4,nYvsX200,-4,4);
06527 pYvsX200V2->SetTitle("MEU");
06528 pYvsX200V2->GetXaxis()->SetTitle("X (m)");
06529 pYvsX200V2->GetXaxis()->CenterTitle();
06530 pYvsX200V2->GetYaxis()->SetTitle("Y (m)");
06531 pYvsX200V2->GetYaxis()->CenterTitle();
06532
06533 TProfile2D* pStsYvsX200U=new TProfile2D("pStsYvsX200U","pStsYvsX200U",
06534 nYvsX200,-4,4,nYvsX200,-4,4);
06535 pStsYvsX200U->SetTitle("MEU");
06536 pStsYvsX200U->GetXaxis()->SetTitle("X (m)");
06537 pStsYvsX200U->GetXaxis()->CenterTitle();
06538 pStsYvsX200U->GetYaxis()->SetTitle("Y (m)");
06539 pStsYvsX200U->GetYaxis()->CenterTitle();
06540
06541 TProfile2D* pStsYvsX200U1=new TProfile2D("pStsYvsX200U1","pStsYvsX200U1",
06542 nYvsX200,-4,4,nYvsX200,-4,4);
06543 pStsYvsX200U1->SetTitle("MEU1");
06544 pStsYvsX200U1->GetXaxis()->SetTitle("X (m)");
06545 pStsYvsX200U1->GetXaxis()->CenterTitle();
06546 pStsYvsX200U1->GetYaxis()->SetTitle("Y (m)");
06547 pStsYvsX200U1->GetYaxis()->CenterTitle();
06548
06549 TProfile2D* pStsYvsX200U2=new TProfile2D("pStsYvsX200U2","pStsYvsX200U2",
06550 nYvsX200,-4,4,nYvsX200,-4,4);
06551 pStsYvsX200U2->SetTitle("MEU2");
06552 pStsYvsX200U2->GetXaxis()->SetTitle("X (m)");
06553 pStsYvsX200U2->GetXaxis()->CenterTitle();
06554 pStsYvsX200U2->GetYaxis()->SetTitle("Y (m)");
06555 pStsYvsX200U2->GetYaxis()->CenterTitle();
06556
06557 TProfile2D* pStsYvsX200U1Trk=new TProfile2D("pStsYvsX200U1Trk",
06558 "pStsYvsX200U1Trk",
06559 nYvsX200,-4,4,nYvsX200,-4,4);
06560 pStsYvsX200U1Trk->SetTitle("MEU");
06561 pStsYvsX200U1Trk->GetXaxis()->SetTitle("X (m)");
06562 pStsYvsX200U1Trk->GetXaxis()->CenterTitle();
06563 pStsYvsX200U1Trk->GetYaxis()->SetTitle("Y (m)");
06564 pStsYvsX200U1Trk->GetYaxis()->CenterTitle();
06565
06566 TProfile2D* pStsYvsX200U2Trk=new TProfile2D("pStsYvsX200U2Trk",
06567 "pStsYvsX200U2Trk",
06568 nYvsX200,-4,4,nYvsX200,-4,4);
06569 pStsYvsX200U2Trk->SetTitle("MEU");
06570 pStsYvsX200U2Trk->GetXaxis()->SetTitle("X (m)");
06571 pStsYvsX200U2Trk->GetXaxis()->CenterTitle();
06572 pStsYvsX200U2Trk->GetYaxis()->SetTitle("Y (m)");
06573 pStsYvsX200U2Trk->GetYaxis()->CenterTitle();
06574
06575 TProfile2D* pStsYvsX200V=new TProfile2D("pStsYvsX200V","pStsYvsX200V",
06576 nYvsX200,-4,4,nYvsX200,-4,4);
06577 pStsYvsX200V->SetTitle("MEU");
06578 pStsYvsX200V->GetXaxis()->SetTitle("X (m)");
06579 pStsYvsX200V->GetXaxis()->CenterTitle();
06580 pStsYvsX200V->GetYaxis()->SetTitle("Y (m)");
06581 pStsYvsX200V->GetYaxis()->CenterTitle();
06582
06583 TProfile2D* pStsYvsX200V1=new TProfile2D("pStsYvsX200V1","pStsYvsX200V1",
06584 nYvsX200,-4,4,nYvsX200,-4,4);
06585 pStsYvsX200V1->SetTitle("MEU");
06586 pStsYvsX200V1->GetXaxis()->SetTitle("X (m)");
06587 pStsYvsX200V1->GetXaxis()->CenterTitle();
06588 pStsYvsX200V1->GetYaxis()->SetTitle("Y (m)");
06589 pStsYvsX200V1->GetYaxis()->CenterTitle();
06590
06591 TProfile2D* pStsYvsX200V2=new TProfile2D("pStsYvsX200V2","pStsYvsX200V2",
06592 nYvsX200,-4,4,nYvsX200,-4,4);
06593 pStsYvsX200V2->SetTitle("MEU");
06594 pStsYvsX200V2->GetXaxis()->SetTitle("X (m)");
06595 pStsYvsX200V2->GetXaxis()->CenterTitle();
06596 pStsYvsX200V2->GetYaxis()->SetTitle("Y (m)");
06597 pStsYvsX200V2->GetYaxis()->CenterTitle();
06598
06599 TProfile2D* pStsYvsX200V1Trk=new TProfile2D("pStsYvsX200V1Trk",
06600 "pStsYvsX200V1Trk",
06601 nYvsX200,-4,4,nYvsX200,-4,4);
06602 pStsYvsX200V1Trk->SetTitle("MEU");
06603 pStsYvsX200V1Trk->GetXaxis()->SetTitle("X (m)");
06604 pStsYvsX200V1Trk->GetXaxis()->CenterTitle();
06605 pStsYvsX200V1Trk->GetYaxis()->SetTitle("Y (m)");
06606 pStsYvsX200V1Trk->GetYaxis()->CenterTitle();
06607
06608 TProfile2D* pStsYvsX200V2Trk=new TProfile2D("pStsYvsX200V2Trk",
06609 "pStsYvsX200V2Trk",
06610 nYvsX200,-4,4,nYvsX200,-4,4);
06611 pStsYvsX200V2Trk->SetTitle("MEU");
06612 pStsYvsX200V2Trk->GetXaxis()->SetTitle("X (m)");
06613 pStsYvsX200V2Trk->GetXaxis()->CenterTitle();
06614 pStsYvsX200V2Trk->GetYaxis()->SetTitle("Y (m)");
06615 pStsYvsX200V2Trk->GetYaxis()->CenterTitle();
06616
06617 TProfile2D* pAdcYvsX200U=new TProfile2D("pAdcYvsX200U","pAdcYvsX200U",
06618 nYvsX200,-4,4,nYvsX200,-4,4);
06619 pAdcYvsX200U->SetTitle("MEU");
06620 pAdcYvsX200U->GetXaxis()->SetTitle("X (m)");
06621 pAdcYvsX200U->GetXaxis()->CenterTitle();
06622 pAdcYvsX200U->GetYaxis()->SetTitle("Y (m)");
06623 pAdcYvsX200U->GetYaxis()->CenterTitle();
06624
06625 TProfile2D* pAdcYvsX200U1=new TProfile2D("pAdcYvsX200U1","pAdcYvsX200U1",
06626 nYvsX200,-4,4,nYvsX200,-4,4);
06627 pAdcYvsX200U1->SetTitle("MEU1");
06628 pAdcYvsX200U1->GetXaxis()->SetTitle("X (m)");
06629 pAdcYvsX200U1->GetXaxis()->CenterTitle();
06630 pAdcYvsX200U1->GetYaxis()->SetTitle("Y (m)");
06631 pAdcYvsX200U1->GetYaxis()->CenterTitle();
06632
06633 TProfile2D* pAdcYvsX200U2=new TProfile2D("pAdcYvsX200U2","pAdcYvsX200U2",
06634 nYvsX200,-4,4,nYvsX200,-4,4);
06635 pAdcYvsX200U2->SetTitle("MEU2");
06636 pAdcYvsX200U2->GetXaxis()->SetTitle("X (m)");
06637 pAdcYvsX200U2->GetXaxis()->CenterTitle();
06638 pAdcYvsX200U2->GetYaxis()->SetTitle("Y (m)");
06639 pAdcYvsX200U2->GetYaxis()->CenterTitle();
06640
06641 TProfile2D* pAdcYvsX200V=new TProfile2D("pAdcYvsX200V","pAdcYvsX200V",
06642 nYvsX200,-4,4,nYvsX200,-4,4);
06643 pAdcYvsX200V->SetTitle("MEU");
06644 pAdcYvsX200V->GetXaxis()->SetTitle("X (m)");
06645 pAdcYvsX200V->GetXaxis()->CenterTitle();
06646 pAdcYvsX200V->GetYaxis()->SetTitle("Y (m)");
06647 pAdcYvsX200V->GetYaxis()->CenterTitle();
06648
06649 TProfile2D* pAdcYvsX200V1=new TProfile2D("pAdcYvsX200V1","pAdcYvsX200V1",
06650 nYvsX200,-4,4,nYvsX200,-4,4);
06651 pAdcYvsX200V1->SetTitle("MEU");
06652 pAdcYvsX200V1->GetXaxis()->SetTitle("X (m)");
06653 pAdcYvsX200V1->GetXaxis()->CenterTitle();
06654 pAdcYvsX200V1->GetYaxis()->SetTitle("Y (m)");
06655 pAdcYvsX200V1->GetYaxis()->CenterTitle();
06656
06657 TProfile2D* pAdcYvsX200V2=new TProfile2D("pAdcYvsX200V2","pAdcYvsX200V2",
06658 nYvsX200,-4,4,nYvsX200,-4,4);
06659 pAdcYvsX200V2->SetTitle("MEU");
06660 pAdcYvsX200V2->GetXaxis()->SetTitle("X (m)");
06661 pAdcYvsX200V2->GetXaxis()->CenterTitle();
06662 pAdcYvsX200V2->GetYaxis()->SetTitle("Y (m)");
06663 pAdcYvsX200V2->GetYaxis()->CenterTitle();
06664
06665 TProfile2D* pPeYvsX200U=new TProfile2D("pPeYvsX200U","pPeYvsX200U",
06666 nYvsX200,-4,4,nYvsX200,-4,4);
06667 pPeYvsX200U->SetTitle("MEU");
06668 pPeYvsX200U->GetXaxis()->SetTitle("X (m)");
06669 pPeYvsX200U->GetXaxis()->CenterTitle();
06670 pPeYvsX200U->GetYaxis()->SetTitle("Y (m)");
06671 pPeYvsX200U->GetYaxis()->CenterTitle();
06672
06673 TProfile2D* pPeYvsX200U1=new TProfile2D("pPeYvsX200U1","pPeYvsX200U1",
06674 nYvsX200,-4,4,nYvsX200,-4,4);
06675 pPeYvsX200U1->SetTitle("MEU1");
06676 pPeYvsX200U1->GetXaxis()->SetTitle("X (m)");
06677 pPeYvsX200U1->GetXaxis()->CenterTitle();
06678 pPeYvsX200U1->GetYaxis()->SetTitle("Y (m)");
06679 pPeYvsX200U1->GetYaxis()->CenterTitle();
06680
06681 TProfile2D* pPeYvsX200U2=new TProfile2D("pPeYvsX200U2","pPeYvsX200U2",
06682 nYvsX200,-4,4,nYvsX200,-4,4);
06683 pPeYvsX200U2->SetTitle("MEU2");
06684 pPeYvsX200U2->GetXaxis()->SetTitle("X (m)");
06685 pPeYvsX200U2->GetXaxis()->CenterTitle();
06686 pPeYvsX200U2->GetYaxis()->SetTitle("Y (m)");
06687 pPeYvsX200U2->GetYaxis()->CenterTitle();
06688
06689 TProfile2D* pPeYvsX200V=new TProfile2D("pPeYvsX200V","pPeYvsX200V",
06690 nYvsX200,-4,4,nYvsX200,-4,4);
06691 pPeYvsX200V->SetTitle("MEU");
06692 pPeYvsX200V->GetXaxis()->SetTitle("X (m)");
06693 pPeYvsX200V->GetXaxis()->CenterTitle();
06694 pPeYvsX200V->GetYaxis()->SetTitle("Y (m)");
06695 pPeYvsX200V->GetYaxis()->CenterTitle();
06696
06697 TProfile2D* pPeYvsX200V1=new TProfile2D("pPeYvsX200V1","pPeYvsX200V1",
06698 nYvsX200,-4,4,nYvsX200,-4,4);
06699 pPeYvsX200V1->SetTitle("MEU");
06700 pPeYvsX200V1->GetXaxis()->SetTitle("X (m)");
06701 pPeYvsX200V1->GetXaxis()->CenterTitle();
06702 pPeYvsX200V1->GetYaxis()->SetTitle("Y (m)");
06703 pPeYvsX200V1->GetYaxis()->CenterTitle();
06704
06705 TProfile2D* pPeYvsX200V2=new TProfile2D("pPeYvsX200V2","pPeYvsX200V2",
06706 nYvsX200,-4,4,nYvsX200,-4,4);
06707 pPeYvsX200V2->SetTitle("MEU");
06708 pPeYvsX200V2->GetXaxis()->SetTitle("X (m)");
06709 pPeYvsX200V2->GetXaxis()->CenterTitle();
06710 pPeYvsX200V2->GetYaxis()->SetTitle("Y (m)");
06711 pPeYvsX200V2->GetYaxis()->CenterTitle();
06713
06714
06715 TProfile2D* pCosThZYvsX=new TProfile2D
06716 ("pCosThZYvsX","pCosThZYvsX",30,-4,4,30,-4,4);
06717 pCosThZYvsX->SetTitle("Cos(#theta_{z})");
06718 pCosThZYvsX->GetXaxis()->SetTitle("X (m)");
06719 pCosThZYvsX->GetXaxis()->CenterTitle();
06720 pCosThZYvsX->GetYaxis()->SetTitle("Y (m)");
06721 pCosThZYvsX->GetYaxis()->CenterTitle();
06722
06723 TProfile2D* pCosThZPosYvsX=new TProfile2D
06724 ("pCosThZPosYvsX","pCosThZPosYvsX",30,-4,4,30,-4,4);
06725 pCosThZPosYvsX->SetTitle("Cos(#theta_{z})");
06726 pCosThZPosYvsX->GetXaxis()->SetTitle("X (m)");
06727 pCosThZPosYvsX->GetXaxis()->CenterTitle();
06728 pCosThZPosYvsX->GetYaxis()->SetTitle("Y (m)");
06729 pCosThZPosYvsX->GetYaxis()->CenterTitle();
06730
06731 TProfile2D* pCosThZNegYvsX=new TProfile2D
06732 ("pCosThZNegYvsX","pCosThZNegYvsX",30,-4,4,30,-4,4);
06733 pCosThZNegYvsX->SetTitle("Cos(#theta_{z})");
06734 pCosThZNegYvsX->GetXaxis()->SetTitle("X (m)");
06735 pCosThZNegYvsX->GetXaxis()->CenterTitle();
06736 pCosThZNegYvsX->GetYaxis()->SetTitle("Y (m)");
06737 pCosThZNegYvsX->GetYaxis()->CenterTitle();
06738
06739 Int_t startTimeSecs=2000000000;
06740 Int_t endTimeSecs=1;
06741 vector<Double_t> vTimeSec;
06742 vTimeSec.reserve(fEntries);
06743 vector<Double_t> vWinSigMap;
06744 vWinSigMap.reserve(fEntries);
06745 vector<Double_t> vWinSigMapDrift;
06746 vWinSigMapDrift.reserve(fEntries);
06747 vector<Double_t> vWinSigMapDriftX;
06748 vWinSigMapDriftX.reserve(fEntries);
06749
06750 vector<Double_t> vTimeSecCosTh;
06751 vTimeSec.reserve(fEntries);
06752 vector<Double_t> vWinSigMapCosTh;
06753 vWinSigMapCosTh.reserve(fEntries);
06754 vector<Double_t> vWinSigMapCosThDrift;
06755 vWinSigMapCosThDrift.reserve(fEntries);
06756 vector<Double_t> vWinSigMapCosThDriftX;
06757 vWinSigMapCosThDriftX.reserve(fEntries);
06758
06759 vector<Double_t> vWinSigCorCosTh;
06760 vWinSigCorCosTh.reserve(fEntries);
06761 vector<Double_t> vWinSigLinCosTh;
06762 vWinSigLinCosTh.reserve(fEntries);
06763 vector<Double_t> vWinAdcCosTh;
06764 vWinAdcCosTh.reserve(fEntries);
06765 vector<Double_t> vWinPeCosTh;
06766 vWinPeCosTh.reserve(fEntries);
06767 vector<Double_t> vWinSigLinOnlyCosTh;
06768 vWinSigLinOnlyCosTh.reserve(fEntries);
06769 vector<Double_t> vWinSigDrfCosTh;
06770 vWinSigDrfCosTh.reserve(fEntries);
06771
06772 vector<Double_t> vTimeSecTemp;
06773 vTimeSecTemp.reserve(fEntries);
06774 vector<Double_t> vWinSigMapTemp;
06775 vWinSigMapTemp.reserve(fEntries);
06776 vector<Double_t> vTemperatures;
06777 vTemperatures.reserve(fEntries);
06778
06779 vector<Double_t> vCrateMask;
06780 vector<Double_t> vBusyChips;
06781 vector<Double_t> vColdChips;
06782 vector<Double_t> vDataQuality;
06783
06784 TStopwatch stopWatchAll;
06785 TStopwatch stopWatchDrf;
06786 stopWatchAll.Start();
06787 stopWatchDrf.Start();
06788
06789 TH1F* hRealTimeAll=new TH1F("hRealTimeAll","hRealTimeAll",
06790 11000,-0.1,1);
06791 hRealTimeAll->SetFillColor(0);
06792 hRealTimeAll->SetTitle("Real Time of Event");
06793 hRealTimeAll->GetXaxis()->SetTitle("Real Time (s)");
06794 hRealTimeAll->GetXaxis()->CenterTitle();
06795
06796
06797 TH1F* hCpuTimeAll=new TH1F("hCpuTimeAll","hCpuTimeAll",
06798 11000,-0.1,1);
06799 hCpuTimeAll->SetFillColor(0);
06800 hCpuTimeAll->SetTitle("Cpu Time of Event");
06801 hCpuTimeAll->GetXaxis()->SetTitle("Cpu Time (s)");
06802 hCpuTimeAll->GetXaxis()->CenterTitle();
06803
06804
06805 TH1F* hRealTimeDrf=new TH1F("hRealTimeDrf","hRealTimeDrf",
06806 11000,-0.1,1);
06807 hRealTimeDrf->SetFillColor(0);
06808 hRealTimeDrf->SetTitle("Real Time of Drift Cal.");
06809 hRealTimeDrf->GetXaxis()->SetTitle("Real Time (s)");
06810 hRealTimeDrf->GetXaxis()->CenterTitle();
06811
06812
06813 TH1F* hCpuTimeDrf=new TH1F("hCpuTimeDrf","hCpuTimeDrf",
06814 11000,-0.1,1);
06815 hCpuTimeDrf->SetFillColor(0);
06816 hCpuTimeDrf->SetTitle("Cpu Time of Drift Cal.");
06817 hCpuTimeDrf->GetXaxis()->SetTitle("Cpu Time (s)");
06818 hCpuTimeDrf->GetXaxis()->CenterTitle();
06819
06820
06821 const MeuCuts cuts;
06822
06826
06827 this->InitialiseLoopVariables();
06828
06829 for(Int_t entry=0;entry<fEntries;entry++){
06830
06831
06832 stopWatchAll.Stop();
06833 if (entry>0) {
06834 hRealTimeAll->Fill(stopWatchAll.RealTime());
06835 hCpuTimeAll->Fill(stopWatchAll.CpuTime());
06836 }
06837 stopWatchAll.Start();
06838
06839 this->SetLoopVariables(entry);
06840
06841 MeuSummary& t=(*fMeuSummary);
06842
06843 if (!t.GoodDataQuality&&t.SimFlag==1) continue;
06844
06845
06846 hDetector->Fill(t.Detector);
06847 hSimFlag->Fill(t.SimFlag);
06848
06849 if (t.WinStopSideX>2.5 || t.WinStopSideY<-1.4){
06850 MAXMSG("MeuPlots",Msg::kDebug,200)
06851 <<"t.WinStopSideX="<<t.WinStopSideX
06852 <<", t.WinStopSideY="<<t.WinStopSideY
06853 <<", snarl="<<t.Snarl<<", run="<<t.Run<<endl;
06854 }
06855
06856
06857
06858
06859 Bool_t reversedBField=false;
06860 if (t.Detector==Detector::kFar){
06861 reversedBField=t.Run>=25768 && t.Run<29094;
06862 }
06863
06864 Float_t avX=0.5*(t.WinStopSideX+t.WinVtxSideX);
06865 Float_t avY=0.5*(t.WinStopSideY+t.WinVtxSideY);
06866 MAXMSG("MeuPlots",Msg::kDebug,50)
06867 <<"avX="<<avX<<", X1="<<t.WinStopSideX
06868 <<", X2="<<t.WinVtxSideX<<endl
06869 <<"avY="<<avY<<", Y1="<<t.WinStopSideY
06870 <<", Y2="<<t.WinVtxSideY<<endl;
06871
06872
06873
06874
06875 hCrateMask->Fill(t.CrateMask);
06876 hBusyChips->Fill(t.BusyChips);
06877 hColdChips->Fill(t.ColdChips);
06878 hDataQuality->Fill(int(t.GoodDataQuality));
06879
06880 hSigMapAll->Fill(t.WinSigMap);
06881 pLowEnVsCosThZ->Fill(t.WinAvCosThetaZ,t.MCLowEn);
06882 hCosThZ->Fill(t.WinAvCosThetaZ);
06883 hYvsXVtx->Fill(t.VtxX,t.VtxY);
06884 hYvsXEnd->Fill(t.EndX,t.EndY);
06885 if ((t.VtxPlane-1)%5==0) hYvsXFVtx->Fill(t.VtxX,t.VtxY);
06886 else hYvsXPVtx->Fill(t.VtxX,t.VtxY);
06887 if ((t.EndPlane-1)%5==0) hYvsXFEnd->Fill(t.EndX,t.EndY);
06888 else hYvsXPEnd->Fill(t.EndX,t.EndY);
06889
06890 hYvsX100Vtx->Fill(t.VtxX,t.VtxY);
06891 hYvsX100End->Fill(t.EndX,t.EndY);
06892 hYvsX200Vtx->Fill(t.VtxX,t.VtxY);
06893 hYvsX200End->Fill(t.EndX,t.EndY);
06894
06895 if (reversedBField) hCosThZBBack->Fill(t.WinAvCosThetaZ);
06896 else hCosThZBForw->Fill(t.WinAvCosThetaZ);
06897
06898 Int_t evTime=t.TimeSec;
06899
06900
06901 if (evTime>endTimeSecs) endTimeSecs=evTime;
06902 if (evTime<startTimeSecs && evTime>0) startTimeSecs=evTime;
06903 if (evTime<=0) {
06904 cout<<"Bad time="<<evTime<<endl;
06905 }
06906
06907
06908 MAXMSG("MeuPlots",Msg::kInfo,3)
06909 <<"Filling time vector="<<evTime;
06910 this->EpochTo1995(evTime);
06911 MAXMSG("MeuPlots",Msg::kInfo,3)
06912 <<", secs from 1995="<<evTime<<endl;
06913
06914
06915
06916
06917 Float_t driftFudge=1;
06918 t.ReleaseType=ReleaseType::kCedar+ReleaseType::kDaikon;
06919 this->CalibrationGroupEnergyCorrections(driftFudge,t);
06920
06921
06922
06923 if (fabs(t.WinAvCosThetaZ)>0.3){
06924 hAvNumDigits->Fill(t.WinAvNumDigits);
06925 hAvNumDigitsAll->Fill(t.WinAvNumDigits);
06926 hAvNumStrips->Fill(t.WinAvNumStrips);
06927 hAvNumStripsAll->Fill(t.WinAvNumStrips);
06928 hAdc->Fill(t.WinAdc);
06929 hPe->Fill(t.WinPe);
06930 hSigLin->Fill(t.WinSigLin);
06931
06932
06933 hSigCor->Fill(t.WinSigCor);
06934 hSigMap->Fill(t.WinSigMap);
06935 hSigMapNoThresh->Fill(t.WinSigMap);
06936 hSigMapDriftX->Fill(t.WinSigMap*driftFudge);
06937
06938 vTimeSecCosTh.push_back(evTime);
06939
06940 vWinSigMapCosTh.push_back(t.WinSigMap);
06941 vWinSigCorCosTh.push_back(t.WinSigCor);
06942 vWinSigLinCosTh.push_back(t.WinSigLin);
06943 vWinAdcCosTh.push_back(t.WinAdc);
06944 vWinPeCosTh.push_back(t.WinPe);
06945
06946
06947
06948
06949 stopWatchDrf.Start();
06950 Float_t winSigMapDrift=t.WinSigMap;
06951 this->DriftCalibrate(winSigMapDrift,t);
06952 stopWatchDrf.Stop();
06953 hRealTimeDrf->Fill(stopWatchDrf.RealTime());
06954 hCpuTimeDrf->Fill(stopWatchDrf.CpuTime());
06955 vWinSigMapCosThDrift.push_back(winSigMapDrift);
06956
06957 Float_t driftRatio=-1;
06958 if (winSigMapDrift) driftRatio=t.WinSigMap/winSigMapDrift;
06959
06960 Float_t extraDriftRatio=(driftRatio-1)*1.35;
06961 extraDriftRatio+=1;
06962 Float_t winSigMapDriftX=t.WinSigMap;
06963 winSigMapDriftX*=(1./extraDriftRatio);
06964 vWinSigMapCosThDriftX.push_back(winSigMapDriftX);
06965
06966 hMatTrav->Fill(t.TotalMatTraversed);
06967 hLowEn->Fill(t.MCLowEn);
06968 hHighEn->Fill(t.MCHighEn);
06969
06970 if (t.MCLowEn<1){
06971 pLowEnVsX->Fill(t.WinStopSideX,t.MCLowEn);
06972 pLowEnVsY->Fill(t.WinStopSideY,t.MCLowEn);
06973 hLowEnVsX->Fill(t.WinStopSideX,t.MCLowEn);
06974 hLowEnVsY->Fill(t.WinStopSideY,t.MCLowEn);
06975 }
06976
06977 if (t.MCParticleId==13) hSigMapMuMinus->Fill(t.WinSigMap);
06978 else if (t.MCParticleId==-13) hSigMapMuPlus->Fill(t.WinSigMap);
06979
06980 if (t.SM1) hSigMapSM1->Fill(t.WinSigMap);
06981 if (t.SM2) hSigMapSM2->Fill(t.WinSigMap);
06982
06983 if (t.WinAvCosThetaZ>0) hSigMapForw->Fill(t.WinSigMap);
06984 if (t.WinAvCosThetaZ<0) hSigMapBack->Fill(t.WinSigMap);
06985
06986
06987 if (reversedBField) hSigMapBBack->Fill(t.WinSigMap);
06988 else hSigMapBForw->Fill(t.WinSigMap);
06989 }
06990
06991
06992 if (t.WinSigMap>0 && t.WinSigMap<3000 &&
06993 fabs(t.WinAvCosThetaZ)>0.3){
06994
06995 pYvsXMeu->Fill(avX,avY,t.WinSigMap);
06996
06997 vTimeSec.push_back(evTime);
06998 vWinSigMap.push_back(t.WinSigMap);
06999
07000 Float_t winSigMapDrift=t.WinSigMap;
07001 this->DriftCalibrate(winSigMapDrift,t);
07002 vWinSigMapDrift.push_back(winSigMapDrift);
07003
07004
07005
07006
07007
07008
07009
07010
07011
07012
07013 Float_t winSigMapDriftX=t.WinSigMap*driftFudge;
07014
07015
07016 vWinSigMapDriftX.push_back(winSigMapDriftX);
07017
07018 if (t.Temperature>0){
07019 vTemperatures.push_back(t.Temperature);
07020 vTimeSecTemp.push_back(evTime);
07021 vWinSigMapTemp.push_back(t.WinSigMap);
07022 }
07023
07024 vCrateMask.push_back(t.CrateMask);
07025 vBusyChips.push_back(t.BusyChips);
07026 vColdChips.push_back(t.ColdChips);
07027 vDataQuality.push_back(int(t.GoodDataQuality));
07028 }
07029
07030 if (t.WinSigMap>0 && t.WinSigMap<3000 && !reversedBField) {
07031
07032 Int_t index=static_cast<Int_t>((t.WinAvCosThetaZ*0.999999+1)*10);
07033 MAXMSG("MeuPlots",Msg::kVerbose,400)
07034 <<"Using index="<<index<<endl;
07035 meuCosTh[index]->Fill(t.WinSigMap);
07036 }
07037
07038 Float_t meuU1=0;
07039 Float_t meuU2=0;
07040 Float_t meuV1=0;
07041 Float_t meuV2=0;
07042
07043 Float_t meuSM1U1=0;
07044 Float_t meuSM1U2=0;
07045 Float_t meuSM1V1=0;
07046 Float_t meuSM1V2=0;
07047 Float_t meuSM2U1=0;
07048 Float_t meuSM2U2=0;
07049 Float_t meuSM2V1=0;
07050 Float_t meuSM2V2=0;
07051
07052 Float_t meuPeRaw=0;
07053
07054 Float_t GeVPerMeu=0;
07055
07056 Int_t planeCounter=0;
07057 Int_t uCounter=0;
07058 Int_t vCounter=0;
07059
07060 MAXMSG("MeuPlots",Msg::kInfo,20)
07061 <<"fWinVtxSidePl="<<t.WinVtxSidePl
07062 <<", fWinStopSidePl="<<t.WinStopSidePl
07063 <<endl;
07064 Bool_t posDir=t.WinStopSidePl>t.WinVtxSidePl;
07065 Float_t totalPLCor=0;
07066 if (posDir) totalPLCor=14;
07067 Float_t sigDrfWin=0;
07068 Float_t sigLinOnlyWin=0;
07069 Float_t meuWinCor=0;
07070 Float_t meuWinCorCounter=0;
07071
07073
07075 TClonesArray& meuHits=(*t.MeuHitInfo);
07076 Int_t numHits=meuHits.GetEntries();
07077
07078 for (Int_t hit=0;hit<numHits;hit++){
07079 MAXMSG("MeuPlots",Msg::kInfo,3)
07080 <<"Looping over MeuHitInfo entries, numEntries="<<numHits<<endl;
07081
07082 const MeuHitInfo* meuHit=
07083 dynamic_cast<MeuHitInfo*>(meuHits[hit]);
07084 const MeuHitInfo& cp=(*meuHit);
07085 Int_t pl=cp.Plane;
07086
07087
07088 Float_t tposStrip=-1;
07089 if (t.Detector==Detector::kFar) {
07090 tposStrip=(cp.TPos+4)*192./8;
07091 }
07092 else if (t.Detector==Detector::kNear) {
07093
07094 if (cp.View==PlaneView::kU) tposStrip=cp.Strip;
07095 else if (cp.View==PlaneView::kV) tposStrip=cp.Strip;
07096 }
07097 else cout<<"Detector type not recognised"<<endl;
07098
07099 Float_t u=cp.TPos;
07100 Float_t v=cp.LPos;
07101 if (cp.View==PlaneView::kV){
07102 u=cp.LPos;
07103 v=cp.TPos;
07104 }
07105
07106
07107 planeCounter++;
07108 GeVPerMeu+=cp.MCEnDep/cp.PLCor;
07109 meuPeRaw+=cp.Pe;
07110
07111
07112 if (cp.SigMap==0) pEffVsPl->Fill(pl,0);
07113 else pEffVsPl->Fill(pl,1);
07114 if (cp.Strip<0) pEffTrkVsPl->Fill(pl,0);
07115 else pEffTrkVsPl->Fill(pl,1);
07116
07117
07118 pCosThZYvsX->Fill(cp.X,cp.Y,fabs(t.WinAvCosThetaZ));
07119 if (t.WinAvCosThetaZ>=0) {
07120 pCosThZPosYvsX->Fill(cp.X,cp.Y,fabs(t.WinAvCosThetaZ));
07121 }
07122 else pCosThZNegYvsX->Fill(cp.X,cp.Y,fabs(t.WinAvCosThetaZ));
07123
07124
07125
07126 Float_t corFact=-0.0043*totalPLCor+1.03;
07127 Float_t meuSigMapCor=corFact*cp.SigMap/cp.PLCor;
07128 Float_t meuSigMapCor1=corFact*cp.SigMap1/cp.PLCor;
07129 Float_t meuSigMapCor2=corFact*cp.SigMap2/cp.PLCor;
07130 Float_t meuSigCorCor=corFact*cp.SigCor/cp.PLCor;
07131 Float_t meuSigCorCor1=corFact*cp.SigCor1/cp.PLCor;
07132 Float_t meuSigCorCor2=corFact*cp.SigCor2/cp.PLCor;
07133 Float_t meuSigCorTrkCor1=corFact*cp.SigCorTrk1/cp.PLCor;
07134 Float_t meuSigCorTrkCor2=corFact*cp.SigCorTrk2/cp.PLCor;
07135 Float_t meuSigLinCor=corFact*cp.SigLin/cp.PLCor;
07136 Float_t meuSigLinCor1=corFact*cp.SigLin1/cp.PLCor;
07137 Float_t meuSigLinCor2=corFact*cp.SigLin2/cp.PLCor;
07138 Float_t meuSigPeCor=corFact*cp.Pe/cp.PLCor;
07139 Float_t meuSigPeCor1=corFact*cp.Pe1/cp.PLCor;
07140 Float_t meuSigPeCor2=corFact*cp.Pe2/cp.PLCor;
07141 Float_t meuAdcCor=corFact*cp.Adc/cp.PLCor;
07142 Float_t meuAdcCor1=corFact*cp.Adc1/cp.PLCor;
07143 Float_t meuAdcCor2=corFact*cp.Adc2/cp.PLCor;
07144 sigDrfWin+=cp.SigDrf/cp.PLCor;
07145 sigLinOnlyWin+=cp.SigLinOnly/cp.PLCor;
07146 meuWinCor+=meuSigMapCor;
07147 meuWinCorCounter++;
07148 MAXMSG("MeuPlots",Msg::kDebug,200)
07149 <<"pl="<<pl<<", totPLC="<<totalPLCor
07150 <<", PLC="<<cp.PLCor
07151 <<", meu="<<cp.SigMap/cp.PLCor
07152 <<", meuCor="<<meuSigMapCor
07153 <<", cor="<<corFact
07154 <<endl;
07155 if (posDir) totalPLCor-=cp.PLCor;
07156 else totalPLCor+=cp.PLCor;
07157
07158
07159 Float_t meuSigMapDriftCor=corFact*cp.SigMap/cp.PLCor;
07160 Float_t meuSigMapDriftCor1=corFact*cp.SigMap1/cp.PLCor;
07161 Float_t meuSigMapDriftCor2=corFact*cp.SigMap2/cp.PLCor;
07162 Float_t meuSigMapDriftXCor=corFact*cp.SigMap/cp.PLCor;
07163 Float_t meuSigMapDriftXCor1=corFact*cp.SigMap1/cp.PLCor;
07164 Float_t meuSigMapDriftXCor2=corFact*cp.SigMap2/cp.PLCor;
07165 Bool_t doDriftCal=true;
07166 if (doDriftCal){
07167 this->DriftCalibrate(meuSigMapDriftCor,t);
07168 this->DriftCalibrate(meuSigMapDriftCor1,t);
07169 this->DriftCalibrate(meuSigMapDriftCor2,t);
07170
07171 Float_t ratio=-1;
07172 if (meuSigMapDriftCor) ratio=meuSigMapCor/meuSigMapDriftCor;
07173
07174 Float_t extraDriftRatio=(ratio-1)*1.35;
07175 extraDriftRatio+=1;
07176 Float_t invExtraDriftRatio=(1./extraDriftRatio);
07177 meuSigMapDriftXCor*=invExtraDriftRatio;
07178 meuSigMapDriftXCor1*=invExtraDriftRatio;
07179 meuSigMapDriftXCor2*=invExtraDriftRatio;
07180
07181 MAXMSG("MeuPlots",Msg::kDebug,200)
07182 <<"Drift Cal: new="<<meuSigMapDriftCor
07183 <<", old="<<meuSigMapCor
07184 <<", response="<<ratio<<endl
07185 <<"Extra Drift Cal: new="<<meuSigMapDriftXCor
07186 <<", old="<<meuSigMapCor
07187 <<", response="<<extraDriftRatio
07188 <<endl;
07189 }
07190
07191
07192
07193 if (cp.View==2){
07194 meuU1+=cp.SigMap1/cp.PLCor;
07195 meuU2+=cp.SigMap2/cp.PLCor;
07196
07197 if (t.SM1) {
07198 meuSM1U1+=cp.SigMap1/cp.PLCor;
07199 meuSM1U2+=cp.SigMap2/cp.PLCor;
07200 }
07201 else if (t.SM2) {
07202 meuSM2U1+=cp.SigMap1/cp.PLCor;
07203 meuSM2U2+=cp.SigMap2/cp.PLCor;
07204 }
07205 uCounter++;
07206 }
07207 else if (cp.View==3){
07208 meuV1+=cp.SigMap1/cp.PLCor;
07209 meuV2+=cp.SigMap2/cp.PLCor;
07210
07211 if (t.SM1) {
07212 meuSM1V1+=cp.SigMap1/cp.PLCor;
07213 meuSM1V2+=cp.SigMap2/cp.PLCor;
07214 }
07215 else if (t.SM2) {
07216 meuSM2V1+=cp.SigMap1/cp.PLCor;
07217 meuSM2V2+=cp.SigMap2/cp.PLCor;
07218 }
07219 vCounter++;
07220 }
07221
07222
07223
07224 if (t.WinSigMap>0 && t.WinSigMap<3000 &&
07225 fabs(t.WinAvCosThetaZ)>0.5){
07226
07227 if (cp.SigMap/cp.PLCor<3000){
07228 pMeuVsPl->Fill(pl,meuSigMapCor);
07229 pPeVsPl->Fill(pl,meuSigPeCor);
07230 pStsVsPl->Fill(pl,meuSigCorCor);
07231 pSLVsPl->Fill(pl,meuSigLinCor);
07232 pAdcVsPl->Fill(pl,meuAdcCor);
07233
07234 pMeuVsPl1->Fill(pl,meuSigMapCor1);
07235 pPeVsPl1->Fill(pl,meuSigPeCor1);
07236 pStsVsPl1->Fill(pl,meuSigCorCor1);
07237 pSLVsPl1->Fill(pl,meuSigLinCor1);
07238 pAdcVsPl1->Fill(pl,meuAdcCor1);
07239
07240 pMeuVsPl2->Fill(pl,meuSigMapCor2);
07241 pPeVsPl2->Fill(pl,meuSigPeCor2);
07242 pStsVsPl2->Fill(pl,meuSigCorCor2);
07243 pSLVsPl2->Fill(pl,meuSigLinCor2);
07244 pAdcVsPl2->Fill(pl,meuAdcCor2);
07245
07246 pMeuVsPl4->Fill(pl,meuSigMapCor);
07247 pPeVsPl4->Fill(pl,meuSigPeCor);
07248 pStsVsPl4->Fill(pl,meuSigCorCor);
07249 pSLVsPl4->Fill(pl,meuSigLinCor);
07250 pAdcVsPl4->Fill(pl,meuAdcCor);
07251
07252 pMeuVsPl8->Fill(pl,meuSigMapCor);
07253 pPeVsPl8->Fill(pl,meuSigPeCor);
07254 pStsVsPl8->Fill(pl,meuSigCorCor);
07255 pSLVsPl8->Fill(pl,meuSigLinCor);
07256 pAdcVsPl8->Fill(pl,meuAdcCor);
07257
07258 pMeuVsPl16->Fill(pl,meuSigMapCor);
07259 pPeVsPl16->Fill(pl,meuSigPeCor);
07260 pStsVsPl16->Fill(pl,meuSigCorCor);
07261 pSLVsPl16->Fill(pl,meuSigLinCor);
07262 pAdcVsPl16->Fill(pl,meuAdcCor);
07263
07264
07265 if (t.TimeSec>1091318400) {
07266 pMeuVsPlT16->Fill(pl,meuSigMapCor);
07267 pStsVsPlT16->Fill(pl,meuSigCorCor);
07268 pSLVsPlT16->Fill(pl,meuSigLinCor);
07269 pAdcVsPlT16->Fill(pl,meuAdcCor);
07270 }
07271
07272 pMeuVsX->Fill(cp.X,meuSigMapCor);
07273 pMeuVsY->Fill(cp.Y,meuSigMapCor);
07274 pMeuVs40X->Fill(cp.X,meuSigMapCor);
07275 pMeuVs40Y->Fill(cp.Y,meuSigMapCor);
07276
07277 hYvsX->Fill(cp.X,cp.Y);
07278 pYvsX->Fill(cp.X,cp.Y,meuSigMapCor);
07279 pAdcYvsX->Fill(cp.X,cp.Y,meuAdcCor);
07280 pStsYvsX->Fill(cp.X,cp.Y,meuSigCorCor);
07281 pPeYvsX->Fill(cp.X,cp.Y,meuSigPeCor);
07282 if ((pl-1)%5==0) {
07283 hYvsXF->Fill(cp.X,cp.Y);
07284 pYvsXF->Fill(cp.X,cp.Y,meuSigMapCor);
07285 }
07286 else {
07287 hYvsXP->Fill(cp.X,cp.Y);
07288 pYvsXP->Fill(cp.X,cp.Y,meuSigMapCor);
07289 }
07290
07291 hYvsX15->Fill(cp.X,cp.Y);
07292 pYvsX15->Fill(cp.X,cp.Y,meuSigMapCor);
07293
07294 pYvsX20->Fill(cp.X,cp.Y,meuSigMapCor);
07295 pYvsX22->Fill(cp.X,cp.Y,meuSigMapCor);
07296 pYvsX25->Fill(cp.X,cp.Y,meuSigMapCor);
07297
07298 hYvsX16->Fill(cp.X,cp.Y);
07299 pYvsX16->Fill(cp.X,cp.Y,meuSigMapCor);
07300
07301 hYvsX30->Fill(cp.X,cp.Y);
07302 pYvsX30->Fill(cp.X,cp.Y,meuSigMapCor);
07303
07304 hYvsX100->Fill(cp.X,cp.Y);
07305 pYvsX100->Fill(cp.X,cp.Y,meuSigMapCor);
07306 Float_t z=1;
07307 if (cuts.IsInPittFidVol(cp.X,cp.Y,z,u,v)) {
07308 pYvsXPittZ100->Fill(cp.X,cp.Y,meuSigMapCor);
07309 }
07310 if (cuts.IsInPittFidVol(cp.X,cp.Y,cp.Z,u,v)) {
07311 pYvsXPitt100->Fill(cp.X,cp.Y,meuSigMapCor);
07312 }
07313
07314 hYvsX200->Fill(cp.X,cp.Y);
07315 pYvsX200->Fill(cp.X,cp.Y,meuSigMapCor);
07316
07317 if (cp.View==2){
07318
07319
07320 hYvsX16U->Fill(cp.X,cp.Y);
07321
07322
07323
07324 pYvsX16U->Fill(cp.X,cp.Y,meuSigMapCor);
07325 pYvsX16U1->Fill(cp.X,cp.Y,meuSigMapCor1);
07326 pYvsX16U2->Fill(cp.X,cp.Y,meuSigMapCor2);
07327 pStsYvsX16U->Fill(cp.X,cp.Y,meuSigCorCor);
07328 pStsYvsX16U1->Fill(cp.X,cp.Y,meuSigCorCor1);
07329 pStsYvsX16U2->Fill(cp.X,cp.Y,meuSigCorCor2);
07330 pStsYvsX16U1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07331 pStsYvsX16U2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07332 pAdcYvsX16U->Fill(cp.X,cp.Y,meuAdcCor);
07333 pAdcYvsX16U1->Fill(cp.X,cp.Y,meuAdcCor1);
07334 pAdcYvsX16U2->Fill(cp.X,cp.Y,meuAdcCor2);
07335 pPeYvsX16U->Fill(cp.X,cp.Y,meuSigPeCor);
07336 pPeYvsX16U1->Fill(cp.X,cp.Y,meuSigPeCor1);
07337 pPeYvsX16U2->Fill(cp.X,cp.Y,meuSigPeCor2);
07338
07339
07340 hYvsX30U->Fill(cp.X,cp.Y);
07341
07342
07343
07344 pYvsX30U->Fill(cp.X,cp.Y,meuSigMapCor);
07345 pYvsX30U1->Fill(cp.X,cp.Y,meuSigMapCor1);
07346 pYvsX30U2->Fill(cp.X,cp.Y,meuSigMapCor2);
07347 pStsYvsX30U->Fill(cp.X,cp.Y,meuSigCorCor);
07348 pStsYvsX30U1->Fill(cp.X,cp.Y,meuSigCorCor1);
07349 pStsYvsX30U2->Fill(cp.X,cp.Y,meuSigCorCor2);
07350 pStsYvsX30U1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07351 pStsYvsX30U2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07352 pAdcYvsX30U->Fill(cp.X,cp.Y,meuAdcCor);
07353 pAdcYvsX30U1->Fill(cp.X,cp.Y,meuAdcCor1);
07354 pAdcYvsX30U2->Fill(cp.X,cp.Y,meuAdcCor2);
07355 pPeYvsX30U->Fill(cp.X,cp.Y,meuSigPeCor);
07356 pPeYvsX30U1->Fill(cp.X,cp.Y,meuSigPeCor1);
07357 pPeYvsX30U2->Fill(cp.X,cp.Y,meuSigPeCor2);
07358
07359
07360 hYvsXU->Fill(cp.X,cp.Y);
07361
07362
07363
07364 pYvsXU->Fill(cp.X,cp.Y,meuSigMapCor);
07365 pYvsXU1->Fill(cp.X,cp.Y,meuSigMapCor1);
07366 pYvsXU2->Fill(cp.X,cp.Y,meuSigMapCor2);
07367 pStsYvsXU->Fill(cp.X,cp.Y,meuSigCorCor);
07368 pStsYvsXU1->Fill(cp.X,cp.Y,meuSigCorCor1);
07369 pStsYvsXU2->Fill(cp.X,cp.Y,meuSigCorCor2);
07370 pStsYvsXU1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07371 pStsYvsXU2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07372 pAdcYvsXU->Fill(cp.X,cp.Y,meuAdcCor);
07373 pAdcYvsXU1->Fill(cp.X,cp.Y,meuAdcCor1);
07374 pAdcYvsXU2->Fill(cp.X,cp.Y,meuAdcCor2);
07375 pPeYvsXU->Fill(cp.X,cp.Y,meuSigPeCor);
07376 pPeYvsXU1->Fill(cp.X,cp.Y,meuSigPeCor1);
07377 pPeYvsXU2->Fill(cp.X,cp.Y,meuSigPeCor2);
07378
07379
07380 if ((pl-1)%5==0) {
07381 hYvsXFU->Fill(cp.X,cp.Y);
07382
07383
07384
07385 pYvsXFU->Fill(cp.X,cp.Y,meuSigMapCor);
07386 pYvsXFU1->Fill(cp.X,cp.Y,meuSigMapCor1);
07387 pYvsXFU2->Fill(cp.X,cp.Y,meuSigMapCor2);
07388 pStsYvsXFU->Fill(cp.X,cp.Y,meuSigCorCor);
07389 pStsYvsXFU1->Fill(cp.X,cp.Y,meuSigCorCor1);
07390 pStsYvsXFU2->Fill(cp.X,cp.Y,meuSigCorCor2);
07391 pStsYvsXFU1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07392 pStsYvsXFU2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07393 pAdcYvsXFU->Fill(cp.X,cp.Y,meuAdcCor);
07394 pAdcYvsXFU1->Fill(cp.X,cp.Y,meuAdcCor1);
07395 pAdcYvsXFU2->Fill(cp.X,cp.Y,meuAdcCor2);
07396 }
07397
07398 else {
07399 hYvsXPU->Fill(cp.X,cp.Y);
07400
07401
07402
07403 pYvsXPU->Fill(cp.X,cp.Y,meuSigMapCor);
07404 pYvsXPU1->Fill(cp.X,cp.Y,meuSigMapCor1);
07405 pYvsXPU2->Fill(cp.X,cp.Y,meuSigMapCor2);
07406 pStsYvsXPU->Fill(cp.X,cp.Y,meuSigCorCor);
07407 pStsYvsXPU1->Fill(cp.X,cp.Y,meuSigCorCor1);
07408 pStsYvsXPU2->Fill(cp.X,cp.Y,meuSigCorCor2);
07409 pStsYvsXPU1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07410 pStsYvsXPU2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07411 pAdcYvsXPU->Fill(cp.X,cp.Y,meuAdcCor);
07412 pAdcYvsXPU1->Fill(cp.X,cp.Y,meuAdcCor1);
07413 pAdcYvsXPU2->Fill(cp.X,cp.Y,meuAdcCor2);
07414 }
07415
07416
07417 hYvsX100U->Fill(cp.X,cp.Y);
07418
07419
07420
07421 pYvsX100U->Fill(cp.X,cp.Y,meuSigMapCor);
07422 pYvsX100U1->Fill(cp.X,cp.Y,meuSigMapCor1);
07423 pYvsX100U2->Fill(cp.X,cp.Y,meuSigMapCor2);
07424 pStsYvsX100U->Fill(cp.X,cp.Y,meuSigCorCor);
07425 pStsYvsX100U1->Fill(cp.X,cp.Y,meuSigCorCor1);
07426 pStsYvsX100U2->Fill(cp.X,cp.Y,meuSigCorCor2);
07427 pStsYvsX100U1Trk->Fill
07428 (cp.X,cp.Y,meuSigCorTrkCor1);
07429 pStsYvsX100U2Trk->Fill
07430 (cp.X,cp.Y,meuSigCorTrkCor2);
07431 pAdcYvsX100U->Fill(cp.X,cp.Y,meuAdcCor);
07432 pAdcYvsX100U1->Fill(cp.X,cp.Y,meuAdcCor1);
07433 pAdcYvsX100U2->Fill(cp.X,cp.Y,meuAdcCor2);
07434 pPeYvsX100U->Fill(cp.X,cp.Y,meuSigPeCor);
07435 pPeYvsX100U1->Fill(cp.X,cp.Y,meuSigPeCor1);
07436 pPeYvsX100U2->Fill(cp.X,cp.Y,meuSigPeCor2);
07437
07438
07439 hYvsX200U->Fill(cp.X,cp.Y);
07440
07441
07442
07443 pYvsX200U->Fill(cp.X,cp.Y,meuSigMapCor);
07444 pYvsX200U1->Fill(cp.X,cp.Y,meuSigMapCor1);
07445 pYvsX200U2->Fill(cp.X,cp.Y,meuSigMapCor2);
07446 pStsYvsX200U->Fill(cp.X,cp.Y,meuSigCorCor);
07447 pStsYvsX200U1->Fill(cp.X,cp.Y,meuSigCorCor1);
07448 pStsYvsX200U2->Fill(cp.X,cp.Y,meuSigCorCor2);
07449 pStsYvsX200U1Trk->Fill
07450 (cp.X,cp.Y,meuSigCorTrkCor1);
07451 pStsYvsX200U2Trk->Fill
07452 (cp.X,cp.Y,meuSigCorTrkCor2);
07453 pAdcYvsX200U->Fill(cp.X,cp.Y,meuAdcCor);
07454 pAdcYvsX200U1->Fill(cp.X,cp.Y,meuAdcCor1);
07455 pAdcYvsX200U2->Fill(cp.X,cp.Y,meuAdcCor2);
07456 pPeYvsX200U->Fill(cp.X,cp.Y,meuSigPeCor);
07457 pPeYvsX200U1->Fill(cp.X,cp.Y,meuSigPeCor1);
07458 pPeYvsX200U2->Fill(cp.X,cp.Y,meuSigPeCor2);
07459
07460
07461 pMeuVsPlU->Fill(pl,meuSigMapCor);
07462 pPeVsPlU->Fill(pl,meuSigPeCor);
07463 pStsVsPlU->Fill(pl,meuSigCorCor);
07464 pSLVsPlU->Fill(pl,meuSigLinCor);
07465 pAdcVsPlU->Fill(pl,meuAdcCor);
07466
07467 pMeuVsXU->Fill(cp.X,meuSigMapCor);
07468 pMeuVsYU->Fill(cp.Y,meuSigMapCor);
07469 pMeuVsTU->Fill(cp.TPos,meuSigMapCor);
07470 pMeuVsLU->Fill(cp.LPos,meuSigMapCor);
07471 pMeuVsStripU20->Fill(tposStrip,meuSigMapCor);
07472
07473 pCorVsTU->Fill(cp.TPos,meuSigCorCor);
07474 pCorVsLU->Fill(cp.LPos,meuSigCorCor);
07475
07476 pAdcVsTU1->Fill(cp.TPos,meuAdcCor1);
07477 pAdcVsTU2->Fill(cp.TPos,meuAdcCor2);
07478
07479
07480 pMeuVs40XU->Fill(cp.X,meuSigMapCor);
07481 pMeuVs40YU->Fill(cp.Y,meuSigMapCor);
07482 pMeuVs40TU->Fill(cp.TPos,meuSigMapCor);
07483 pMeuVs40StripU->Fill(tposStrip,meuSigMapCor);
07484 if (tposStrip>=0){
07485 pMeuVsStripU->Fill(tposStrip,meuSigMapCor);
07486 pStsVsStripU->Fill(tposStrip,meuSigCorCor);
07487 pAdcVsStripU->Fill(tposStrip,meuAdcCor);
07488 pPeVsStripU->Fill(tposStrip,meuSigPeCor);
07489
07490 if ((pl-1)%5==0) {
07491 pMeuVsStripUF->Fill(tposStrip,meuSigMapCor);
07492 pStsVsStripUF->Fill(tposStrip,meuSigCorCor);
07493 pAdcVsStripUF->Fill(tposStrip,meuAdcCor);
07494 pPeVsStripUF->Fill(tposStrip,meuSigPeCor);
07495 }
07496 else{
07497 pMeuVsStripUP->Fill(tposStrip,meuSigMapCor);
07498 pStsVsStripUP->Fill(tposStrip,meuSigCorCor);
07499 pAdcVsStripUP->Fill(tposStrip,meuAdcCor);
07500 pPeVsStripUP->Fill(tposStrip,meuSigPeCor);
07501 }
07502 }
07503 pMeuVs40LU->Fill(cp.LPos,meuSigMapCor);
07504
07505 pCorVs40TU->Fill(cp.TPos,meuSigCorCor);
07506 pCorVs40LU->Fill(cp.LPos,meuSigCorCor);
07507
07508 pAdcVs40TU1->Fill(cp.TPos,meuAdcCor1);
07509 pAdcVs40TU2->Fill(cp.TPos,meuAdcCor2);
07510
07511
07512 if (cp.LPos>-1 && cp.LPos<1){
07513 pMeuVsTU11->Fill(cp.TPos,meuSigMapCor1);
07514 pMeuVsTU21->Fill(cp.TPos,meuSigMapCor2);
07515
07516
07517 pMeuVs40TU11->Fill(cp.TPos,meuSigMapCor1);
07518 pMeuVs40TU21->Fill(cp.TPos,meuSigMapCor2);
07519 }
07520 if (cp.LPos>-0.5 && cp.LPos<0.5){
07521 pMeuVsTU15->Fill(cp.TPos,meuSigMapCor1);
07522 pMeuVsTU25->Fill(cp.TPos,meuSigMapCor2);
07523
07524
07525 pMeuVs40TU15->Fill(cp.TPos,meuSigMapCor1);
07526 pMeuVs40TU25->Fill(cp.TPos,meuSigMapCor2);
07527 }
07528
07529
07530
07531
07532 if ((t.Detector==Detector::kFar &&
07533 cp.TPos>-1.65 && cp.TPos<1.65) ||
07534 (t.Detector==Detector::kNear &&
07535 cp.TPos>-1.65 && cp.TPos<1.65)){
07536 pMeuVsTU8->Fill(cp.TPos,meuSigMapCor);
07537 pMeuVsLU8->Fill(cp.LPos,meuSigMapCor);
07538 pMeuVsLU18->Fill(cp.LPos,meuSigMapCor1);
07539 pMeuVsLU28->Fill(cp.LPos,meuSigMapCor2);
07540
07541 pCorVsTU8->Fill(cp.TPos,meuSigCorCor);
07542 pCorVsLU8->Fill(cp.LPos,meuSigCorCor);
07543 pCorVsLU18->Fill(cp.LPos,meuSigCorCor1);
07544 pCorVsLU28->Fill(cp.LPos,meuSigCorCor2);
07545
07546 pAdcVsLU8->Fill(cp.LPos,meuAdcCor);
07547 pAdcVsLU18->Fill(cp.LPos,meuAdcCor1);
07548 pAdcVsLU28->Fill(cp.LPos,meuAdcCor2);
07549
07550 pPeVsLU8->Fill(cp.LPos,meuSigPeCor);
07551 pPeVsLU18->Fill(cp.LPos,meuSigPeCor1);
07552 pPeVsLU28->Fill(cp.LPos,meuSigPeCor2);
07553
07554
07555 pMeuVs40TU8->Fill(cp.TPos,meuSigMapCor);
07556 pMeuVs40LU8->Fill(cp.LPos,meuSigMapCor);
07557 pMeuVs40LU18->Fill(cp.LPos,meuSigMapCor1);
07558 pMeuVs40LU28->Fill(cp.LPos,meuSigMapCor2);
07559
07560 pCorVs40TU8->Fill(cp.TPos,meuSigCorCor);
07561 pCorVs40LU8->Fill(cp.LPos,meuSigCorCor);
07562 pCorVs40LU18->Fill(cp.LPos,meuSigCorCor1);
07563 pCorVs40LU28->Fill(cp.LPos,meuSigCorCor2);
07564
07565 pAdcVs40LU8->Fill(cp.LPos,meuAdcCor);
07566 pAdcVs40LU18->Fill(cp.LPos,meuAdcCor1);
07567 pAdcVs40LU28->Fill(cp.LPos,meuAdcCor2);
07568
07569 pPeVs40LU8->Fill(cp.LPos,meuSigPeCor);
07570 pPeVs40LU18->Fill(cp.LPos,meuSigPeCor1);
07571 pPeVs40LU28->Fill(cp.LPos,meuSigPeCor2);
07572 }
07573 }
07574 else if (cp.View==3){
07575
07576
07577 hYvsX16V->Fill(cp.X,cp.Y);
07578
07579
07580
07581 pYvsX16V->Fill(cp.X,cp.Y,meuSigMapCor);
07582 pYvsX16V1->Fill(cp.X,cp.Y,meuSigMapCor1);
07583 pYvsX16V2->Fill(cp.X,cp.Y,meuSigMapCor2);
07584 pStsYvsX16V->Fill(cp.X,cp.Y,meuSigCorCor);
07585 pStsYvsX16V1->Fill(cp.X,cp.Y,meuSigCorCor1);
07586 pStsYvsX16V2->Fill(cp.X,cp.Y,meuSigCorCor2);
07587 pStsYvsX16V1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07588 pStsYvsX16V2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07589 pAdcYvsX16V->Fill(cp.X,cp.Y,meuAdcCor);
07590 pAdcYvsX16V1->Fill(cp.X,cp.Y,meuAdcCor1);
07591 pAdcYvsX16V2->Fill(cp.X,cp.Y,meuAdcCor2);
07592 pPeYvsX16V->Fill(cp.X,cp.Y,meuSigPeCor);
07593 pPeYvsX16V1->Fill(cp.X,cp.Y,meuSigPeCor1);
07594 pPeYvsX16V2->Fill(cp.X,cp.Y,meuSigPeCor2);
07595
07596
07597 hYvsX30V->Fill(cp.X,cp.Y);
07598
07599
07600
07601 pYvsX30V->Fill(cp.X,cp.Y,meuSigMapCor);
07602 pYvsX30V1->Fill(cp.X,cp.Y,meuSigMapCor1);
07603 pYvsX30V2->Fill(cp.X,cp.Y,meuSigMapCor2);
07604 pStsYvsX30V->Fill(cp.X,cp.Y,meuSigCorCor);
07605 pStsYvsX30V1->Fill(cp.X,cp.Y,meuSigCorCor1);
07606 pStsYvsX30V2->Fill(cp.X,cp.Y,meuSigCorCor2);
07607 pStsYvsX30V1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07608 pStsYvsX30V2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07609 pAdcYvsX30V->Fill(cp.X,cp.Y,meuAdcCor);
07610 pAdcYvsX30V1->Fill(cp.X,cp.Y,meuAdcCor1);
07611 pAdcYvsX30V2->Fill(cp.X,cp.Y,meuAdcCor2);
07612 pPeYvsX30V->Fill(cp.X,cp.Y,meuSigPeCor);
07613 pPeYvsX30V1->Fill(cp.X,cp.Y,meuSigPeCor1);
07614 pPeYvsX30V2->Fill(cp.X,cp.Y,meuSigPeCor2);
07615
07616
07617 hYvsXV->Fill(cp.X,cp.Y);
07618
07619
07620
07621 pYvsXV->Fill(cp.X,cp.Y,meuSigMapCor);
07622 pYvsXV1->Fill(cp.X,cp.Y,meuSigMapCor1);
07623 pYvsXV2->Fill(cp.X,cp.Y,meuSigMapCor2);
07624 pStsYvsXV->Fill(cp.X,cp.Y,meuSigCorCor);
07625 pStsYvsXV1->Fill(cp.X,cp.Y,meuSigCorCor1);
07626 pStsYvsXV2->Fill(cp.X,cp.Y,meuSigCorCor2);
07627 pStsYvsXV1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07628 pStsYvsXV2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07629 pAdcYvsXV->Fill(cp.X,cp.Y,meuAdcCor);
07630 pAdcYvsXV1->Fill(cp.X,cp.Y,meuAdcCor1);
07631 pAdcYvsXV2->Fill(cp.X,cp.Y,meuAdcCor2);
07632 pPeYvsXV->Fill(cp.X,cp.Y,meuSigPeCor);
07633 pPeYvsXV1->Fill(cp.X,cp.Y,meuSigPeCor1);
07634 pPeYvsXV2->Fill(cp.X,cp.Y,meuSigPeCor2);
07635
07636
07637 if ((pl-1)%5==0) {
07638 hYvsXFV->Fill(cp.X,cp.Y);
07639
07640
07641
07642 pYvsXFV->Fill(cp.X,cp.Y,meuSigMapCor);
07643 pYvsXFV1->Fill(cp.X,cp.Y,meuSigMapCor1);
07644 pYvsXFV2->Fill(cp.X,cp.Y,meuSigMapCor2);
07645 pStsYvsXFV->Fill(cp.X,cp.Y,meuSigCorCor);
07646 pStsYvsXFV1->Fill(cp.X,cp.Y,meuSigCorCor1);
07647 pStsYvsXFV2->Fill(cp.X,cp.Y,meuSigCorCor2);
07648 pStsYvsXFV1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07649 pStsYvsXFV2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07650 pAdcYvsXFV->Fill(cp.X,cp.Y,meuAdcCor);
07651 pAdcYvsXFV1->Fill(cp.X,cp.Y,meuAdcCor1);
07652 pAdcYvsXFV2->Fill(cp.X,cp.Y,meuAdcCor2);
07653 }
07654
07655 else {
07656 hYvsXPV->Fill(cp.X,cp.Y);
07657
07658
07659
07660 pYvsXPV->Fill(cp.X,cp.Y,meuSigMapCor);
07661 pYvsXPV1->Fill(cp.X,cp.Y,meuSigMapCor1);
07662 pYvsXPV2->Fill(cp.X,cp.Y,meuSigMapCor2);
07663 pStsYvsXPV->Fill(cp.X,cp.Y,meuSigCorCor);
07664 pStsYvsXPV1->Fill(cp.X,cp.Y,meuSigCorCor1);
07665 pStsYvsXPV2->Fill(cp.X,cp.Y,meuSigCorCor2);
07666 pStsYvsXPV1Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor1);
07667 pStsYvsXPV2Trk->Fill(cp.X,cp.Y,meuSigCorTrkCor2);
07668 pAdcYvsXPV->Fill(cp.X,cp.Y,meuAdcCor);
07669 pAdcYvsXPV1->Fill(cp.X,cp.Y,meuAdcCor1);
07670 pAdcYvsXPV2->Fill(cp.X,cp.Y,meuAdcCor2);
07671 }
07672
07673
07674 hYvsX100V->Fill(cp.X,cp.Y);
07675
07676
07677
07678 pYvsX100V->Fill(cp.X,cp.Y,meuSigMapCor);
07679 pYvsX100V1->Fill(cp.X,cp.Y,meuSigMapCor1);
07680 pYvsX100V2->Fill(cp.X,cp.Y,meuSigMapCor2);
07681 pStsYvsX100V->Fill(cp.X,cp.Y,meuSigCorCor);
07682 pStsYvsX100V1->Fill(cp.X,cp.Y,meuSigCorCor1);
07683 pStsYvsX100V2->Fill(cp.X,cp.Y,meuSigCorCor2);
07684 pStsYvsX100V1Trk->Fill
07685 (cp.X,cp.Y,meuSigCorTrkCor1);
07686 pStsYvsX100V2Trk->Fill
07687 (cp.X,cp.Y,meuSigCorTrkCor2);
07688 pAdcYvsX100V->Fill(cp.X,cp.Y,meuAdcCor);
07689 pAdcYvsX100V1->Fill(cp.X,cp.Y,meuAdcCor1);
07690 pAdcYvsX100V2->Fill(cp.X,cp.Y,meuAdcCor2);
07691 pPeYvsX100V->Fill(cp.X,cp.Y,meuSigPeCor);
07692 pPeYvsX100V1->Fill(cp.X,cp.Y,meuSigPeCor1);
07693 pPeYvsX100V2->Fill(cp.X,cp.Y,meuSigPeCor2);
07694
07695
07696 hYvsX200V->Fill(cp.X,cp.Y);
07697
07698
07699
07700 pYvsX200V->Fill(cp.X,cp.Y,meuSigMapCor);
07701 pYvsX200V1->Fill(cp.X,cp.Y,meuSigMapCor1);
07702 pYvsX200V2->Fill(cp.X,cp.Y,meuSigMapCor2);
07703 pStsYvsX200V->Fill(cp.X,cp.Y,meuSigCorCor);
07704 pStsYvsX200V1->Fill(cp.X,cp.Y,meuSigCorCor1);
07705 pStsYvsX200V2->Fill(cp.X,cp.Y,meuSigCorCor2);
07706 pStsYvsX200V1Trk->Fill
07707 (cp.X,cp.Y,meuSigCorTrkCor1);
07708 pStsYvsX200V2Trk->Fill
07709 (cp.X,cp.Y,meuSigCorTrkCor2);
07710 pAdcYvsX200V->Fill(cp.X,cp.Y,meuAdcCor);
07711 pAdcYvsX200V1->Fill(cp.X,cp.Y,meuAdcCor1);
07712 pAdcYvsX200V2->Fill(cp.X,cp.Y,meuAdcCor2);
07713 pPeYvsX200V->Fill(cp.X,cp.Y,meuSigPeCor);
07714 pPeYvsX200V1->Fill(cp.X,cp.Y,meuSigPeCor1);
07715 pPeYvsX200V2->Fill(cp.X,cp.Y,meuSigPeCor2);
07716
07717
07718 pMeuVsPlV->Fill(pl,meuSigMapCor);
07719 pPeVsPlV->Fill(pl,meuSigPeCor);
07720 pStsVsPlV->Fill(pl,meuSigCorCor);
07721 pSLVsPlV->Fill(pl,meuSigLinCor);
07722 pAdcVsPlV->Fill(pl,meuAdcCor);
07723
07724 pMeuVsXV->Fill(cp.X,meuSigMapCor);
07725 pMeuVsYV->Fill(cp.Y,meuSigMapCor);
07726 pMeuVsTV->Fill(cp.TPos,meuSigMapCor);
07727 pMeuVsStripV20->Fill(tposStrip,meuSigMapCor);
07728 pMeuVsLV->Fill(cp.LPos,meuSigMapCor);
07729
07730 pCorVsTV->Fill(cp.TPos,meuSigCorCor);
07731 pCorVsLV->Fill(cp.LPos,meuSigCorCor);
07732
07733 pAdcVsTV1->Fill(cp.TPos,meuAdcCor1);
07734 pAdcVsTV2->Fill(cp.TPos,meuAdcCor2);
07735
07736
07737 pMeuVs40XV->Fill(cp.X,meuSigMapCor);
07738 pMeuVs40YV->Fill(cp.Y,meuSigMapCor);
07739 pMeuVs40TV->Fill(cp.TPos,meuSigMapCor);
07740 pMeuVs40StripV->Fill(tposStrip,meuSigMapCor);
07741 if (tposStrip>=0){
07742 pMeuVsStripV->Fill(tposStrip,meuSigMapCor);
07743 pStsVsStripV->Fill(tposStrip,meuSigCorCor);
07744 pAdcVsStripV->Fill(tposStrip,meuAdcCor);
07745 pPeVsStripV->Fill(tposStrip,meuSigPeCor);
07746
07747 if ((pl-1)%5==0) {
07748 pMeuVsStripVF->Fill(tposStrip,meuSigMapCor);
07749 pStsVsStripVF->Fill(tposStrip,meuSigCorCor);
07750 pAdcVsStripVF->Fill(tposStrip,meuAdcCor);
07751 pPeVsStripVF->Fill(tposStrip,meuSigPeCor);
07752 }
07753 else{
07754 pMeuVsStripVP->Fill(tposStrip,meuSigMapCor);
07755 pStsVsStripVP->Fill(tposStrip,meuSigCorCor);
07756 pAdcVsStripVP->Fill(tposStrip,meuAdcCor);
07757 pPeVsStripVP->Fill(tposStrip,meuSigPeCor);
07758 }
07759 }
07760 pMeuVs40LV->Fill(cp.LPos,meuSigMapCor);
07761
07762 pCorVs40TV->Fill(cp.TPos,meuSigCorCor);
07763 pCorVs40LV->Fill(cp.LPos,meuSigCorCor);
07764
07765 pAdcVs40TV1->Fill(cp.TPos,meuAdcCor1);
07766 pAdcVs40TV2->Fill(cp.TPos,meuAdcCor2);
07767
07768
07769
07770 if (cp.LPos>-1 && cp.LPos<1){
07771 pMeuVsTV11->Fill(cp.TPos,meuSigMapCor1);
07772 pMeuVsTV21->Fill(cp.TPos,meuSigMapCor2);
07773
07774
07775 pMeuVs40TV11->Fill(cp.TPos,meuSigMapCor1);
07776 pMeuVs40TV21->Fill(cp.TPos,meuSigMapCor2);
07777 }
07778 if (cp.LPos>-0.5 && cp.LPos<0.5){
07779 pMeuVsTV15->Fill(cp.TPos,meuSigMapCor1);
07780 pMeuVsTV25->Fill(cp.TPos,meuSigMapCor2);
07781
07782
07783 pMeuVs40TV15->Fill(cp.TPos,meuSigMapCor1);
07784 pMeuVs40TV25->Fill(cp.TPos,meuSigMapCor2);
07785 }
07786
07787
07788
07789 if ((t.Detector==Detector::kFar &&
07790 cp.TPos>-1.65 && cp.TPos<1.65) ||
07791 (t.Detector==Detector::kNear &&
07792 cp.TPos>-1.65 && cp.TPos<1.65)){
07793 pMeuVsTV8->Fill(cp.TPos,meuSigMapCor);
07794 pMeuVsLV8->Fill(cp.LPos,meuSigMapCor);
07795 pMeuVsLV18->Fill(cp.LPos,meuSigMapCor1);
07796 pMeuVsLV28->Fill(cp.LPos,meuSigMapCor2);
07797
07798 pCorVsTV8->Fill(cp.TPos,meuSigCorCor);
07799 pCorVsLV8->Fill(cp.LPos,meuSigCorCor);
07800 pCorVsLV18->Fill(cp.LPos,meuSigCorCor1);
07801 pCorVsLV28->Fill(cp.LPos,meuSigCorCor2);
07802
07803 pAdcVsLV8->Fill(cp.LPos,meuAdcCor);
07804 pAdcVsLV18->Fill(cp.LPos,meuAdcCor1);
07805 pAdcVsLV28->Fill(cp.LPos,meuAdcCor2);
07806
07807 pPeVsLV8->Fill(cp.LPos,meuSigPeCor);
07808 pPeVsLV18->Fill(cp.LPos,meuSigPeCor1);
07809 pPeVsLV28->Fill(cp.LPos,meuSigPeCor2);
07810
07811
07812 pMeuVs40TV8->Fill(cp.TPos,meuSigMapCor);
07813 pMeuVs40LV8->Fill(cp.LPos,meuSigMapCor);
07814 pMeuVs40LV18->Fill(cp.LPos,meuSigMapCor1);
07815 pMeuVs40LV28->Fill(cp.LPos,meuSigMapCor2);
07816
07817 pCorVs40TV8->Fill(cp.TPos,meuSigCorCor);
07818 pCorVs40LV8->Fill(cp.LPos,meuSigCorCor);
07819 pCorVs40LV18->Fill(cp.LPos,meuSigCorCor1);
07820 pCorVs40LV28->Fill(cp.LPos,meuSigCorCor2);
07821
07822 pAdcVs40LV8->Fill(cp.LPos,meuAdcCor);
07823 pAdcVs40LV18->Fill(cp.LPos,meuAdcCor1);
07824 pAdcVs40LV28->Fill(cp.LPos,meuAdcCor2);
07825 pPeVs40LV8->Fill(cp.LPos,meuSigPeCor);
07826 pPeVs40LV18->Fill(cp.LPos,meuSigPeCor1);
07827 pPeVs40LV28->Fill(cp.LPos,meuSigPeCor2);
07828 }
07829 }
07830 }
07831 }
07832 }
07833
07834
07835 GeVPerMeu/=planeCounter;
07836 meuPeRaw/=planeCounter;
07837 hGeVPerMeu->Fill(GeVPerMeu);
07838 hPeRaw->Fill(meuPeRaw);
07839 if (meuWinCorCounter!=0){
07840 meuWinCor/=meuWinCorCounter;
07841 sigDrfWin/=meuWinCorCounter;
07842 sigLinOnlyWin/=meuWinCorCounter;
07843 if (fabs(t.WinAvCosThetaZ)>0.3) {
07844 hSigMapWinCor->Fill(meuWinCor);
07845 hSigDrfWin->Fill(sigDrfWin);
07846 hSigLinOnlyWin->Fill(sigLinOnlyWin);
07847
07848
07849
07850 vWinSigLinOnlyCosTh.push_back(sigLinOnlyWin);
07851 vWinSigDrfCosTh.push_back(sigDrfWin);
07852 }
07853 }
07854
07855
07856 if (uCounter>0){
07857 meuU1/=uCounter;
07858 meuU2/=uCounter;
07859
07860 if (t.SM1) {
07861 meuSM1U1/=uCounter;
07862 meuSM1U2/=uCounter;
07863 }
07864 else if (t.SM2) {
07865 meuSM2U1/=uCounter;
07866 meuSM2U2/=uCounter;
07867 }
07868 }
07869 if (vCounter>0){
07870 meuV1/=vCounter;
07871 meuV2/=vCounter;
07872
07873 if (t.SM1) {
07874 meuSM1V1/=vCounter;
07875 meuSM1V2/=vCounter;
07876 }
07877 else if (t.SM2) {
07878 meuSM2V1/=vCounter;
07879 meuSM2V2/=vCounter;
07880 }
07881 }
07882
07883
07884 hSigMapU1->Fill(meuU1);
07885 hSigMapU2->Fill(meuU2);
07886 hSigMapV1->Fill(meuV1);
07887 hSigMapV2->Fill(meuV2);
07888
07889 if (t.SM1) {
07890 hSigMapSM1U1->Fill(meuSM1U1);
07891 hSigMapSM1U2->Fill(meuSM1U2);
07892 hSigMapSM1V1->Fill(meuSM1V1);
07893 hSigMapSM1V2->Fill(meuSM1V2);
07894 }
07895 else if (t.SM2) {
07896 hSigMapSM2U1->Fill(meuSM2U1);
07897 hSigMapSM2U2->Fill(meuSM2U2);
07898 hSigMapSM2V1->Fill(meuSM2V1);
07899 hSigMapSM2V2->Fill(meuSM2V2);
07900 }
07901 else cout<<"Ahhhhhhhhhh"<<endl;
07902 }
07903
07907
07908 MSG("MeuPlots",Msg::kInfo)<<"Finished main loop"<<endl;
07909
07910 Int_t det=static_cast<Int_t>(hDetector->GetMean());
07911 Int_t simFlag=static_cast<Int_t>(hSimFlag->GetMean());
07912 MAXMSG("MeuPlots",Msg::kInfo,100)
07913 <<"Using Detector="<<det<<", SimFlag="<<simFlag<<endl;
07914
07915 Int_t numMonths=static_cast<Int_t>
07916 ((endTimeSecs-startTimeSecs)/(30*24*60*60))+1;
07917 MSG("MeuPlots",Msg::kInfo)
07918 <<"Found start time and end time: "
07919 <<startTimeSecs<<" -> "<<endTimeSecs
07920 <<", #months="<<numMonths<<endl;
07921 this->EpochTo1995(endTimeSecs);
07922 this->EpochTo1995(startTimeSecs);
07923
07924 for (Int_t i=0;i<20;i++){
07925 Double_t quantile=0.5;
07926 Double_t meu=-1;
07927 Float_t cosTheta=(i/10.)-1;
07928 TH1F* h=meuCosTh[i];
07929 h->GetQuantiles(1,&meu,&quantile);
07930 MSG("MeuPlots",Msg::kInfo)
07931 <<"CosTheta="<<cosTheta
07932 <<", meu="<<meu
07933 <<", mean="<<h->GetMean()
07934 <<", entries="<<h->GetEntries()
07935 <<endl;
07936 }
07937
07938
07939
07940
07941
07942
07943
07944
07945
07946
07947
07948
07949
07950
07951
07952
07953
07954
07955
07956
07957
07958
07959
07960
07961
07962
07963 Double_t quantile=0.5;
07964 Double_t meu=-1;
07965 hSigMap->GetQuantiles(1,&meu,&quantile);
07966 for (Double_t q=0.4;q<=0.6;q+=0.01){
07967 Double_t sigMap=0;
07968 hSigMap->GetQuantiles(1,&sigMap,&q);
07969
07970 MSG("MeuPlots",Msg::kInfo)
07971 <<"meu="<<sigMap<<" for quantile="<<q
07972 <<", diff="<<sigMap-meu<<" ("<<100.*(sigMap-meu)/meu<<"%)"
07973 <<endl;
07974 }
07975 MSG("MeuPlots",Msg::kInfo)
07976 <<endl<<"meu="<<meu<<", mean="<<hSigMap->GetMean()
07977 <<", entries="<<hSigMap->GetEntries()<<endl<<endl;
07978
07979 Double_t meuForward=-1;
07980 hSigMapForw->GetQuantiles(1,&meuForward,&quantile);
07981 Double_t meuBackward=-1;
07982 hSigMapBack->GetQuantiles(1,&meuBackward,&quantile);
07983 MSG("MeuPlots",Msg::kInfo)
07984 <<endl<<"Forwards and backwards:"<<endl
07985 <<" forward meu="<<meuForward<<", mean="<<hSigMapForw->GetMean()
07986 <<", entries="<<hSigMapForw->GetEntries()<<endl;
07987 MSG("MeuPlots",Msg::kInfo)
07988 <<" backward meu="<<meuBackward<<", mean="<<hSigMapBack->GetMean()
07989 <<", entries="<<hSigMapBack->GetEntries()<<endl;
07990
07991 Double_t meuSM1=-1;
07992 hSigMapSM1->GetQuantiles(1,&meuSM1,&quantile);
07993 Double_t meuSM2=-1;
07994 hSigMapSM2->GetQuantiles(1,&meuSM2,&quantile);
07995 MSG("MeuPlots",Msg::kInfo)
07996 <<endl<<"SM1 and SM2:"<<endl
07997 <<" SM1: meu="<<meuSM1<<", mean="<<hSigMapSM1->GetMean()
07998 <<", entries="<<hSigMapSM1->GetEntries()<<endl;
07999 MSG("MeuPlots",Msg::kInfo)
08000 <<" SM2: meu="<<meuSM2<<", mean="<<hSigMapSM2->GetMean()
08001 <<", entries="<<hSigMapSM2->GetEntries()<<endl;
08002
08003 Double_t meuU1=-1;
08004 Double_t meuU2=-1;
08005 Double_t meuV1=-1;
08006 Double_t meuV2=-1;
08007 hSigMapU1->GetQuantiles(1,&meuU1,&quantile);
08008 hSigMapU2->GetQuantiles(1,&meuU2,&quantile);
08009 hSigMapV1->GetQuantiles(1,&meuV1,&quantile);
08010 hSigMapV2->GetQuantiles(1,&meuV2,&quantile);
08011 MSG("MeuPlots",Msg::kInfo)
08012 <<endl<<"Individual stripends:"<<endl
08013 <<" meuU1="<<meuU1<<", mean="<<hSigMapU1->GetMean()
08014 <<", entries="<<hSigMapU1->GetEntries()<<endl
08015 <<" meuU2="<<meuU2<<", mean="<<hSigMapU2->GetMean()
08016 <<", entries="<<hSigMapU2->GetEntries()<<endl
08017 <<" meuV1="<<meuV1<<", mean="<<hSigMapV1->GetMean()
08018 <<", entries="<<hSigMapV1->GetEntries()<<endl
08019 <<" meuV2="<<meuV2<<", mean="<<hSigMapV2->GetMean()
08020 <<", entries="<<hSigMapV2->GetEntries()<<endl;
08021
08022 Double_t GeVPerMeu=-1;
08023 hGeVPerMeu->GetQuantiles(1,&GeVPerMeu,&quantile);
08024 MSG("MeuPlots",Msg::kInfo)
08025 <<endl<<"GeVPerMeu="<<GeVPerMeu<<endl;
08026
08027 Int_t fudge=0;
08028
08029 MSG("MeuPlots",Msg::kInfo)<<"Filling vs. Time plots..."<<endl;
08030 TH1F* hEntriesVsTime=new TH1F("hEntriesVsTime","hEntriesVsTime",
08031 100,startTimeSecs,endTimeSecs+fudge);
08032
08033
08034 this->TH1FFill(hEntriesVsTime,vTimeSec);
08035 this->SetGraphAxis(hEntriesVsTime->GetXaxis(),
08036 startTimeSecs,endTimeSecs+fudge);
08037 hEntriesVsTime->GetXaxis()->CenterTitle();
08038 hEntriesVsTime->GetYaxis()->SetTitle("Entries");
08039 hEntriesVsTime->GetYaxis()->CenterTitle();
08040
08041 TH1F* hEntriesVsTimeMonth=new TH1F
08042 ("hEntriesVsTimeMonth","hEntriesVsTimeMonth",
08043 numMonths,startTimeSecs,endTimeSecs+fudge);
08044 this->TH1FFill(hEntriesVsTimeMonth,vTimeSec);
08045 this->SetGraphAxis(hEntriesVsTimeMonth->GetXaxis(),
08046 startTimeSecs,endTimeSecs+fudge);
08047 hEntriesVsTimeMonth->GetXaxis()->CenterTitle();
08048 hEntriesVsTimeMonth->GetYaxis()->SetTitle("Entries");
08049 hEntriesVsTimeMonth->GetYaxis()->CenterTitle();
08050
08051 MSG("MeuPlots",Msg::kInfo)<<"Filling vs. Time plots..."<<endl;
08052 TProfile* pCrateMaskVsTime=new TProfile("pCrateMaskVsTime",
08053 "CrateMaskVsTime",
08054 100,startTimeSecs,
08055 endTimeSecs+fudge);
08056 this->TProfileFill(pCrateMaskVsTime,vTimeSec,vCrateMask);
08057 this->SetGraphAxis(pCrateMaskVsTime->GetXaxis(),
08058 startTimeSecs,endTimeSecs+fudge);
08059 pCrateMaskVsTime->GetXaxis()->CenterTitle();
08060 pCrateMaskVsTime->GetYaxis()->SetTitle("CrateMask");
08061 pCrateMaskVsTime->GetYaxis()->CenterTitle();
08062
08063 TProfile* pBusyChipsVsTime=new TProfile("pBusyChipsVsTime",
08064 "BusyChipsVsTime",
08065 100,startTimeSecs,
08066 endTimeSecs+fudge);
08067 this->TProfileFill(pBusyChipsVsTime,vTimeSec,vBusyChips);
08068 this->SetGraphAxis(pBusyChipsVsTime->GetXaxis(),
08069 startTimeSecs,endTimeSecs+fudge);
08070 pBusyChipsVsTime->GetXaxis()->CenterTitle();
08071 pBusyChipsVsTime->GetYaxis()->SetTitle("BusyChips");
08072 pBusyChipsVsTime->GetYaxis()->CenterTitle();
08073
08074 TProfile* pColdChipsVsTime=new TProfile("pColdChipsVsTime",
08075 "ColdChipsVsTime",
08076 100,startTimeSecs,
08077 endTimeSecs+fudge);
08078 this->TProfileFill(pColdChipsVsTime,vTimeSec,vColdChips);
08079 this->SetGraphAxis(pColdChipsVsTime->GetXaxis(),
08080 startTimeSecs,endTimeSecs+fudge);
08081 pColdChipsVsTime->GetXaxis()->CenterTitle();
08082 pColdChipsVsTime->GetYaxis()->SetTitle("ColdChips");
08083 pColdChipsVsTime->GetYaxis()->CenterTitle();
08084
08085 TProfile* pDataQualityVsTime=new TProfile("pDataQualityVsTime",
08086 "DataQualityVsTime",
08087 100,startTimeSecs,
08088 endTimeSecs+fudge);
08089 this->TProfileFill(pDataQualityVsTime,vTimeSec,vDataQuality);
08090 this->SetGraphAxis(pDataQualityVsTime->GetXaxis(),
08091 startTimeSecs,endTimeSecs+fudge);
08092 pDataQualityVsTime->GetXaxis()->CenterTitle();
08093 pDataQualityVsTime->GetYaxis()->SetTitle("DataQuality");
08094 pDataQualityVsTime->GetYaxis()->CenterTitle();
08095
08096 TProfile* pMeuSigMapVsTime=new TProfile("pMeuSigMapVsTime",
08097 "pMeuSigMapVsTime",
08098 100,startTimeSecs,
08099 endTimeSecs+fudge);
08100 this->TProfileFill(pMeuSigMapVsTime,vTimeSec,vWinSigMap);
08101 this->SetGraphAxis(pMeuSigMapVsTime->GetXaxis(),
08102 startTimeSecs,endTimeSecs+fudge);
08103 pMeuSigMapVsTime->GetXaxis()->CenterTitle();
08104 pMeuSigMapVsTime->GetYaxis()->SetTitle("MEU");
08105 pMeuSigMapVsTime->GetYaxis()->CenterTitle();
08106
08107 TProfile* pMeuSigMapVsTime50=new TProfile("pMeuSigMapVsTime50",
08108 "pMeuSigMapVsTime50",
08109 50,startTimeSecs,
08110 endTimeSecs+fudge);
08111 this->TProfileFill(pMeuSigMapVsTime50,vTimeSec,vWinSigMap);
08112 this->SetGraphAxis(pMeuSigMapVsTime50->GetXaxis(),
08113 startTimeSecs,endTimeSecs+fudge);
08114 pMeuSigMapVsTime50->GetXaxis()->CenterTitle();
08115 pMeuSigMapVsTime50->GetYaxis()->SetTitle("MEU");
08116 pMeuSigMapVsTime50->GetYaxis()->CenterTitle();
08117
08118 TProfile* pMeuSigMapVsTime20=new TProfile("pMeuSigMapVsTime20",
08119 "pMeuSigMapVsTime20",
08120 20,startTimeSecs,
08121 endTimeSecs+fudge);
08122 this->TProfileFill(pMeuSigMapVsTime20,vTimeSec,vWinSigMap);
08123 this->SetGraphAxis(pMeuSigMapVsTime20->GetXaxis(),
08124 startTimeSecs,endTimeSecs+fudge);
08125 pMeuSigMapVsTime20->GetXaxis()->CenterTitle();
08126 pMeuSigMapVsTime20->GetYaxis()->SetTitle("MEU");
08127 pMeuSigMapVsTime20->GetYaxis()->CenterTitle();
08128
08129 TProfile* pMeuSigMapVsTime15=new TProfile("pMeuSigMapVsTime15",
08130 "pMeuSigMapVsTime15",
08131 15,startTimeSecs,
08132 endTimeSecs+fudge);
08133 this->TProfileFill(pMeuSigMapVsTime15,vTimeSec,vWinSigMap);
08134 this->SetGraphAxis(pMeuSigMapVsTime15->GetXaxis(),
08135 startTimeSecs,endTimeSecs+fudge);
08136 pMeuSigMapVsTime15->GetXaxis()->CenterTitle();
08137 pMeuSigMapVsTime15->GetYaxis()->SetTitle("MEU");
08138 pMeuSigMapVsTime15->GetYaxis()->CenterTitle();
08139
08140 TProfile* pMeuSigMapVsTime10=new TProfile("pMeuSigMapVsTime10",
08141 "pMeuSigMapVsTime10",
08142 10,startTimeSecs,
08143 endTimeSecs+fudge);
08144 this->TProfileFill(pMeuSigMapVsTime10,vTimeSec,vWinSigMap);
08145 this->SetGraphAxis(pMeuSigMapVsTime10->GetXaxis(),
08146 startTimeSecs,endTimeSecs+fudge);
08147 pMeuSigMapVsTime10->GetXaxis()->CenterTitle();
08148 pMeuSigMapVsTime10->GetYaxis()->SetTitle("MEU");
08149 pMeuSigMapVsTime10->GetYaxis()->CenterTitle();
08150
08151 TProfile* pMeuSigMapVsTime5=new TProfile("pMeuSigMapVsTime5",
08152 "pMeuSigMapVsTime5",
08153 5,startTimeSecs,
08154 endTimeSecs+fudge);
08155 this->TProfileFill(pMeuSigMapVsTime5,vTimeSec,vWinSigMap);
08156 this->SetGraphAxis(pMeuSigMapVsTime5->GetXaxis(),
08157 startTimeSecs,endTimeSecs+fudge);
08158 pMeuSigMapVsTime5->GetXaxis()->CenterTitle();
08159 pMeuSigMapVsTime5->GetYaxis()->SetTitle("MEU");
08160 pMeuSigMapVsTime5->GetYaxis()->CenterTitle();
08161
08162 TProfile* pMeuSigMapVsTime3=new TProfile("pMeuSigMapVsTime3",
08163 "pMeuSigMapVsTime3",
08164 3,startTimeSecs,
08165 endTimeSecs+fudge);
08166 this->TProfileFill(pMeuSigMapVsTime3,vTimeSec,vWinSigMap);
08167 this->SetGraphAxis(pMeuSigMapVsTime3->GetXaxis(),
08168 startTimeSecs,endTimeSecs+fudge);
08169 pMeuSigMapVsTime3->GetXaxis()->CenterTitle();
08170 pMeuSigMapVsTime3->GetYaxis()->SetTitle("MEU");
08171 pMeuSigMapVsTime3->GetYaxis()->CenterTitle();
08172
08173
08174
08175
08176 TProfile* pMeuSigMapDriftVsTime15=new TProfile
08177 ("pMeuSigMapDriftVsTime15","pMeuSigMapDriftVsTime15",
08178 15,startTimeSecs,endTimeSecs+fudge);
08179 this->TProfileFill(pMeuSigMapDriftVsTime15,vTimeSec,vWinSigMapDrift);
08180 this->SetGraphAxis(pMeuSigMapDriftVsTime15->GetXaxis(),
08181 startTimeSecs,endTimeSecs+fudge);
08182 pMeuSigMapDriftVsTime15->GetXaxis()->CenterTitle();
08183 pMeuSigMapDriftVsTime15->GetYaxis()->SetTitle("MEU");
08184 pMeuSigMapDriftVsTime15->GetYaxis()->CenterTitle();
08185
08186 TProfile* pMeuSigMapDriftXVsTime15=new TProfile
08187 ("pMeuSigMapDriftXVsTime15","pMeuSigMapDriftXVsTime15",
08188 15,startTimeSecs,endTimeSecs+fudge);
08189 this->TProfileFill(pMeuSigMapDriftXVsTime15,vTimeSec,
08190 vWinSigMapDriftX);
08191 this->SetGraphAxis(pMeuSigMapDriftXVsTime15->GetXaxis(),
08192 startTimeSecs,endTimeSecs+fudge);
08193 pMeuSigMapDriftXVsTime15->GetXaxis()->CenterTitle();
08194 pMeuSigMapDriftXVsTime15->GetYaxis()->SetTitle("MEU");
08195 pMeuSigMapDriftXVsTime15->GetYaxis()->CenterTitle();
08196
08197
08198 TProfile* pMeuSigMapDriftVsTimeMonth=new TProfile
08199 ("pMeuSigMapDriftVsTimeMonth","pMeuSigMapDriftVsTimeMonth",
08200 numMonths,startTimeSecs,endTimeSecs+fudge);
08201 this->TProfileFill(pMeuSigMapDriftVsTimeMonth,
08202 vTimeSec,vWinSigMapDrift);
08203 this->SetGraphAxis(pMeuSigMapDriftVsTimeMonth->GetXaxis(),
08204 startTimeSecs,endTimeSecs+fudge);
08205 pMeuSigMapDriftVsTimeMonth->GetXaxis()->CenterTitle();
08206 pMeuSigMapDriftVsTimeMonth->GetYaxis()->SetTitle("MEU");
08207 pMeuSigMapDriftVsTimeMonth->GetYaxis()->CenterTitle();
08208
08209 TProfile* pMeuSigMapDriftXVsTimeMonth=new TProfile
08210 ("pMeuSigMapDriftXVsTimeMonth","pMeuSigMapDriftXVsTimeMonth",
08211 numMonths,startTimeSecs,endTimeSecs+fudge);
08212 this->TProfileFill(pMeuSigMapDriftXVsTimeMonth,vTimeSec,
08213 vWinSigMapDriftX);
08214 this->SetGraphAxis(pMeuSigMapDriftXVsTimeMonth->GetXaxis(),
08215 startTimeSecs,endTimeSecs+fudge);
08216 pMeuSigMapDriftXVsTimeMonth->GetXaxis()->CenterTitle();
08217 pMeuSigMapDriftXVsTimeMonth->GetYaxis()->SetTitle("MEU");
08218 pMeuSigMapDriftXVsTimeMonth->GetYaxis()->CenterTitle();
08219
08220 vector<TH1F*> meuDriftStd;
08221 vector<TH1F*> meuDrift;
08222 vector<TH1F*> meuDriftX;
08223 vector<TH1F*> meuDriftCosThStd;
08224 vector<TH1F*> meuDriftCosTh;
08225 vector<TH1F*> meuDriftCosThX;
08226 vector<TH1F*> sigCorDriftCosThStd;
08227 vector<TH1F*> sigLinDriftCosThStd;
08228 vector<TH1F*> adcDriftCosThStd;
08229 vector<TH1F*> peDriftCosThStd;
08230 vector<TH1F*> sigLinOnlyDriftCosThStd;
08231 vector<TH1F*> sigDrfDriftCosThStd;
08232
08233 for (Int_t i=0;i<numMonths;i++){
08234 string sNameStd="hMeuDriftStdBin";
08235 string sName="hMeuDriftBin";
08236 string sNameX="hMeuDriftXBin";
08237 string sNameCosThStd="hMeuDriftCosThStdBin";
08238 string sNameCosTh="hMeuDriftCosThBin";
08239 string sNameCosThX="hMeuDriftCosThXBin";
08240 string sNameSigCorCosThStd="hSigCorDriftCosThStdBin";
08241 string sNameSigLinCosThStd="hSigLinDriftCosThStdBin";
08242 string sNameAdcCosThStd="hAdcDriftCosThStdBin";
08243 string sNamePeCosThStd="hPeDriftCosThStdBin";
08244 string sNameSigLinOnlyCosThStd="hSigLinOnlyDriftCosThStdBin";
08245 string sNameSigDrfCosThStd="hSigDrfDriftCosThStdBin";
08246
08247 string sNum=Form("%d",i);
08248
08249 sNameStd+=sNum;
08250 sName+=sNum;
08251 sNameX+=sNum;
08252 sNameCosThStd+=sNum;
08253 sNameCosTh+=sNum;
08254 sNameCosThX+=sNum;
08255 sNameSigCorCosThStd+=sNum;
08256 sNameSigLinCosThStd+=sNum;
08257 sNameAdcCosThStd+=sNum;
08258 sNamePeCosThStd+=sNum;
08259 sNameSigLinOnlyCosThStd+=sNum;
08260 sNameSigDrfCosThStd+=sNum;
08261
08262 meuDriftStd.push_back(new TH1F(sNameStd.c_str(),sNameStd.c_str(),
08263 20000,0,20000));
08264 meuDrift.push_back(new TH1F(sName.c_str(),sName.c_str(),
08265 20000,0,20000));
08266 meuDriftX.push_back(new TH1F(sNameX.c_str(),sNameX.c_str(),
08267 20000,0,20000));
08268
08269 meuDriftCosThStd.push_back(new TH1F(sNameCosThStd.c_str(),
08270 sNameCosThStd.c_str(),
08271 20000,0,20000));
08272 meuDriftCosTh.push_back(new TH1F(sNameCosTh.c_str(),
08273 sNameCosTh.c_str(),
08274 20000,0,20000));
08275 meuDriftCosThX.push_back(new TH1F(sNameCosThX.c_str(),
08276 sNameCosThX.c_str(),
08277 20000,0,20000));
08278
08279 sigCorDriftCosThStd.push_back(new TH1F(sNameSigCorCosThStd.c_str(),
08280 sNameSigCorCosThStd.c_str(),
08281 20000,0,20000));
08282 sigLinDriftCosThStd.push_back(new TH1F(sNameSigLinCosThStd.c_str(),
08283 sNameSigLinCosThStd.c_str(),
08284 20000,0,20000));
08285 adcDriftCosThStd.push_back(new TH1F(sNameAdcCosThStd.c_str(),
08286 sNameAdcCosThStd.c_str(),
08287 20000,0,20000));
08288 peDriftCosThStd.push_back(new TH1F(sNamePeCosThStd.c_str(),
08289 sNamePeCosThStd.c_str(),
08290 20000,0,200));
08291 sigLinOnlyDriftCosThStd.push_back
08292 (new TH1F(sNameSigLinOnlyCosThStd.c_str(),
08293 sNameSigLinOnlyCosThStd.c_str(),
08294 20000,0,20000));
08295 sigDrfDriftCosThStd.push_back(new TH1F(sNameSigDrfCosThStd.c_str(),
08296 sNameSigDrfCosThStd.c_str(),
08297 20000,0,20000));
08298 }
08299
08300 Float_t binSizeDrift=(endTimeSecs-startTimeSecs)/numMonths;
08301 MAXMSG("MeuPlots",Msg::kInfo,100)
08302 <<"binSizeDrift="<<binSizeDrift
08303 <<", numMonths="<<numMonths<<endl;
08304 for (UInt_t i=0;i<vTimeSec.size();i++){
08305 Int_t index=static_cast<Int_t>
08306 ((vTimeSec[i]-startTimeSecs-1)/binSizeDrift);
08307 MAXMSG("MeuPlots",Msg::kInfo,10)
08308 <<"index="<<index
08309 <<", vTimeSec[i]="<<vTimeSec[i]
08310 <<", startTimeSecs="<<startTimeSecs<<endl;
08311 if (index<numMonths){
08312 meuDriftStd[index]->Fill(vWinSigMap[i]);
08313 meuDrift[index]->Fill(vWinSigMapDrift[i]);
08314 meuDriftX[index]->Fill(vWinSigMapDriftX[i]);
08315 }
08316 else cout<<"index="<<index<<endl;
08317 }
08318
08319 cout<<"Vector size with CosTh cut="<<vTimeSecCosTh.size()<<endl
08320 <<"Vector size with truncation and CosTh cut="
08321 <<vTimeSec.size()<<endl;
08322 for (UInt_t i=0;i<vTimeSecCosTh.size();i++){
08323 Int_t index=static_cast<Int_t>
08324 ((vTimeSecCosTh[i]-startTimeSecs-1)/binSizeDrift);
08325 if (index<numMonths){
08326 meuDriftCosThStd[index]->Fill(vWinSigMapCosTh[i]);
08327 meuDriftCosTh[index]->Fill(vWinSigMapCosThDrift[i]);
08328 meuDriftCosThX[index]->Fill(vWinSigMapCosThDriftX[i]);
08329
08330
08331 sigCorDriftCosThStd[index]->Fill(vWinSigCorCosTh[i]);
08332 sigLinDriftCosThStd[index]->Fill(vWinSigLinCosTh[i]);
08333 adcDriftCosThStd[index]->Fill(vWinAdcCosTh[i]);
08334 peDriftCosThStd[index]->Fill(vWinPeCosTh[i]);
08335 sigLinOnlyDriftCosThStd[index]->Fill(vWinSigLinOnlyCosTh[i]);
08336 sigDrfDriftCosThStd[index]->Fill(vWinSigDrfCosTh[i]);
08337 }
08338 else cout<<"index="<<index<<endl;
08339 }
08340
08341
08342 TH1F* hMeuDriftN=new TH1F("hMeuDriftN","hMeuDriftN",
08343 numMonths,startTimeSecs,endTimeSecs+fudge);
08344 hMeuDriftN->GetXaxis()->CenterTitle();
08345 hMeuDriftN->GetYaxis()->CenterTitle();
08346 hMeuDriftN->GetYaxis()->SetTitle("Entries");
08347 this->SetGraphAxis(hMeuDriftN->GetXaxis(),
08348 startTimeSecs,endTimeSecs+fudge);
08349
08350 TH1F* hMeuDriftStd=new TH1F("hMeuDriftStd","hMeuDriftStd",
08351 numMonths,startTimeSecs,endTimeSecs+fudge);
08352 hMeuDriftStd->GetXaxis()->CenterTitle();
08353 hMeuDriftStd->GetYaxis()->CenterTitle();
08354 hMeuDriftStd->GetYaxis()->SetTitle("Meu");
08355 this->SetGraphAxis(hMeuDriftStd->GetXaxis(),
08356 startTimeSecs,endTimeSecs+fudge);
08357
08358 TH1F* hMeuDrift=new TH1F("hMeuDrift","hMeuDrift",
08359 numMonths,startTimeSecs,endTimeSecs+fudge);
08360 hMeuDrift->GetXaxis()->CenterTitle();
08361 hMeuDrift->GetYaxis()->CenterTitle();
08362 hMeuDrift->GetYaxis()->SetTitle("Meu");
08363 this->SetGraphAxis(hMeuDrift->GetXaxis(),
08364 startTimeSecs,endTimeSecs+fudge);
08365
08366 TH1F* hMeuDriftX=new TH1F("hMeuDriftX","hMeuDriftX",
08367 numMonths,startTimeSecs,endTimeSecs+fudge);
08368 hMeuDriftX->GetXaxis()->CenterTitle();
08369 hMeuDriftX->GetYaxis()->CenterTitle();
08370 hMeuDriftX->GetYaxis()->SetTitle("Meu");
08371 this->SetGraphAxis(hMeuDriftX->GetXaxis(),
08372 startTimeSecs,endTimeSecs+fudge);
08373
08374
08375
08376 TH1F* hMeuDriftCosThStd=new TH1F("hMeuDriftCosThStd",
08377 "hMeuDriftCosThStd",
08378 numMonths,
08379 startTimeSecs,endTimeSecs+fudge);
08380 hMeuDriftCosThStd->GetXaxis()->CenterTitle();
08381 hMeuDriftCosThStd->GetYaxis()->CenterTitle();
08382 hMeuDriftCosThStd->GetYaxis()->SetTitle("Meu");
08383 this->SetGraphAxis(hMeuDriftCosThStd->GetXaxis(),
08384 startTimeSecs,endTimeSecs+fudge);
08385
08386 TH1F* hMeuDriftCosTh=new TH1F("hMeuDriftCosTh","hMeuDriftCosTh",
08387 numMonths,
08388 startTimeSecs,endTimeSecs+fudge);
08389 hMeuDriftCosTh->GetXaxis()->CenterTitle();
08390 hMeuDriftCosTh->GetYaxis()->CenterTitle();
08391 hMeuDriftCosTh->GetYaxis()->SetTitle("Meu");
08392 this->SetGraphAxis(hMeuDriftCosTh->GetXaxis(),
08393 startTimeSecs,endTimeSecs+fudge);
08394
08395 TH1F* hMeuDriftCosThX=new TH1F("hMeuDriftCosThX","hMeuDriftCosThX",
08396 numMonths,
08397 startTimeSecs,endTimeSecs+fudge);
08398 hMeuDriftCosThX->GetXaxis()->CenterTitle();
08399 hMeuDriftCosThX->GetYaxis()->CenterTitle();
08400 hMeuDriftCosThX->GetYaxis()->SetTitle("Meu");
08401 this->SetGraphAxis(hMeuDriftCosThX->GetXaxis(),
08402 startTimeSecs,endTimeSecs+fudge);
08403
08404 TH1F* hSigCorDriftCosThStd=new TH1F("hSigCorDriftCosThStd",
08405 "hSigCorDriftCosThStd",
08406 numMonths,
08407 startTimeSecs,endTimeSecs+fudge);
08408 hSigCorDriftCosThStd->GetXaxis()->CenterTitle();
08409 hSigCorDriftCosThStd->GetYaxis()->CenterTitle();
08410 hSigCorDriftCosThStd->GetYaxis()->SetTitle("SigCor");
08411 this->SetGraphAxis(hSigCorDriftCosThStd->GetXaxis(),
08412 startTimeSecs,endTimeSecs+fudge);
08413
08414 TH1F* hSigLinDriftCosThStd=new TH1F("hSigLinDriftCosThStd",
08415 "hSigLinDriftCosThStd",
08416 numMonths,
08417 startTimeSecs,endTimeSecs+fudge);
08418 hSigLinDriftCosThStd->GetXaxis()->CenterTitle();
08419 hSigLinDriftCosThStd->GetYaxis()->CenterTitle();
08420 hSigLinDriftCosThStd->GetYaxis()->SetTitle("SigLin");
08421 this->SetGraphAxis(hSigLinDriftCosThStd->GetXaxis(),
08422 startTimeSecs,endTimeSecs+fudge);
08423
08424 TH1F* hAdcDriftCosThStd=new TH1F("hAdcDriftCosThStd",
08425 "hAdcDriftCosThStd",
08426 numMonths,
08427 startTimeSecs,endTimeSecs+fudge);
08428 hAdcDriftCosThStd->GetXaxis()->CenterTitle();
08429 hAdcDriftCosThStd->GetYaxis()->CenterTitle();
08430 hAdcDriftCosThStd->GetYaxis()->SetTitle("Adc");
08431 this->SetGraphAxis(hAdcDriftCosThStd->GetXaxis(),
08432 startTimeSecs,endTimeSecs+fudge);
08433
08434 TH1F* hPeDriftCosThStd=new TH1F("hPeDriftCosThStd",
08435 "hPeDriftCosThStd",
08436 numMonths,
08437 startTimeSecs,endTimeSecs+fudge);
08438 hPeDriftCosThStd->GetXaxis()->CenterTitle();
08439 hPeDriftCosThStd->GetYaxis()->CenterTitle();
08440 hPeDriftCosThStd->GetYaxis()->SetTitle("Pe");
08441 this->SetGraphAxis(hPeDriftCosThStd->GetXaxis(),
08442 startTimeSecs,endTimeSecs+fudge);
08443
08444 TH1F* hSigLinOnlyDriftCosThStd=new TH1F("hSigLinOnlyDriftCosThStd",
08445 "hSigLinOnlyDriftCosThStd",
08446 numMonths,
08447 startTimeSecs,endTimeSecs+fudge);
08448 hSigLinOnlyDriftCosThStd->GetXaxis()->CenterTitle();
08449 hSigLinOnlyDriftCosThStd->GetYaxis()->CenterTitle();
08450 hSigLinOnlyDriftCosThStd->GetYaxis()->SetTitle("SigLinOnly");
08451 this->SetGraphAxis(hSigLinOnlyDriftCosThStd->GetXaxis(),
08452 startTimeSecs,endTimeSecs+fudge);
08453
08454 TH1F* hSigDrfDriftCosThStd=new TH1F("hSigDrfDriftCosThStd",
08455 "hSigDrfDriftCosThStd",
08456 numMonths,
08457 startTimeSecs,endTimeSecs+fudge);
08458 hSigDrfDriftCosThStd->GetXaxis()->CenterTitle();
08459 hSigDrfDriftCosThStd->GetYaxis()->CenterTitle();
08460 hSigDrfDriftCosThStd->GetYaxis()->SetTitle("SigDrf");
08461 this->SetGraphAxis(hSigDrfDriftCosThStd->GetXaxis(),
08462 startTimeSecs,endTimeSecs+fudge);
08463
08464
08465
08466
08467
08468
08469
08470
08471
08472
08473
08474 Float_t stdMeuRMS=104;
08475 Float_t stdSigCorRMS=108;
08476 Float_t stdSigLinRMS=119;
08477 Float_t stdAdcRMS=119;
08478 Float_t stdPeRMS=1.6;
08479 if (det==Detector::kNear) {
08480 stdMeuRMS=122;
08481 stdSigCorRMS=129;
08482 stdSigLinRMS=143;
08483 stdAdcRMS=143;
08484 stdPeRMS=1.33;
08485 }
08486
08487
08488
08489 stdMeuRMS*=1.1;
08490 stdSigCorRMS*=1.1;
08491 stdSigLinRMS*=1.1;
08492 stdAdcRMS*=1.1;
08493 stdPeRMS*=1.1;
08494
08495
08496 Float_t stdSigLinOnlyRMS=stdSigLinRMS;
08497 Float_t stdSigDrfRMS=stdSigLinRMS;
08498
08499 MAXMSG("MeuPlots",Msg::kInfo,100)
08500 <<"For error on the median using high statistics rms = "
08501 <<" SigMaps"<<stdMeuRMS<<endl;
08502
08503 quantile=0.5;
08504 for (Int_t i=0;i<numMonths;i++){
08505 Double_t meuStd=-1;
08506 Double_t meu=-1;
08507 Double_t meuX=-1;
08508 Double_t meuCosThStd=-1;
08509 Double_t meuCosTh=-1;
08510 Double_t meuCosThX=-1;
08511 Double_t sigCorCosThStd=-1;
08512 Double_t sigLinCosThStd=-1;
08513 Double_t adcCosThStd=-1;
08514 Double_t peCosThStd=-1;
08515 Double_t sigLinOnlyCosThStd=-1;
08516 Double_t sigDrfCosThStd=-1;
08517
08518 meuDriftStd[i]->GetQuantiles(1,&meuStd,&quantile);
08519 meuDrift[i]->GetQuantiles(1,&meu,&quantile);
08520 meuDriftX[i]->GetQuantiles(1,&meuX,&quantile);
08521 meuDriftCosThStd[i]->GetQuantiles(1,&meuCosThStd,&quantile);
08522 meuDriftCosTh[i]->GetQuantiles(1,&meuCosTh,&quantile);
08523 meuDriftCosThX[i]->GetQuantiles(1,&meuCosThX,&quantile);
08524 sigCorDriftCosThStd[i]->GetQuantiles(1,&sigCorCosThStd,&quantile);
08525 sigLinDriftCosThStd[i]->GetQuantiles(1,&sigLinCosThStd,&quantile);
08526 adcDriftCosThStd[i]->GetQuantiles(1,&adcCosThStd,&quantile);
08527 peDriftCosThStd[i]->GetQuantiles(1,&peCosThStd,&quantile);
08528 sigLinOnlyDriftCosThStd[i]->GetQuantiles(1,&sigLinOnlyCosThStd,&quantile);
08529 sigDrfDriftCosThStd[i]->GetQuantiles(1,&sigDrfCosThStd,&quantile);
08530
08531
08532 Float_t nStd=meuDriftStd[i]->GetEntries();
08533 Float_t n=meuDrift[i]->GetEntries();
08534 Float_t nX=meuDriftX[i]->GetEntries();
08535 Float_t nCosThStd=meuDriftCosThStd[i]->GetEntries();
08536 Float_t nCosTh=meuDriftCosTh[i]->GetEntries();
08537 Float_t nCosThX=meuDriftCosThX[i]->GetEntries();
08538 Float_t nSigCorCosThStd=sigCorDriftCosThStd[i]->GetEntries();
08539 Float_t nSigLinCosThStd=sigLinDriftCosThStd[i]->GetEntries();
08540 Float_t nAdcCosThStd=adcDriftCosThStd[i]->GetEntries();
08541 Float_t nPeCosThStd=peDriftCosThStd[i]->GetEntries();
08542 Float_t nSigLinOnlyCosThStd=sigLinOnlyDriftCosThStd[i]->GetEntries();
08543 Float_t nSigDrfCosThStd=sigDrfDriftCosThStd[i]->GetEntries();
08544 Float_t errStd=0;
08545 Float_t err=0;
08546 Float_t errX=0;
08547 Float_t errCosThStd=0;
08548 Float_t errCosTh=0;
08549 Float_t errCosThX=0;
08550 Float_t errSigCorCosThStd=0;
08551 Float_t errSigLinCosThStd=0;
08552 Float_t errAdcCosThStd=0;
08553 Float_t errPeCosThStd=0;
08554 Float_t errSigLinOnlyCosThStd=0;
08555 Float_t errSigDrfCosThStd=0;
08556
08557
08558
08559
08560
08561
08562
08563
08564
08565 if (nStd) errStd=stdMeuRMS/sqrt(nStd);
08566 if (n) err=stdMeuRMS/sqrt(n);
08567 if (nX) errX=stdMeuRMS/sqrt(nX);
08568 if (nCosThStd) errCosThStd=stdMeuRMS/sqrt(nCosThStd);
08569 if (nCosTh) errCosTh=stdMeuRMS/sqrt(nCosTh);
08570 if (nCosThX) errCosThX=stdMeuRMS/sqrt(nCosThX);
08571 if (nSigCorCosThStd) errSigCorCosThStd=stdSigCorRMS/
08572 sqrt(nSigCorCosThStd);
08573 if (nSigLinCosThStd) errSigLinCosThStd=stdSigLinRMS/
08574 sqrt(nSigLinCosThStd);
08575 if (nAdcCosThStd) errAdcCosThStd=stdAdcRMS/sqrt(nAdcCosThStd);
08576 if (nPeCosThStd) errPeCosThStd=stdPeRMS/sqrt(nPeCosThStd);
08577 if (nSigLinOnlyCosThStd) errSigLinOnlyCosThStd=stdSigLinOnlyRMS/
08578 sqrt(nSigLinOnlyCosThStd);
08579 if (nSigDrfCosThStd) errSigDrfCosThStd=stdSigDrfRMS/
08580 sqrt(nSigDrfCosThStd);
08581
08582
08583 if (!nStd) meuStd=0;
08584 if (!n) meu=0;
08585 if (!nX) meuX=0;
08586 if (!nCosThStd) meuCosThStd=0;
08587 if (!nCosTh) meuCosTh=0;
08588 if (!nCosThX) meuCosThX=0;
08589 if (!nSigCorCosThStd) sigCorCosThStd=0;
08590 if (!nSigLinCosThStd) sigLinCosThStd=0;
08591 if (!nAdcCosThStd) adcCosThStd=0;
08592 if (!nPeCosThStd) peCosThStd=0;
08593 if (!nSigLinOnlyCosThStd) sigLinOnlyCosThStd=0;
08594 if (!nSigDrfCosThStd) sigDrfCosThStd=0;
08595
08596
08597 hMeuDriftN->SetBinContent(i+1,n);
08598
08599 hMeuDriftStd->SetBinContent(i+1,meuStd);
08600 hMeuDriftStd->SetBinError(i+1,errStd);
08601 hMeuDrift->SetBinContent(i+1,meu);
08602 hMeuDrift->SetBinError(i+1,err);
08603 hMeuDriftX->SetBinContent(i+1,meuX);
08604 hMeuDriftX->SetBinError(i+1,errX);
08605 hMeuDriftCosThStd->SetBinContent(i+1,meuCosThStd);
08606 hMeuDriftCosThStd->SetBinError(i+1,errCosThStd);
08607 hMeuDriftCosTh->SetBinContent(i+1,meuCosTh);
08608 hMeuDriftCosTh->SetBinError(i+1,errCosTh);
08609 hMeuDriftCosThX->SetBinContent(i+1,meuCosThX);
08610 hMeuDriftCosThX->SetBinError(i+1,errCosThX);
08611 hSigCorDriftCosThStd->SetBinContent(i+1,sigCorCosThStd);
08612 hSigCorDriftCosThStd->SetBinError(i+1,errSigCorCosThStd);
08613 hSigLinDriftCosThStd->SetBinContent(i+1,sigLinCosThStd);
08614 hSigLinDriftCosThStd->SetBinError(i+1,errSigLinCosThStd);
08615 hAdcDriftCosThStd->SetBinContent(i+1,adcCosThStd);
08616 hAdcDriftCosThStd->SetBinError(i+1,errAdcCosThStd);
08617 hPeDriftCosThStd->SetBinContent(i+1,peCosThStd);
08618 hPeDriftCosThStd->SetBinError(i+1,errPeCosThStd);
08619 hSigLinOnlyDriftCosThStd->SetBinContent(i+1,sigLinOnlyCosThStd);
08620 hSigLinOnlyDriftCosThStd->SetBinError(i+1,errSigLinOnlyCosThStd);
08621 hSigDrfDriftCosThStd->SetBinContent(i+1,sigDrfCosThStd);
08622 hSigDrfDriftCosThStd->SetBinError(i+1,errSigDrfCosThStd);
08623
08624 MAXMSG("MeuPlots",Msg::kInfo,100)
08625 <<"bin="<<i+1
08626 <<", meuStd="<<meuStd<<" +/- "<<errStd
08627 <<", meu="<<meu<<" +/- "<<err
08628 <<", meuX="<<meuX<<" +/- "<<errX
08629 <<endl;
08630 }
08631
08633
08634
08635 MSG("MeuPlots",Msg::kInfo)<<"Filling vs. Temperature plots..."<<endl;
08636 TProfile* pTempVsTime15=new TProfile("pTempVsTime15",
08637 "pTempVsTime15",15,
08638 startTimeSecs,endTimeSecs+fudge);
08639 this->TProfileFill(pTempVsTime15,vTimeSecTemp,vTemperatures);
08640 this->SetGraphAxis(pTempVsTime15->GetXaxis(),
08641 startTimeSecs,endTimeSecs+fudge);
08642 pTempVsTime15->GetXaxis()->CenterTitle();
08643 pTempVsTime15->GetYaxis()->SetTitle("Temperature (C)");
08644 pTempVsTime15->GetYaxis()->CenterTitle();
08645
08646 TProfile* pMeuVsTemp15=new TProfile("pMeuVsTemp15",
08647 "pMeuVsTemp15",20,18,24);
08648 this->TProfileFill(pMeuVsTemp15,vTemperatures,vWinSigMapTemp);
08649 pMeuVsTemp15->GetXaxis()->SetTitle("Temperature (C)");
08650 pMeuVsTemp15->GetXaxis()->CenterTitle();
08651 pMeuVsTemp15->GetYaxis()->SetTitle("MEU");
08652 pMeuVsTemp15->GetYaxis()->CenterTitle();
08653
08654 TProfile* pMeuVsTempN15=new TProfile("pMeuVsTempN15",
08655 "pMeuVsTempN15",20,18,24);
08656 this->ScaleVector(vWinSigMapTemp,1/517.);
08657 this->TProfileFill(pMeuVsTempN15,vTemperatures,vWinSigMapTemp);
08658 pMeuVsTempN15->GetXaxis()->SetTitle("Temperature (C)");
08659 pMeuVsTempN15->GetXaxis()->CenterTitle();
08660 pMeuVsTempN15->GetYaxis()->SetTitle("MEU");
08661 pMeuVsTempN15->GetYaxis()->CenterTitle();
08662
08663 MSG("MeuPlots",Msg::kInfo)
08664 <<" ** Finished MakeValidationPlots method **"<<endl;
08665 }
08666
08667