From: coppedis Date: Fri, 19 Mar 2010 10:27:59 +0000 (+0000) Subject: Macro to plot OCDB pedestal behaviour vs. run no. X-Git-Url: http://git.uio.no/git/?a=commitdiff_plain;h=8d03668d514dcf1e6e33e94c452b957d4500357d;hp=e6b89bec46aae431b47b2e8ca53bc975225c5eab;p=u%2Fmrichter%2FAliRoot.git Macro to plot OCDB pedestal behaviour vs. run no. --- diff --git a/ZDC/PlotPedestalsvsTime.C b/ZDC/PlotPedestalsvsTime.C new file mode 100644 index 00000000000..3aa14d12868 --- /dev/null +++ b/ZDC/PlotPedestalsvsTime.C @@ -0,0 +1,184 @@ +#if !defined(__CINT__) || defined(__MAKECINT__) +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "AliCDBEntry.h" +#include "AliCDBGrid.h" +#include "AliCDBId.h" +#include "AliCDBLocal.h" +#include "AliCDBManager.h" +#include "AliCDBMetaData.h" +#include "AliCDBPath.h" +#include "AliCDBRunRange.h" +#include "AliCDBStorage.h" +#include "AliDCSValue.h" +#include "AliZDC.h" +#include "AliZDCv3.h" +#include "AliZDCPedestals.h" +#include "AliZDCEnCalib.h" +#include "AliZDCTowerCalib.h" +#include "AliZDCChMap.h" +#include "AliZDCLaserCalib.h" +#include "AliZDCMBCalib.h" +#include "AliZDCDataDCS.h" + +#endif + + +void PlotPedestalsvsTime(Int_t year=2010, Int_t firstRun=111000, + Int_t lastRun=999999999) +{ + + + TGrid::Connect("alien:",0,0,"t"); + gSystem->Exec(Form("gbbox find \"/alice/data/%d/OCDB/ZDC/Calib/Pedestals/\" \"Run*.root\" > calibAlienFiles.txt",year)); + FILE* listruns=fopen("calibAlienFiles.txt","r"); + + const int kNchannels=24; + TGraphErrors* graph[24]; + for(Int_t i=0; iSetName("graph"); graph[i]->SetTitle("title"); + } + + Char_t filnam[200], filnamalien[200]; + Int_t iPoint=0; + Int_t nrun, nrun2, nv, ns; + + while(!feof(listruns)){ + int st = fscanf(listruns,"%s\n",filnam); + Char_t directory[100]; + sprintf(directory,"/alice/data/%d",year); + if(!strstr(filnam,directory)) continue; + sscanf(filnam,"/alice/data/%d/OCDB/ZDC/Calib/Pedestals/Run%d_%d_v%d_s%d.root",&year,&nrun,&nrun2,&nv,&ns); + if(nrunlastRun) continue; + sprintf(filnamalien,"alien://%s",filnam); + printf("Opening file: %s\n",filnam); + TFile *f = TFile::Open(filnamalien); + AliCDBEntry *entry = (AliCDBEntry*)f->Get("AliCDBEntry"); + AliZDCPedestals *calibdata = dynamic_cast (entry->GetObject()); + + for(int i=0; iSetPoint(iPoint, (Double_t)nrun, calibdata->GetMeanPed(i)); + graph[i]->SetPointError(iPoint, 0., calibdata->GetMeanPedWidth(i)); + /*printf("Filling graph %d for RUN %d: entry %d - pedValue %1.2f\n", + i,nrun,iPoint,calibdata->GetMeanPed(i));*/ + } + iPoint++; + f->Close(); + } + + TFile *outfile=new TFile(Form("Calib%dVsTime.root",year),"recreate"); + outfile->cd(); + for(int i=0; iWrite(); + outfile->Close(); + + //*********************************************************** + // #### ROOT initialization + gROOT->Reset(); + gStyle->SetCanvasColor(10); + gStyle->SetFrameFillColor(10); + gStyle->SetOptTitle(0); + gStyle->SetOptStat(1111); + gStyle->SetOptFit(0); + gStyle->SetTitleTextColor(4); + gStyle->SetStatTextColor(4); + gStyle->SetStatX(0.92); + gStyle->SetStatY(0.92); + gStyle->SetLineColor(1); + gStyle->SetPalette(1); + gStyle->SetPadTopMargin(0.05); + gStyle->SetPadRightMargin(0.05); + gStyle->SetPadBottomMargin(0.09); + gStyle->SetPadLeftMargin(0.09); + gStyle->SetTitleOffset(1.1,"Y"); + // ************************************************************* + + TCanvas *cHadPeds = new TCanvas("cHadPeds","Hadronic ZDC pedestals",0,0,900,700); + cHadPeds->Divide(5,4); + for(int ic=0; ic<5; ic++){ + // *** ZNC pedestals + cHadPeds->cd(ic+1); + // + TH1F *haxis1 = gPad->DrawFrame(firstRun-100, 20, lastRun+100, 90); + haxis1->GetXaxis()->SetNoExponent(); + haxis1->SetXTitle("RUN no."); + haxis1->SetYTitle("ZNC pedestals"); + // + graph[ic]->SetMarkerStyle(20); + graph[ic]->SetMarkerColor(kBlue); + graph[ic]->Draw("P"); + // *** ZPC pedestals + cHadPeds->cd(ic+6); + // + TH1F *haxis2 = gPad->DrawFrame(firstRun-100, 20, lastRun+100, 90); + haxis2->GetXaxis()->SetNoExponent(); + haxis2->SetXTitle("RUN no."); + haxis2->SetYTitle("ZPC pedestals"); + // + graph[ic+5]->SetMarkerStyle(21); + graph[ic+5]->SetMarkerColor(kBlue+3); + graph[ic+5]->Draw("P"); + // *** ZNA pedestals + cHadPeds->cd(ic+11); + // + TH1F *haxis3 = gPad->DrawFrame(firstRun-100, 20, lastRun+100, 90); + haxis3->GetXaxis()->SetNoExponent(); + haxis3->SetXTitle("RUN no."); + haxis3->SetYTitle("ZNA pedestals"); + // + graph[ic+12]->SetMarkerStyle(20); + graph[ic+12]->SetMarkerColor(kRed); + graph[ic+12]->Draw("P"); + // *** ZPA pedestals + cHadPeds->cd(ic+16); + // + TH1F *haxis4 = gPad->DrawFrame(firstRun-100, 20, lastRun+100, 90); + haxis4->GetXaxis()->SetNoExponent(); + haxis4->SetXTitle("RUN no."); + haxis4->SetYTitle("ZPA pedestals"); + // + graph[ic+17]->SetMarkerStyle(21); + graph[ic+17]->SetMarkerColor(kRed+1); + graph[ic+17]->Draw("P"); + } + cHadPeds->SaveAs("ZDCPedvsTime1.gif"); + + TCanvas *cothPeds = new TCanvas("cothPeds","ZEM + Ref. pedestals",800,0,600,600); + cothPeds->Divide(2,2); + for(int ic=0; ic<2; ic++){ + // *** ZEM pedestals + cothPeds->cd(ic+1); + // + TH1F *haxis5 = gPad->DrawFrame(firstRun-100, 20, lastRun+20, 90); + haxis5->GetXaxis()->SetNoExponent(); + haxis5->SetXTitle("RUN no."); + haxis5->SetYTitle("ZEM pedestals"); + // + graph[ic+9]->SetMarkerStyle(22); + graph[ic+9]->SetMarkerColor(kGreen+1); + graph[ic+9]->Draw("P"); + // *** Ref. pedestals + cothPeds->cd(ic+3); + // + TH1F *haxis6 = gPad->DrawFrame(firstRun-100, 20, lastRun+100, 90); + haxis6->GetXaxis()->SetNoExponent(); + haxis6->SetXTitle("RUN no."); + haxis6->SetYTitle("PMRef. pedestals"); + // + graph[ic+22]->SetMarkerStyle(23); + graph[ic+22]->SetMarkerColor(kGreen+4); + graph[ic+22]->Draw("P"); + } + cothPeds->SaveAs("ZDCPedvsTime2.gif"); + +}