sumError += TMath::Power(hist->GetBinError(i),2);
nentries += 1;
}
- Printf("eta: %lf - sum: %lf - sumError: %lf - counter: %d",
- TMath::Abs(x),sum,sumError,nentries);
+ //Printf("eta: %lf - sum: %lf - sumError: %lf - counter: %d",
+ //TMath::Abs(x),sum,sumError,nentries);
}
Double_t mean = 0.0;
Double_t error = 0.0;
//____________________________________________________________________//
void AliProtonAnalysis::Correct() {
+ //Apply the corrections: Fast & dirty way for the absorption corrections
fHistYPtProtons->Divide(fHistEfficiencyYPtProtons);
fHistYPtAntiProtons->Divide(fHistEfficiencyYPtAntiProtons);
}
TH3F *gHistPrimaryProtonsDCAxyEtaPt = new TH3F("gHistPrimaryProtonsDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistPrimaryProtonsDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistPrimaryProtonsDCAxyEtaPt);
TH3F *gHistPrimaryAntiProtonsDCAxyEtaPt = new TH3F("gHistPrimaryAntiProtonsDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistPrimaryAntiProtonsDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistPrimaryAntiProtonsDCAxyEtaPt);
TH3F *gHistSecondaryProtonsFromWeakDCAxyEtaPt = new TH3F("gHistSecondaryProtonsFromWeakDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryProtonsFromWeakDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryProtonsFromWeakDCAxyEtaPt);
TH3F *gHistSecondaryAntiProtonsFromWeakDCAxyEtaPt = new TH3F("gHistSecondaryAntiProtonsFromWeakDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryAntiProtonsFromWeakDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryAntiProtonsFromWeakDCAxyEtaPt);
TH3F *gHistSecondaryProtonsFromHadronicDCAxyEtaPt = new TH3F("gHistSecondaryProtonsFromHadronicDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryProtonsFromHadronicDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryProtonsFromHadronicDCAxyEtaPt);
TH3F *gHistSecondaryAntiProtonsFromHadronicDCAxyEtaPt = new TH3F("gHistSecondaryAntiProtonsFromHadronicDCAxyEtaPt",
";#eta;P_{T} [GeV/c];dca_{xy} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryAntiProtonsFromHadronicDCAxyEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryAntiProtonsFromHadronicDCAxyEtaPt);
TH3F *gHistPrimaryProtonsDCAzEtaPt = new TH3F("gHistPrimaryProtonsDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistPrimaryProtonsDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistPrimaryProtonsDCAzEtaPt);
TH3F *gHistPrimaryAntiProtonsDCAzEtaPt = new TH3F("gHistPrimaryAntiProtonsDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistPrimaryAntiProtonsDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistPrimaryAntiProtonsDCAzEtaPt);
TH3F *gHistSecondaryProtonsFromWeakDCAzEtaPt = new TH3F("gHistSecondaryProtonsFromWeakDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryProtonsFromWeakDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryProtonsFromWeakDCAzEtaPt);
TH3F *gHistSecondaryAntiProtonsFromWeakDCAzEtaPt = new TH3F("gHistSecondaryAntiProtonsFromWeakDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryAntiProtonsFromWeakDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryAntiProtonsFromWeakDCAzEtaPt);
TH3F *gHistSecondaryProtonsFromHadronicDCAzEtaPt = new TH3F("gHistSecondaryProtonsFromHadronicDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryProtonsFromHadronicDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryProtonsFromHadronicDCAzEtaPt);
TH3F *gHistSecondaryAntiProtonsFromHadronicDCAzEtaPt = new TH3F("gHistSecondaryAntiProtonsFromHadronicDCAzEtaPt",
";#eta;P_{T} [GeV/c];dca_{z} [cm]",
9,-0.9,0.9,
- 16,0.3,1.1,
- 1000,0,10);
+ 6,0.45,1.05,
+ 100,0,10);
gHistSecondaryAntiProtonsFromHadronicDCAzEtaPt->SetStats(kFALSE);
fAcceptedDCAList->Add(gHistSecondaryAntiProtonsFromHadronicDCAzEtaPt);
}
fQAPrimaryProtonsRejectedList->Add(gPrimaryProtonsPointOnITSLayer6Reject);
TH1F *gPrimaryProtonsNumberOfTPCdEdxPointsReject = new TH1F("gPrimaryProtonsNumberOfTPCdEdxPointsReject","",100,0,200);
fQAPrimaryProtonsRejectedList->Add(gPrimaryProtonsNumberOfTPCdEdxPointsReject);
- /*TH2F *gHistPrimaryProtonsDCAxyPtReject = new TH2F("gHistPrimaryProtonsDCAxyPtReject",
- ";P_{T} [GeV/c];dca_{xy} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistPrimaryProtonsDCAxyPtReject->SetStats(kFALSE);
- fQAPrimaryProtonsRejectedList->Add(gHistPrimaryProtonsDCAxyPtReject);
- TH2F *gHistPrimaryProtonsDCAzPtReject = new TH2F("gHistPrimaryProtonsDCAzPtReject",
- ";P_{T} [GeV/c];dca_{z} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistPrimaryProtonsDCAzPtReject->SetStats(kFALSE);
- fQAPrimaryProtonsRejectedList->Add(gHistPrimaryProtonsDCAzPtReject);*/
-
//________________________________________________________________//
/*gDirectory->cd("../../");
fQASecondaryProtonsRejectedList->Add(gSecondaryProtonsPointOnITSLayer6Reject);
TH1F *gSecondaryProtonsNumberOfTPCdEdxPointsReject = new TH1F("gSecondaryProtonsNumberOfTPCdEdxPointsReject","",100,0,200);
fQASecondaryProtonsRejectedList->Add(gSecondaryProtonsNumberOfTPCdEdxPointsReject);
- /*TH2F *gHistSecondaryProtonsFromWeakDCAxyPtReject = new TH2F("gHistSecondaryProtonsFromWeakDCAxyPtReject",
- ";P_{T} [GeV/c];dca_{xy} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistSecondaryProtonsFromWeakDCAxyPtReject->SetStats(kFALSE);
- fQASecondaryProtonsRejectedList->Add(gHistSecondaryProtonsFromWeakDCAxyPtReject);
- TH2F *gHistSecondaryProtonsFromWeakDCAzPtReject = new TH2F("gHistSecondaryProtonsFromWeakDCAzPtReject",
- ";P_{T} [GeV/c];dca_{z} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistSecondaryProtonsFromWeakDCAzPtReject->SetStats(kFALSE);
- fQASecondaryProtonsRejectedList->Add(gHistSecondaryProtonsFromWeakDCAzPtReject);
- TH2F *gHistSecondaryProtonsFromHadronicDCAxyPtReject = new TH2F("gHistSecondaryProtonsFromHadronicDCAxyPtReject",
- ";P_{T} [GeV/c];dca_{xy} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistSecondaryProtonsFromHadronicDCAxyPtReject->SetStats(kFALSE);
- fQASecondaryProtonsRejectedList->Add(gHistSecondaryProtonsFromHadronicDCAxyPtReject);
- TH2F *gHistSecondaryProtonsFromHadronicDCAzPtReject = new TH2F("gHistSecondaryProtonsFromHadronicDCAzPtReject",
- ";P_{T} [GeV/c];dca_{z} [cm]",
- 16,0.3,1.1,
- 1000,0,10);
- gHistSecondaryProtonsFromHadronicDCAzPtReject->SetStats(kFALSE);
- fQASecondaryProtonsRejectedList->Add(gHistSecondaryProtonsFromHadronicDCAzPtReject);*/
/*gDirectory->cd("../../../");
void drawProtonQAResults(const char *analysisType = "Hybrid",
- const char *pidMode = "Sigma1") {
+ const char *pidMode = "Sigma2") {
//Macro to visualize the results of the proton QA task
gStyle->SetPalette(1,0);
gStyle->SetCanvasColor(41);
" - Name: "<<gDCAListHistograms[iEntry]->GetName()<<endl;*/
}
- TH2F *gDCAListHistograms2D[20];
+ TH3F *gDCAListHistograms3D[20];
+ TList *listDCA3D = new TList();
Int_t nDCAHistos2D = 12;
- for(Int_t iEntry = nDCAHistos1D; iEntry < 2*nDCAHistos2D; iEntry++)
- gDCAListHistograms2D[iEntry-nDCAHistos1D] = (TH2F *)listDCA->At(iEntry);
+ for(Int_t iEntry = nDCAHistos1D; iEntry < 2*nDCAHistos2D; iEntry++) {
+ gDCAListHistograms3D[iEntry-nDCAHistos1D] = dynamic_cast<TH3F *>(listDCA->At(iEntry));
+ listDCA3D->Add(gDCAListHistograms3D[iEntry-nDCAHistos1D]);
+ }
+
//_________________________________________________________//
TF1 *gDCA = new TF1("gDCA",
"[0]*TMath::Power(1+TMath::Exp((x-[1])/[2]),-1)",
c16->SetFillColor(10); c16->GetFrame()->SetFillColor(10);
c16->SetHighLightColor(10); c16->Divide(3,2);
c16->cd(1)->SetBottomMargin(0.2); c16->cd(1)->SetLeftMargin(0.2);
- gDCAListHistograms2D[0]->SetTitle("Accepted primary protons");
- gDCAListHistograms2D[0]->Draw("colz");
+ gDCAListHistograms3D[0]->SetTitle("Accepted primary protons");
+ gDCAListHistograms3D[0]->Draw("");
c16->cd(2)->SetBottomMargin(0.2); c16->cd(2)->SetLeftMargin(0.2);
- gDCAListHistograms2D[2]->SetTitle("Accepted secondary protons (weak decay)");
- gDCAListHistograms2D[2]->Draw("colz");
+ gDCAListHistograms3D[2]->SetTitle("Accepted secondary protons (weak decay)");
+ gDCAListHistograms3D[2]->Draw("");
c16->cd(3)->SetBottomMargin(0.2); c16->cd(3)->SetLeftMargin(0.2);
- gDCAListHistograms2D[4]->SetTitle("Accepted secondary protons (material)");
- gDCAListHistograms2D[4]->Draw("colz");
+ gDCAListHistograms3D[4]->SetTitle("Accepted secondary protons (material)");
+ gDCAListHistograms3D[4]->Draw("");
c16->cd(4)->SetBottomMargin(0.2); c16->cd(4)->SetLeftMargin(0.2);
- gDCAListHistograms2D[1]->SetTitle("Accepted primary antiprotons");
- gDCAListHistograms2D[1]->Draw("colz");
+ gDCAListHistograms3D[1]->SetTitle("Accepted primary antiprotons");
+ gDCAListHistograms3D[1]->Draw("");
c16->cd(5)->SetBottomMargin(0.2); c16->cd(5)->SetLeftMargin(0.2);
- gDCAListHistograms2D[3]->SetTitle("Accepted secondary antiprotons (weak decay)");
- gDCAListHistograms2D[3]->Draw("colz");
+ gDCAListHistograms3D[3]->SetTitle("Accepted secondary antiprotons (weak decay)");
+ gDCAListHistograms3D[3]->Draw("");
c16->cd(6)->SetBottomMargin(0.2); c16->cd(6)->SetLeftMargin(0.2);
- gDCAListHistograms2D[5]->SetTitle("Accepted secondary antiprotons (material)");
- gDCAListHistograms2D[5]->Draw("colz");
+ gDCAListHistograms3D[5]->SetTitle("Accepted secondary antiprotons (material)");
+ gDCAListHistograms3D[5]->Draw("");
TCanvas *c17 = new TCanvas("c17","dca(z) vs Pt",100,100,900,650);
c17->SetFillColor(10); c17->GetFrame()->SetFillColor(10);
c17->SetHighLightColor(10); c17->Divide(3,2);
c17->cd(1)->SetBottomMargin(0.2); c17->cd(1)->SetLeftMargin(0.2);
- gDCAListHistograms2D[6]->SetTitle("Accepted primary protons");
- gDCAListHistograms2D[6]->Draw("colz");
+ gDCAListHistograms3D[6]->SetTitle("Accepted primary protons");
+ gDCAListHistograms3D[6]->Draw("");
c17->cd(2)->SetBottomMargin(0.2); c17->cd(2)->SetLeftMargin(0.2);
- gDCAListHistograms2D[8]->SetTitle("Accepted secondary protons (weak decay)");
- gDCAListHistograms2D[8]->Draw("colz");
+ gDCAListHistograms3D[8]->SetTitle("Accepted secondary protons (weak decay)");
+ gDCAListHistograms3D[8]->Draw("");
c17->cd(3)->SetBottomMargin(0.2); c17->cd(3)->SetLeftMargin(0.2);
- gDCAListHistograms2D[10]->SetTitle("Accepted secondary protons (material)");
- gDCAListHistograms2D[10]->Draw("colz");
+ gDCAListHistograms3D[10]->SetTitle("Accepted secondary protons (material)");
+ gDCAListHistograms3D[10]->Draw("");
c17->cd(4)->SetBottomMargin(0.2); c17->cd(4)->SetLeftMargin(0.2);
- gDCAListHistograms2D[7]->SetTitle("Accepted primary antiprotons");
- gDCAListHistograms2D[7]->Draw("colz");
+ gDCAListHistograms3D[7]->SetTitle("Accepted primary antiprotons");
+ gDCAListHistograms3D[7]->Draw("");
c17->cd(5)->SetBottomMargin(0.2); c17->cd(5)->SetLeftMargin(0.2);
- gDCAListHistograms2D[9]->SetTitle("Accepted secondary antiprotons (weak decay)");
- gDCAListHistograms2D[9]->Draw("colz");
+ gDCAListHistograms3D[9]->SetTitle("Accepted secondary antiprotons (weak decay)");
+ gDCAListHistograms3D[9]->Draw("");
c17->cd(6)->SetBottomMargin(0.2); c17->cd(6)->SetLeftMargin(0.2);
- gDCAListHistograms2D[11]->SetTitle("Accepted secondary antiprotons (material)");
- gDCAListHistograms2D[11]->Draw("colz");
+ gDCAListHistograms3D[11]->SetTitle("Accepted secondary antiprotons (material)");
+ gDCAListHistograms3D[11]->Draw("");
+ drawDCAPlots(listDCA3D);
f->Close();
}
+//________________________________________________//
+void drawDCAPlots(TList *listDCA3D) {
+ //Draws the dca distributions for primaries and secondaries for each
+ //eta-pT bin
+ TH3F *gDCAListHistograms3D[20];
+ listDCA3D->ls();
+ for(Int_t i = 0; i < listDCA3D->GetEntries(); i++) {
+ gDCAListHistograms3D[i] = dynamic_cast<TH3F *>(listDCA3D->At(i));
+ Printf("Name 3D: %s - Entries: %d",gDCAListHistograms3D[i]->GetName(),gDCAListHistograms3D[i]->GetEntries());
+ }
+ TCanvas *cDCAxy = new TCanvas("cDCAxy","",0,0,500,500);
+ gDCAListHistograms3D[0]->ProjectionZ()->Draw();
+
+}
+
//________________________________________________//
void draw2DEfficiency(const char *analysisMode = "TPC",
const char *pidMode = "Bayesian",