////////////////////////////////////////////////////////////////////////
AliTPCdigitRow::AliTPCdigitRow()
{
+ for (Int_t i = 0; i<32; i++) { fDig[i] = 0; }
Reset();
}
////////////////////////////////////////////////////////////////////////
// resets all rows to zero
//
for (Int_t i = 0; i<32; i++) {
- fDig[i] <<= 8;
+ //fDig[i] <<= 8;
+ fDig[i] = 0;
}
}
////////////////////////////////////////////////////////////////////////
//
//
//
- TParticle * particle= new TParticle;
- TClonesArray * trefs = new TClonesArray("AliTrackReference");
+
const Double_t kPcut=0.05;
const Double_t kMinDrITS = 2.; // minimal distance between references
const Double_t kMinDrTRD = 8.; // minimal distance between references
Int_t npart = fMCinfo->GetNumberOfTracks();
if (npart==0) return;
Double_t vertex[4]={0,0,0,0};
- fMCinfo->GetParticleAndTR(0, particle, trefs);
+
+ TClonesArray * trefs = new TClonesArray("AliTrackReference");
+ TParticle * particle= new TParticle;
+
+ if(particle && trefs) {
+ fMCinfo->GetParticleAndTR(0, particle, trefs);
+ }
+
+
if (particle){
vertex[0]=particle->Vx();
vertex[1]=particle->Vy();
AliTrackReference * refTOF0, *refTOF1;
AliTrackReference *refMinR;
//
+ if(!particle) return;
for (Int_t ipart=0;ipart<npart;ipart++){
//Int_t status = fMCinfo->GetParticleAndTR(ipart, particle, trefs);
AliMCParticle * pp = (AliMCParticle*) fMCinfo->GetTrack(ipart);
// if (id==0) sprintf(name,"mcAll"); // all tracks: inconvenient to cut if on is only interest in tracks which reach the TPC
if (id==0) continue; // require TPC
- if (id==1) sprintf(name,"mcITS");
- if (id==2) sprintf(name,"mcTPC");
+ if (id==1) snprintf(name,100,"mcITS");
+ if (id==2) snprintf(name,100,"mcTPC");
if (id==1&& nRefITS==0) continue;
if (id==2&& nRefTPC==0) continue;
if(!histThetaInvPt) {
Printf("warning: no 1/pt histogram to analyse in theta bins!");
+ return;
}
if(!histPhiInvPt) {
Printf("warning: no 1/pt histogram to analyse in phit bins!");
+ return;
}
Double_t thetaBins[9] = {0.77,0.97,1.17,1.37,1.57,1.77,1.97,2.17,2.37}; // default theta bins
fHistFitTheta[i] = (TH1D*)fHistH2InvPtTheta->ProjectionX("_px",firstBin,lastBin,"e");
Char_t titleTheta[50];
- if(TMath::Abs(i-(fNThetaBins-1))<0.5) sprintf(titleTheta,"charge/pt (GeV/c) integrated over #theta");
- else sprintf(titleTheta,"charge/pt (GeV/c) for #theta range: %1.3f - %1.3f",fThetaBins[i],fThetaBins[i+1]);
+ if(TMath::Abs(i-(fNThetaBins-1))<0.5) snprintf(titleTheta,50,"charge/pt (GeV/c) integrated over #theta");
+ else snprintf(titleTheta,50,"charge/pt (GeV/c) for #theta range: %1.3f - %1.3f",fThetaBins[i],fThetaBins[i+1]);
fHistFitTheta[i]->SetTitle(titleTheta);
fHistFitPhi[i] = (TH1D*) fHistH2InvPtPhi->ProjectionX("_px",firstBin,lastBin,"e");
Char_t titlePhi[50];
- if(TMath::Abs(i-(fNPhiBins-1))<0.5) sprintf(titlePhi,"charge/pt (GeV/c) integrated over #phi");
- else sprintf(titlePhi,"charge/pt (GeV/c) for #phi range: %1.3f - %1.3f",fPhiBins[i],fPhiBins[i+1]);
+ if(TMath::Abs(i-(fNPhiBins-1))<0.5) snprintf(titlePhi,50,"charge/pt (GeV/c) integrated over #phi");
+ else snprintf(titlePhi,50,"charge/pt (GeV/c) for #phi range: %1.3f - %1.3f",fPhiBins[i],fPhiBins[i+1]);
fHistFitPhi[i]->SetTitle(titlePhi);
TH1F *h1D=0;
TH2F *h2D=0;
TObjArray *aFolderObj = new TObjArray;
+ if(!aFolderObj) return;
char title[256];
TObjArray *arr[6] = {0};
TF1 *f1[6] = {0};
+
+
// set pt measurable range
//fDCAHisto->GetAxis(3)->SetRangeUser(0.10,10.);
h2D->SetName("dca_r_vs_dca_z");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
- sprintf(title,"%s vs %s",fDCAHisto->GetAxis(0)->GetTitle(),fDCAHisto->GetAxis(1)->GetTitle());
+ snprintf(title,256,"%s vs %s",fDCAHisto->GetAxis(0)->GetTitle(),fDCAHisto->GetAxis(1)->GetTitle());
h2D->SetTitle(title);
aFolderObj->Add(h2D);
h2D->SetName("dca_r_vs_eta");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
- sprintf(title,"%s vs %s",fDCAHisto->GetAxis(2)->GetTitle(),fDCAHisto->GetAxis(0)->GetTitle());
+ snprintf(title,256,"%s vs %s",fDCAHisto->GetAxis(2)->GetTitle(),fDCAHisto->GetAxis(0)->GetTitle());
h2D->SetTitle(title);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_r_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_r (cm)");
- sprintf(title," mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256," mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_r_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_r (cm)");
- sprintf(title," rms_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256," rms_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_r_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_r (cm)");
- sprintf(title," fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256," fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_r_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_r (cm)");
- sprintf(title," res_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256," res_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h2D->SetName("dca_r_vs_pt");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
- sprintf(title,"%s vs %s",fDCAHisto->GetAxis(0)->GetTitle(),fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"%s vs %s",fDCAHisto->GetAxis(0)->GetTitle(),fDCAHisto->GetAxis(3)->GetTitle());
h2D->SetTitle(title);
h2D->SetBit(TH1::kLogX);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_r_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_r (cm)");
- sprintf(title,"mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_r_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_r (cm)");
- sprintf(title,"rms_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"rms_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_r_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_r (cm)");
- sprintf(title,"fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_r_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_r (cm)");
- sprintf(title,"res_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"res_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h2D->SetName("dca_z_vs_eta");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
- sprintf(title,"%s vs %s",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256,"%s vs %s",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(2)->GetTitle());
h2D->SetTitle(title);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_z_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
- sprintf(title,"mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256,"mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_z_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
- sprintf(title,"rms_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256,"rms_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_z_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
- sprintf(title,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_z_vs_eta");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
- sprintf(title,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+ snprintf(title,256,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h2D->SetName("dca_z_vs_pt");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
- sprintf(title,"%s vs %s",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"%s vs %s",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(3)->GetTitle());
h2D->SetTitle(title);
h2D->SetBit(TH1::kLogX);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_z_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
- sprintf(title,"mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_z_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
- sprintf(title,"rms_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"rms_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_z_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
- sprintf(title,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_z_vs_pt");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
- sprintf(title,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+ snprintf(title,256,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
h1D->SetTitle(title);
h1D->SetBit(TH1::kLogX);
aFolderObj->Add(h1D);
h2D->SetName("dca_z_vs_phi_Aside");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
- sprintf(title,"%s vs %s (A-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"%s vs %s (A-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
h2D->SetTitle(title);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_z_vs_phi_Aside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
- sprintf(title,"mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_z_vs_phi_Aside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
- sprintf(title,"rms_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"rms_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_z_vs_phi_Aside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
- sprintf(title,"fit_mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"fit_mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_z_vs_phi_Aside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
- sprintf(title,"res_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"res_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h2D->SetName("dca_z_vs_phi_Cside");
h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
- sprintf(title,"%s vs %s (C-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"%s vs %s (C-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
h2D->SetTitle(title);
aFolderObj->Add(h2D);
h1D->SetName("mean_dca_z_vs_phi_Cside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
- sprintf(title,"mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("rms_dca_z_vs_phi_Cside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
- sprintf(title,"rms_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"rms_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("fit_mean_dca_z_vs_phi_Cside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
- sprintf(title,"fit_mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"fit_mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
h1D->SetName("res_dca_z_vs_phi_Cside");
h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
- sprintf(title,"res_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+ snprintf(title,256,"res_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
h1D->SetTitle(title);
aFolderObj->Add(h1D);
char hname[256];
const char* suffix = "_stat1d";
- sprintf(hname,"%s%s",hist->GetName(),suffix);
+ snprintf(hname,256,"%s%s",hist->GetName(),suffix);
TAxis* xaxis = hist->GetXaxis();
Int_t nbinx = xaxis->GetNbins();
char name[256];
for (Int_t ix=0; ix<=nbinx;ix++) {
- sprintf(name,"%s_%d",hist->GetName(),ix);
+ snprintf(name,256,"%s_%d",hist->GetName(),ix);
TH1 *projection = hist->ProjectionY(name,ix-delta0,ix+delta0);
Float_t stat= 0., stat_err =0.;
char hname[256];
const char* suffix = "_stat2d";
- sprintf(hname,"%s%s",hist->GetName(),suffix);
+ snprintf(hname,256,"%s%s",hist->GetName(),suffix);
TAxis* xaxis = hist->GetXaxis();
Int_t nbinx = xaxis->GetNbins();
char name[256];
for (Int_t ix=0; ix<=nbinx;ix++) {
for (Int_t iy=0; iy<=nbiny;iy++) {
- sprintf(name,"%s_%d_%d",hist->GetName(),ix,iy);
+ snprintf(name,256,"%s_%d_%d",hist->GetName(),ix,iy);
TH1 *projection = hist->ProjectionZ(name,ix-delta0,ix+delta0,iy-delta1,iy+delta1);
Float_t stat= 0., stat_err =0.;
h2D->FitSlicesY(f1[i],0,-1,10,"QNR",arr[i]); // gaus fit of pion peak
h1D = (TH1F*)arr[i]->At(1);
- sprintf(name,"mean_dedx_mips_vs_%d",i);
+ snprintf(name,256,"mean_dedx_mips_vs_%d",i);
h1D->SetName(name);
- sprintf(title,"%s vs %s","mean_dedx_mips (a.u.)",fDeDxHisto->GetAxis(i)->GetTitle());
+ snprintf(title,256,"%s vs %s","mean_dedx_mips (a.u.)",fDeDxHisto->GetAxis(i)->GetTitle());
h1D->SetTitle(title);
h1D->GetXaxis()->SetTitle(fDeDxHisto->GetAxis(i)->GetTitle());
h1D->GetYaxis()->SetTitle("mean_dedx_mips (a.u.)");
aFolderObj->Add(h1D);
h1D = (TH1F*)arr[i]->At(2);
- sprintf(name,"res_dedx_mips_vs_%d",i);
+ snprintf(name,256,"res_dedx_mips_vs_%d",i);
h1D->SetName(name);
- sprintf(title,"%s vs %s","res_dedx_mips (a.u)",fDeDxHisto->GetAxis(i)->GetTitle());
+ snprintf(title,256,"%s vs %s","res_dedx_mips (a.u)",fDeDxHisto->GetAxis(i)->GetTitle());
h1D->SetTitle(title);
h1D->GetXaxis()->SetTitle(fDeDxHisto->GetAxis(i)->GetTitle());
h1D->GetYaxis()->SetTitle("res_dedx_mips (a.u.)");
void AliPerformanceEff::ProcessTPC(AliMCEvent* const mcEvent, AliESDEvent *const esdEvent)\r
{\r
// Fill TPC only efficiency comparison information \r
- Int_t *labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!mcEvent) return;\r
+ if(!esdEvent) return;\r
+\r
+ Int_t *labelsRec = NULL;\r
+ labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
if(!labelsRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsRec");\r
+ {\r
+ Printf("Cannot create labelsRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsRec[i] = 0; }\r
\r
- Int_t *labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
- if(!labelsAllRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsAllRec");\r
+ Int_t *labelsAllRec = NULL;\r
+ labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!labelsAllRec) { \r
+ Printf("Cannot create labelsAllRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsAllRec[i] = 0; }\r
\r
// loop over rec. tracks\r
AliESDtrack *track=0;\r
void AliPerformanceEff::ProcessTPCSec(AliMCEvent* const mcEvent, AliESDEvent *const esdEvent)\r
{\r
// Fill TPC only efficiency comparison information for secondaries\r
- Int_t *labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+\r
+ if(!mcEvent) return;\r
+ if(!esdEvent) return;\r
+\r
+ Int_t *labelsRec = NULL;\r
+ labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
if(!labelsRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsRec");\r
+ {\r
+ Printf("Cannot create labelsRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsRec[i] = 0; }\r
\r
- Int_t *labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
- if(!labelsAllRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsAllRec");\r
+ Int_t *labelsAllRec = NULL;\r
+ labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!labelsAllRec) { \r
+ Printf("Cannot create labelsAllRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsAllRec[i] = 0; }\r
\r
// loop over rec. tracks\r
AliESDtrack *track=0;\r
void AliPerformanceEff::ProcessTPCITS(AliMCEvent* const mcEvent, AliESDEvent *const esdEvent)\r
{\r
// Fill efficiency comparison information\r
- Int_t *labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!mcEvent) return;\r
+ if(!esdEvent) return;\r
+\r
+ Int_t *labelsRec = NULL;\r
+ labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
if(!labelsRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsRec");\r
+ {\r
+ Printf("Cannot create labelsRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsRec[i] = 0; }\r
\r
- Int_t *labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
- if(!labelsAllRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsAllRec");\r
+ Int_t *labelsAllRec = NULL;\r
+ labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!labelsAllRec) { \r
+ Printf("Cannot create labelsAllRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsAllRec[i] = 0; }\r
\r
// loop over rec. tracks\r
AliESDtrack *track=0;\r
void AliPerformanceEff::ProcessConstrained(AliMCEvent* const mcEvent, AliESDEvent *const esdEvent)\r
{\r
// Process comparison information \r
- Int_t *labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!mcEvent) return;\r
+ if(!esdEvent) return;\r
+\r
+ Int_t *labelsRec = NULL;\r
+ labelsRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
if(!labelsRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsRec");\r
+ {\r
+ Printf("Cannot create labelsRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsRec[i] = 0; }\r
\r
- Int_t *labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
- if(!labelsAllRec) \r
- AliDebug(AliLog::kError, "Cannot create labelsAllRec");\r
+ Int_t *labelsAllRec = NULL;\r
+ labelsAllRec = new Int_t[esdEvent->GetNumberOfTracks()];\r
+ if(!labelsAllRec) { \r
+ Printf("Cannot create labelsAllRec");\r
+ return;\r
+ }\r
+ for(Int_t i=0;i<esdEvent->GetNumberOfTracks();i++) { labelsAllRec[i] = 0; }\r
\r
// loop over rec. tracks\r
AliESDtrack *track=0;\r
//\r
TH1::AddDirectory(kFALSE);\r
TObjArray *aFolderObj = new TObjArray;\r
+ if(!aFolderObj) return;\r
char title[256];\r
\r
//\r
\r
ptRecc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecc->SetTitle(title);\r
\r
ptRecc->SetBit(TH1::kLogX);\r
\r
ptRecElec->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecElec->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecElec->SetTitle(title);\r
\r
ptRecElec->SetBit(TH1::kLogX);\r
\r
ptRecPic->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecPic->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecPic->SetTitle(title);\r
\r
ptRecPic->SetBit(TH1::kLogX);\r
\r
ptRecKc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecKc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecKc->SetTitle(title);\r
\r
\r
\r
ptRecPc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecPc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecPc->SetTitle(title);\r
\r
ptRecPc->SetBit(TH1::kLogX);\r
\r
ptRecFc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecFc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(2)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(2)->GetTitle());\r
ptRecFc->SetTitle(title);\r
\r
ptRecFc->SetBit(TH1::kLogX);\r
\r
etaRecc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecc->SetTitle(title);\r
\r
aFolderObj->Add(etaRecc);\r
\r
etaRecElec->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecElec->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecElec->SetTitle(title);\r
\r
aFolderObj->Add(etaRecElec);\r
\r
etaRecPic->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecPic->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecPic->SetTitle(title);\r
\r
aFolderObj->Add(etaRecPic);\r
\r
etaRecKc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecKc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecKc->SetTitle(title);\r
\r
\r
\r
etaRecPc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecPc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecPc->SetTitle(title);\r
\r
aFolderObj->Add(etaRecPc);\r
\r
etaRecFc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecFc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(0)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(0)->GetTitle());\r
etaRecFc->SetTitle(title);\r
\r
aFolderObj->Add(etaRecFc);\r
\r
phiRecc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecc->SetTitle(title);\r
\r
aFolderObj->Add(phiRecc);\r
\r
phiRecElec->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecElec->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (electrons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecElec->SetTitle(title);\r
\r
aFolderObj->Add(phiRecElec);\r
\r
phiRecPic->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecPic->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (pions)",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecPic->SetTitle(title);\r
\r
aFolderObj->Add(phiRecPic);\r
\r
phiRecKc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecKc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (kaons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecKc->SetTitle(title);\r
\r
\r
\r
phiRecPc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecPc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (protons)",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecPc->SetTitle(title);\r
\r
aFolderObj->Add(phiRecPc);\r
\r
phiRecFc->GetXaxis()->SetTitle(fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecFc->GetYaxis()->SetTitle("efficiency");\r
- sprintf(title,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(1)->GetTitle());\r
+ snprintf(title,256,"%s vs %s","rec. efficiency (findable)",fEffSecHisto->GetAxis(1)->GetTitle());\r
phiRecFc->SetTitle(title);\r
\r
aFolderObj->Add(phiRecFc);\r
recc->GetXaxis()->SetTitle(fEffHisto->GetAxis(axis)->GetTitle());\r
recc->GetYaxis()->SetTitle("efficiency");\r
\r
- sprintf(title,"%s vs %s",vsTitle, fEffHisto->GetAxis(axis)->GetTitle()); \r
+ snprintf(title,256,"%s vs %s",vsTitle, fEffHisto->GetAxis(axis)->GetTitle()); \r
recc->SetTitle(title);\r
\r
if (axis == 2 ) recc->SetBit(TH1::kLogX);\r
TH1F *h=0;
TH2F *h2D=0;
TObjArray *aFolderObj = new TObjArray;
+ if(!aFolderObj) return;
// write results in the folder
TCanvas * c = new TCanvas("Phi resol Tan","Phi resol Tan");
h2D = (TH2F*)fResolHisto->Projection(i,j);
h = AliPerformanceMC::MakeResol(h2D,1,0,20);
- sprintf(name,"h_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h = AliPerformanceMC::MakeResol(h2D,1,1,20);
//h = (TH1F*)arr->At(1);
- sprintf(name,"h_mean_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h2D = (TH2F*)fPullHisto->Projection(i,j);
h = AliPerformanceMC::MakeResol(h2D,1,0,20);
- sprintf(name,"h_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
aFolderObj->Add(h);
h = AliPerformanceMC::MakeResol(h2D,1,1,20);
- sprintf(name,"h_mean_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
/*
h2D = (TH2F*)fResolHisto->Projection(i,j);
h = AliPerformanceMatch::MakeResol(h2D,1,0,100);
- sprintf(name,"h_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
/*
h = AliPerformanceMatch::MakeResol(h2D,1,1,100);
//h = (TH1F*)arr->At(1);
- sprintf(name,"h_mean_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h2D = (TH2F*)fPullHisto->Projection(i,j);
h = AliPerformanceMatch::MakeResol(h2D,1,0,100);
- sprintf(name,"h_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
aFolderObj->Add(h);
h = AliPerformanceMatch::MakeResol(h2D,1,1,100);
- sprintf(name,"h_mean_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
TH1F* h2c = (TH1F*)h2->Clone();
h2c->Divide(h2,h,1,1,"B");
- sprintf(name,"h_eff_%d",i);
+ snprintf(name,256,"h_eff_%d",i);
h2c->SetName(name);
h2c->GetXaxis()->SetTitle(h2c->GetXaxis()->GetTitle());
TH1F* h2c = (TH1F*)h2->Clone();
h2c->Divide(h2,h,1,1,"B");
- sprintf(name,"h_TPC_eff_%d",i);
+ snprintf(name,256,"h_TPC_eff_%d",i);
h2c->SetName(name);
h2c->GetXaxis()->SetTitle(h2c->GetXaxis()->GetTitle());
{
for(Int_t j=5; j<10; j++)
{
- sprintf(name,"h_tpc_match_resol_%d_%d",i,j);
+ snprintf(name,256,"h_tpc_match_resol_%d_%d",i,j);
h2D = dynamic_cast<TH2F*>(aFolderObj->FindObject(name));
if (h2D) {
h = AliPerformanceMatch::MakeResol(h2D,1,0,100);
- sprintf(name,"h_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
h = AliPerformanceMatch::MakeResol(h2D,1,1,100);
//h = (TH1F*)arr->At(1);
- sprintf(name,"h_mean_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h=0;
}
//
- sprintf(name,"h_tpc_match_pull_%d_%d",i,j);
+ snprintf(name,256,"h_tpc_match_pull_%d_%d",i,j);
h2D = dynamic_cast<TH2F*>(aFolderObj->FindObject(name));
if (h2D) {
h = AliPerformanceMatch::MakeResol(h2D,1,0,100);
- sprintf(name,"h_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
aFolderObj->Add(h);
h = AliPerformanceMatch::MakeResol(h2D,1,1,100);
- sprintf(name,"h_mean_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
//
for(Int_t i=5; i<10; i++)
{
- sprintf(name,"h_tpc_match_eff_all_%d",i);
+ snprintf(name,256,"h_tpc_match_eff_all_%d",i);
h = dynamic_cast<TH1F*>(aFolderObj->FindObject(name));
- sprintf(name,"h_tpc_match_eff_rec_%d",i);
+ snprintf(name,256,"h_tpc_match_eff_rec_%d",i);
h2 = dynamic_cast<TH1F*>(aFolderObj->FindObject(name));
if (h && h2) {
TH1F* h2c = (TH1F*)h2->Clone();
h2c->Divide(h2,h,1,1,"B");
- sprintf(name,"h_eff_%d",i);
+ snprintf(name,256,"h_eff_%d",i);
h2c->SetName(name);
h2c->GetXaxis()->SetTitle(h2c->GetXaxis()->GetTitle());
//
// all ITS standalone tracks
- sprintf(name,"h_tpc_match_trackingeff_all_%d",i);
+ snprintf(name,256,"h_tpc_match_trackingeff_all_%d",i);
h = dynamic_cast<TH1F*>(aFolderObj->FindObject(name));
// TPC tracks which has matching with TPC
- sprintf(name,"h_tpc_match_trackingeff_tpc_%d",i);
+ snprintf(name,256,"h_tpc_match_trackingeff_tpc_%d",i);
h2 = dynamic_cast<TH1F*>(aFolderObj->FindObject(name));
if (h && h2) {
TH1F* h2c = (TH1F*)h2->Clone();
h2c->Divide(h2,h,1,1,"B");
- sprintf(name,"h_TPC_eff_%d",i);
+ snprintf(name,256,"h_TPC_eff_%d",i);
h2c->SetName(name);
h2c->GetXaxis()->SetTitle(h2c->GetXaxis()->GetTitle());
char fname[256];
const char* suffix=".ps";
- if(outFileName) sprintf(fname,"%s",outFileName);
- else sprintf(fname,"%s%s",folder->GetName(),suffix);
+ if(outFileName) snprintf(fname,256,"%s",outFileName);
+ else snprintf(fname,256,"%s%s",folder->GetName(),suffix);
TPostScript *ps = new TPostScript(fname,112);
Printf("Histograms are stored in %s", fname);
fExclRange =0; //range of rejection of points around 0
fDoRebin = kFALSE;
fRebin = 0;
+
+ for(Int_t i=0; i<100; i++) {
+ fThetaBins[i] = 0.0;
+ fPhiBins[i] = 0.0;
+ }
Init();
}
fDoRebin = kFALSE;
fRebin = 0;
+ for(Int_t i=0; i<100; i++) {
+ fThetaBins[i] = 0.0;
+ fPhiBins[i] = 0.0;
+ }
+
+
Init();
}
//________________________________________________________________________
{
//exec: read esd or tpc
- if(!fESDTrackCuts) Printf("no esd track cut");
+ if(!fESDTrackCuts) {
+ Printf("no esd track cut");
+ return;
+ }
if (!esdEvent) {
Printf("ERROR: Event not available");
// analyse charge/pt spectra in bins of theta and phi. Bins can be set by user
THnSparseF *copyTHnSparseTheta = (THnSparseF*)fHistInvPtPtThetaPhi->Clone("copyTHnSparseTheta");
+ if(!copyTHnSparseTheta) return;
copyTHnSparseTheta->GetAxis(3)->SetRangeUser(fMinPhi,fMaxPhi);
TH2F *histInvPtTheta = (TH2F*)copyTHnSparseTheta->Projection(2,0);
THnSparseF *copyTHnSparsePhi = (THnSparseF*)fHistInvPtPtThetaPhi->Clone("copyTHnSparsePhi");
+ if(!copyTHnSparsePhi) return;
copyTHnSparsePhi->GetAxis(2)->SetRangeUser(fMinTheta,fMaxTheta);
TH2F *histInvPtPhi = (TH2F*)copyTHnSparsePhi->Projection(3,0);
AliPerfAnalyzeInvPt *ana = new AliPerfAnalyzeInvPt("AliPerfAnalyzeInvPt","AliPerfAnalyzeInvPt");
+ if(!ana) return;
TH1::AddDirectory(kFALSE);
ana->SetMakeFitOption(fFitGaus,fExclRange,fRange);
if(fDoRebin) ana->SetDoRebin(fRebin);
TObjArray *aFolderObj = new TObjArray;
+ if(!aFolderObj) return;
ana->StartAnalysis(histInvPtTheta,histInvPtPhi,aFolderObj);
fDoRebin = kFALSE;
fRebin = 0;
+ for (Int_t i=0; i<100; i++){
+ fThetaBins[i] = 0;
+ fPhiBins[i] = 0;
+ }
+
Init();
}
fDoRebin = kFALSE;// flag for rebin
fRebin = 0;// bins for rebin
+ for (Int_t i=0; i<100; i++){
+ fThetaBins[i] = 0;
+ fPhiBins[i] = 0;
+ }
+
Init();
}
TH2F *histInvPtPhi = (TH2F*)copyTHnSparsePhi->Projection(3,0);
AliPerfAnalyzeInvPt *ana = new AliPerfAnalyzeInvPt("AliPerfAnalyzeInvPt","AliPerfAnalyzeInvPt");
+ if(!ana) return;
TH1::AddDirectory(kFALSE);
ana->SetMakeFitOption(fFitGaus,fExclRange,fRange);
if(fDoRebin) ana->SetDoRebin(fRebin);
TObjArray *aFolderObj = new TObjArray;
+ if(!aFolderObj) return;
ana->StartAnalysis(histInvPtTheta,histInvPtPhi, aFolderObj);
TH1F *h=0;
TH2F *h2D=0;
TObjArray *aFolderObj = new TObjArray;
+ if(!aFolderObj) return;
// write results in the folder
TCanvas * c = new TCanvas("Phi resol Tan","Phi resol Tan");
h2D = (TH2F*)fResolHisto->Projection(i,j);
h = AliPerformanceRes::MakeResol(h2D,1,0,100);
- sprintf(name,"h_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h = AliPerformanceRes::MakeResol(h2D,1,1,100);
//h = (TH1F*)arr->At(1);
- sprintf(name,"h_mean_res_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_res_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fResolHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fResolHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fResolHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
if(j==9) h->SetBit(TH1::kLogX);
h2D = (TH2F*)fPullHisto->Projection(i,j);
h = AliPerformanceRes::MakeResol(h2D,1,0,100);
- sprintf(name,"h_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(resolution)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
aFolderObj->Add(h);
h = AliPerformanceRes::MakeResol(h2D,1,1,100);
- sprintf(name,"h_mean_pull_%d_vs_%d",i,j);
+ snprintf(name,256,"h_mean_pull_%d_vs_%d",i,j);
h->SetName(name);
h->GetXaxis()->SetTitle(fPullHisto->GetAxis(j)->GetTitle());
- sprintf(title,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
+ snprintf(title,256,"%s %s",fPullHisto->GetAxis(i)->GetTitle(),"(mean)");
h->GetYaxis()->SetTitle(title);
- sprintf(title,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
+ snprintf(title,256,"%s vs %s",title,fPullHisto->GetAxis(j)->GetTitle());
h->SetTitle(title);
//if(j==9) h->SetBit(TH1::kLogX);
TString tmpFile = gSystem->TempDirectory() + TString("/TPCQASummary.") + uuid.AsString() + TString(".root");\r
AliTPCPerformanceSummary::WriteToFile(pTPC, pDEdx, pMatch, tmpFile.Data());\r
TChain* chain = new TChain("tpcQA");\r
+ if(!chain) return;\r
chain->Add(tmpFile.Data());\r
TTree *tree = chain->CopyTree("1");\r
if (chain) { delete chain; chain=0; }\r
Reset();
// fFnGenTracks = fnGenTracks;
// fFnCmp = fnCmp;
- sprintf(fFnGenTracks,"%s",fnGenTracks);
- sprintf(fFnCmp,"%s",fnCmp);
+
+ memset(fFnGenTracks,0,sizeof(fFnGenTracks));
+ memset(fFnCmp,0,sizeof(fFnCmp));
+
+ snprintf(fFnGenTracks,1000,"%s",fnGenTracks);
+ snprintf(fFnCmp,1000,"%s",fnCmp);
fFirstEventNr = firstEvent;
fEventNr = firstEvent;
//
// Dummy copu constructor
//
+ memset(fFnGenTracks,0,sizeof(fFnGenTracks));
+ memset(fFnCmp,0,sizeof(fFnCmp));
}
//
if (fIndexRecTracks[fMCInfo->fLabel*20] >= 0) {
track= (AliESDtrack*)fEvent->GetTrack(fIndexRecTracks[fMCInfo->fLabel*20]);
+ if(!track) continue;
//
//
// find nearest track if multifound
//
//
AliESDRecInfo* fRecInfo1 = (AliESDRecInfo*)fRecArray->At(fGenKinkInfo->GetMinus().fLabel);
+ if(!fRecInfo1) continue;
AliESDRecInfo* fRecInfo2 = (AliESDRecInfo*)fRecArray->At(fGenKinkInfo->GetPlus().fLabel);
+ if(!fRecInfo2) continue;
fRecKinkInfo->fT1 = (*fRecInfo1);
fRecKinkInfo->fT2 = (*fRecInfo2);
fRecKinkInfo->fStatus =0;
Double_t* bins = CreateLogBins(nbins, minx, maxx);
TH2F* hRes2 = new TH2F("hRes2", "residuals", nbins, minx, maxx, nBinsRes, miny, maxy);
char cut[1000];
- sprintf(cut,"%s&&%s",selection,quality);
+ snprintf(cut,1000,"%s&&%s",selection,quality);
char expression[1000];
- sprintf(expression,"%s:%s>>hRes2",chy,chx);
+ snprintf(expression,1000,"%s:%s>>hRes2",chy,chx);
fTree->Draw(expression, cut, "groff");
TH1F* hMean=0;
TH1F* hRes = CreateResHisto(hRes2, &hMean);
Double_t* bins = CreateLogBins(nbins, minx, maxx);
TH2F* hRes2 = new TH2F("hRes2", "residuals", nbins, bins, nBinsRes, miny, maxy);
char cut[1000];
- sprintf(cut,"%s&&%s",selection,quality);
+ snprintf(cut,1000,"%s&&%s",selection,quality);
char expression[1000];
- sprintf(expression,"%s:%s>>hRes2",chy,chx);
+ snprintf(expression,1000,"%s:%s>>hRes2",chy,chx);
fTree->Draw(expression, cut, "groff");
TH1F* hMean=0;
TH1F* hRes = CreateResHisto(hRes2, &hMean);
TH1F* hGen = new TH1F("hGen", "gen. tracks", nbins, min, max);
TH1F* hRec = new TH1F("hRec", "rec. tracks", nbins, min, max);
char inputGen[1000];
- sprintf(inputGen,"%s>>hGen", variable);
+ snprintf(inputGen,1000,"%s>>hGen", variable);
fTree->Draw(inputGen, selection, "groff");
char selectionRec[256];
- sprintf(selectionRec, "%s && %s", selection, quality);
+ snprintf(selectionRec,1000, "%s && %s", selection, quality);
char inputRec[1000];
- sprintf(inputRec,"%s>>hRec", variable);
+ snprintf(inputRec,1000,"%s>>hRec", variable);
fTree->Draw(inputRec, selectionRec, "groff");
//
TH1F* hEff = CreateEffHisto(hGen, hRec);
TH1F* hGen = new TH1F("hGen", "gen. tracks", nbins, bins);
TH1F* hRec = new TH1F("hRec", "rec. tracks", nbins, bins);
char inputGen[1000];
- sprintf(inputGen,"%s>>hGen", variable);
+ snprintf(inputGen,1000,"%s>>hGen", variable);
fTree->Draw(inputGen, selection, "groff");
char selectionRec[256];
- sprintf(selectionRec, "%s && %s", selection, quality);
+ snprintf(selectionRec,1000, "%s && %s", selection, quality);
char inputRec[1000];
- sprintf(inputRec,"%s>>hRec", variable);
+ snprintf(inputRec,1000,"%s>>hRec", variable);
fTree->Draw(inputRec, selectionRec, "groff");
//
TH1F* hEff = CreateEffHisto(hGen, hRec);
if (drawBinFits) {
char name[256];
if (bin == 0) {
- sprintf(name, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
+ snprintf(name,256, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
} else if (bin == nBins+1) {
- sprintf(name, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
+ snprintf(name,256, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
} else {
- sprintf(name, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
+ snprintf(name,256, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
axis->GetTitle(), axis->GetBinUpEdge(bin));
}
canBinFits->cd(bin + dBin);
TVirtualPad* currentPad = gPad;
TAxis* axis = hRes2->GetXaxis();
Int_t nBins = axis->GetNbins();
- Bool_t overflowBinFits = kFALSE;
+ //Bool_t overflowBinFits = kFALSE;
+
TH1F* hRes, *hMean;
if (axis->GetXbins()->GetSize()){
hRes = new TH1F("hRes", "", nBins, axis->GetXbins()->GetArray());
fitFunc->SetFillStyle(0);
// create canvas for fits
TCanvas* canBinFits = NULL;
- Int_t nPads = (overflowBinFits) ? nBins+2 : nBins;
+ //Int_t nPads = (overflowBinFits) ? nBins+2 : nBins;
+ Int_t nPads = nBins;
Int_t nx = Int_t(sqrt(nPads-1.));// + 1;
Int_t ny = (nPads-1) / nx + 1;
if (drawBinFits) {
}
// loop over x bins and fit projection
- Int_t dBin = ((overflowBinFits) ? 1 : 0);
+ //Int_t dBin = ((overflowBinFits) ? 1 : 0);
+ Int_t dBin = 0;
for (Int_t bin = 1-dBin; bin <= nBins+dBin; bin++) {
if (drawBinFits) canBinFits->cd(bin + dBin);
Int_t bin0=TMath::Max(bin-integ,0);
if (drawBinFits) {
char name[256];
if (bin == 0) {
- sprintf(name, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
+ snprintf(name,256, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
} else if (bin == nBins+1) {
- sprintf(name, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
+ snprintf(name,256, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
} else {
- sprintf(name, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
+ snprintf(name,256, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
axis->GetTitle(), axis->GetBinUpEdge(bin));
}
canBinFits->cd(bin + dBin);
TVirtualPad* currentPad = gPad;
TAxis* axis = hRes2->GetXaxis();
Int_t nBins = axis->GetNbins();
- Bool_t overflowBinFits = kFALSE;
+ //Bool_t overflowBinFits = kFALSE;
TH1F* hRes, *hMean;
if (axis->GetXbins()->GetSize()){
hRes = new TH1F("hRes", "", nBins, axis->GetXbins()->GetArray());
fitFunc->SetFillStyle(0);
// create canvas for fits
TCanvas* canBinFits = NULL;
- Int_t nPads = (overflowBinFits) ? nBins+2 : nBins;
+ //Int_t nPads = (overflowBinFits) ? nBins+2 : nBins;
+ Int_t nPads = nBins;
Int_t nx = Int_t(sqrt(nPads-1.));// + 1;
Int_t ny = (nPads-1) / nx + 1;
if (drawBinFits) {
}
// loop over x bins and fit projection
- Int_t dBin = ((overflowBinFits) ? 1 : 0);
+ //Int_t dBin = ((overflowBinFits) ? 1 : 0);
+ Int_t dBin = 0;
for (Int_t bin = 1-dBin; bin <= nBins+dBin; bin++) {
if (drawBinFits) canBinFits->cd(bin + dBin);
Int_t bin0=TMath::Max(bin-integ,0);
if (drawBinFits) {
char name[256];
if (bin == 0) {
- sprintf(name, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
+ snprintf(name,256, "%s < %.4g", axis->GetTitle(), axis->GetBinUpEdge(bin));
} else if (bin == nBins+1) {
- sprintf(name, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
+ snprintf(name,256, "%.4g < %s", axis->GetBinLowEdge(bin), axis->GetTitle());
} else {
- sprintf(name, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
+ snprintf(name,256, "%.4g < %s < %.4g", axis->GetBinLowEdge(bin),
axis->GetTitle(), axis->GetBinUpEdge(bin));
}
canBinFits->cd(bin + dBin);
if (i < dim) centries = fTree->Draw(((TObjString*)formulaTokens->At(i))->GetName(), cutStr.Data(), "goff", stop-start,start);
else centries = fTree->Draw(drawStr.Data(), cutStr.Data(), "goff", stop-start,start);
- if (entries != centries) return new TString("An ERROR has occured during fitting!");
+ if (entries != centries) {
+ return new TString("An ERROR has occured during fitting!");
+ }
values[i] = new Double_t[entries];
memcpy(values[i], fTree->GetV1(), entries*sizeof(Double_t));
}
fitter->GetParameters(fitParam);
fitter->GetCovarianceMatrix(covMatrix);
chi2 = fitter->GetChisquare();
- chi2 = chi2;
TString *preturnFormula = new TString(Form("( %f+",fitParam[0])), &returnFormula = *preturnFormula;
returnFormula.Append(" )");
delete formulaTokens;
delete fitter;
+ delete[] *values;
delete[] values;
return preturnFormula;
}