hESDConvGammaPt(NULL),
hESDConvGammaR(NULL),
hESDConvGammaEta(NULL),
+ hESDConvGammaPhi(NULL),
tESDConvGammaPtDcazCat(NULL),
fPtGamma(0),
fDCAzPhoton(0),
hMCEtaInAccPt(NULL),
hMCPi0PtY(NULL),
hMCEtaPtY(NULL),
+ hMCPi0PtAlpha(NULL),
+ hMCEtaPtAlpha(NULL),
hMCK0sPt(NULL),
hMCK0sWOWeightPt(NULL),
hMCK0sPtY(NULL),
hESDTrueEtaPtOpenAngle(NULL),
hESDTrueMotherDalitzInvMassPt(NULL),
hESDTrueConvGammaPt(NULL),
+ hESDTrueConvGammaR(NULL),
+ hESDTrueConvGammaPtMC(NULL),
+ hESDTrueConvGammaRMC(NULL),
hESDTrueConvGammaEta(NULL),
hESDCombinatorialPt(NULL),
hESDTruePrimaryConvGammaPt(NULL),
hESDConvGammaPt(NULL),
hESDConvGammaR(NULL),
hESDConvGammaEta(NULL),
+ hESDConvGammaPhi(NULL),
tESDConvGammaPtDcazCat(NULL),
fPtGamma(0),
fDCAzPhoton(0),
hMCEtaInAccPt(NULL),
hMCPi0PtY(NULL),
hMCEtaPtY(NULL),
+ hMCPi0PtAlpha(NULL),
+ hMCEtaPtAlpha(NULL),
hMCK0sPt(NULL),
hMCK0sWOWeightPt(NULL),
hMCK0sPtY(NULL),
hESDTrueEtaPtOpenAngle(NULL),
hESDTrueMotherDalitzInvMassPt(NULL),
hESDTrueConvGammaPt(NULL),
+ hESDTrueConvGammaR(NULL),
+ hESDTrueConvGammaPtMC(NULL),
+ hESDTrueConvGammaRMC(NULL),
hESDTrueConvGammaEta(NULL),
hESDCombinatorialPt(NULL),
hESDTruePrimaryConvGammaPt(NULL),
fBGHandler[iCut] = new AliGammaConversionAODBGHandler(
collisionSystem,centMin,centMax,
((AliConversionMesonCuts*)fMesonCutArray->At(iCut))->GetNumberOfBGEvents(),
- ((AliConversionMesonCuts*)fMesonCutArray->At(iCut))->UseTrackMultiplicity());
+ ((AliConversionMesonCuts*)fMesonCutArray->At(iCut))->UseTrackMultiplicity(),
+ 0,8,5);
fBGHandlerRP[iCut] = NULL;
} else {
fBGHandlerRP[iCut] = new AliConversionAODBGHandlerRP(
if (fDoPhotonQA > 0){
hESDConvGammaR = new TH1F*[fnCuts];
hESDConvGammaEta = new TH1F*[fnCuts];
+ hESDConvGammaPhi = new TH1F*[fnCuts];
}
if(fDoMesonAnalysis){
fESDList[iCut]->SetOwner(kTRUE);
fCutFolder[iCut]->Add(fESDList[iCut]);
- hNEvents[iCut] = new TH1I("NEvents","NEvents",9,-0.5,8.5);
+ hNEvents[iCut] = new TH1I("NEvents","NEvents",10,-0.5,9.5);
hNEvents[iCut]->GetXaxis()->SetBinLabel(1,"Accepted");
hNEvents[iCut]->GetXaxis()->SetBinLabel(2,"Centrality");
hNEvents[iCut]->GetXaxis()->SetBinLabel(3,"Missing MC");
- if (((AliConvEventCuts*)fEventCutArray->At(iCut))->IsSpecialTrigger() > 3 ){
+ if (((AliConvEventCuts*)fEventCutArray->At(iCut))->IsSpecialTrigger() > 1 ){
TString TriggerNames = "Not Trigger: ";
TriggerNames = TriggerNames+ ( (AliConvEventCuts*)fEventCutArray->At(iCut))->GetSpecialTriggerName();
hNEvents[iCut]->GetXaxis()->SetBinLabel(4,TriggerNames.Data());
hNEvents[iCut]->GetXaxis()->SetBinLabel(7,"Pile-Up");
hNEvents[iCut]->GetXaxis()->SetBinLabel(8,"no SDD");
hNEvents[iCut]->GetXaxis()->SetBinLabel(9,"no V0AND");
+ hNEvents[iCut]->GetXaxis()->SetBinLabel(10,"EMCAL problem");
fESDList[iCut]->Add(hNEvents[iCut]);
if(fIsHeavyIon == 1) hNGoodESDTracks[iCut] = new TH1I("GoodESDTracks","GoodESDTracks",4000,0,4000);
fESDList[iCut]->Add(hESDConvGammaR[iCut]);
hESDConvGammaEta[iCut] = new TH1F("ESD_ConvGamma_Eta","ESD_ConvGamma_Eta",2000,-2,2);
fESDList[iCut]->Add(hESDConvGammaEta[iCut]);
+ hESDConvGammaPhi[iCut] = new TH1F("ESD_ConvGamma_Phi","ESD_ConvGamma_Phi",360,0,2*TMath::Pi());
+ fESDList[iCut]->Add(hESDConvGammaPhi[iCut]);
}
if(fDoMesonAnalysis){
hESDMotherEtaPtAlpha[iCut] = new TH2F("ESD_MotherEta_Pt_Alpha","ESD_MotherEta_Pt_Alpha",150,0.03,15.,100,0,1);
SetLogBinningXTH2(hESDMotherEtaPtAlpha[iCut]);
fESDList[iCut]->Add(hESDMotherEtaPtAlpha[iCut]);
- hESDMotherPi0PtOpenAngle[iCut] = new TH2F("ESD_MotherPi0_Pt_OpenAngle","ESD_MotherPi0_Pt_OpenAngle",150,0.03,15.,200,0,2*TMath::Pi());
+ hESDMotherPi0PtOpenAngle[iCut] = new TH2F("ESD_MotherPi0_Pt_OpenAngle","ESD_MotherPi0_Pt_OpenAngle",150,0.03,15.,100,0,TMath::Pi());
SetLogBinningXTH2(hESDMotherPi0PtOpenAngle[iCut]);
fESDList[iCut]->Add(hESDMotherPi0PtOpenAngle[iCut]);
- hESDMotherEtaPtOpenAngle[iCut] = new TH2F("ESD_MotherEta_Pt_OpenAngle","ESD_MotherEta_Pt_OpenAngle",150,0.03,15.,200,0,2*TMath::Pi());
+ hESDMotherEtaPtOpenAngle[iCut] = new TH2F("ESD_MotherEta_Pt_OpenAngle","ESD_MotherEta_Pt_OpenAngle",150,0.03,15.,100,0,TMath::Pi());
SetLogBinningXTH2(hESDMotherEtaPtOpenAngle[iCut]);
fESDList[iCut]->Add(hESDMotherEtaPtOpenAngle[iCut]);
}
hMCConvGammaR = new TH1F*[fnCuts];
hMCConvGammaEta = new TH1F*[fnCuts];
hESDTrueConvGammaEta = new TH1F*[fnCuts];
+ hESDTrueConvGammaR = new TH1F*[fnCuts];
+ hESDTrueConvGammaRMC = new TH1F*[fnCuts];
+ hESDTrueConvGammaPtMC = new TH1F*[fnCuts];
}
if(fDoMesonAnalysis){
if (fDoMesonQA > 0){
hMCPi0PtY = new TH2F*[fnCuts];
hMCEtaPtY = new TH2F*[fnCuts];
+ hMCPi0PtAlpha = new TH2F*[fnCuts];
+ hMCEtaPtAlpha = new TH2F*[fnCuts];
hMCK0sPt = new TH1F*[fnCuts];
hMCK0sWOWeightPt = new TH1F*[fnCuts];
hMCK0sPtY = new TH2F*[fnCuts];
hMCEtaPtY[iCut]->Sumw2();
SetLogBinningXTH2(hMCEtaPtY[iCut]);
fMCList[iCut]->Add(hMCEtaPtY[iCut]);
+ hMCPi0PtAlpha[iCut] = new TH2F("MC_Pi0_Pt_Alpha","MC_Pi0_Pt_Alpha",150,0.03,15.,100,0,1);
+ SetLogBinningXTH2(hMCPi0PtAlpha[iCut]);
+ fMCList[iCut]->Add(hMCPi0PtAlpha[iCut]);
+ hMCEtaPtAlpha[iCut] = new TH2F("MC_Eta_Pt_Alpha","MC_Eta_Pt_Alpha",150,0.03,15.,100,0,1);
+ SetLogBinningXTH2(hMCEtaPtAlpha[iCut]);
+ fMCList[iCut]->Add(hMCEtaPtAlpha[iCut]);
+
hMCK0sPt[iCut] = new TH1F("MC_K0s_Pt","MC_K0s_Pt",150,0,15);
hMCK0sPt[iCut]->Sumw2();
fMCList[iCut]->Add(hMCK0sPt[iCut]);
hESDTruePrimaryConvGammaESDPtMCPt[iCut] = new TH2F("ESD_TruePrimaryConvGammaESD_PtMCPt", "ESD_TruePrimaryConvGammaESD_PtMCPt",250,0,25,250,0,25);
fTrueList[iCut]->Add(hESDTruePrimaryConvGammaESDPtMCPt[iCut]);
+
+
+ if (fDoPhotonQA > 0){
+
+ hESDTrueConvGammaEta[iCut] = new TH1F("ESD_TrueConvGamma_Eta","ESD_TrueConvGamma_Eta",2000,-2,2);
+ fTrueList[iCut]->Add(hESDTrueConvGammaEta[iCut]);
+ hESDTrueConvGammaR[iCut] = new TH1F("ESD_TrueConvGamma_R","ESD_TrueConvGamma_R",800,0,200);
+ fTrueList[iCut]->Add(hESDTrueConvGammaR[iCut]);
+ hESDTrueConvGammaRMC[iCut] = new TH1F("ESD_TrueConvGamma_RMC","ESD_TrueConvGamma_RMC",800,0,200);
+ fTrueList[iCut]->Add(hESDTrueConvGammaRMC[iCut]);
+ hESDTrueConvGammaPtMC[iCut] = new TH1F("ESD_TrueConvGamma_PtMC","ESD_TrueConvGamma_PtMC",250,0,25);
+ fTrueList[iCut]->Add(hESDTrueConvGammaPtMC[iCut]);
+ }
if(fDoMesonAnalysis){
hESDTrueMotherInvMassPt[iCut] = new TH2F("ESD_TrueMother_InvMass_Pt","ESD_TrueMother_InvMass_Pt",800,0,0.8,250,0,25);
SetLogBinningXTH2(hESDTrueEtaPtOpenAngle[iCut]);
fTrueList[iCut]->Add(hESDTrueEtaPtOpenAngle[iCut]);
- hESDTrueConvGammaEta[iCut] = new TH1F("ESD_TrueConvGamma_Eta","ESD_TrueConvGamma_Eta",2000,-2,2);
- fTrueList[iCut]->Add(hESDTrueConvGammaEta[iCut]);
-
}
}
}
fiCut = iCut;
Int_t eventNotAccepted =
((AliConvEventCuts*)fEventCutArray->At(iCut))
- ->IsEventAcceptedByCut(fV0Reader->GetEventCuts(),fInputEvent,fMCEvent,fIsHeavyIon);
+ ->IsEventAcceptedByCut(fV0Reader->GetEventCuts(),fInputEvent,fMCEvent,fIsHeavyIon,kFALSE);
if(eventNotAccepted){
// cout << "event rejected due to wrong trigger: " <<eventNotAccepted << endl;
hNEvents[iCut]->Fill(eventNotAccepted); // Check Centrality, PileUp, SDD and V0AND --> Not Accepted => eventQuality = 1
if(fIsFromMBHeader){
hESDConvGammaPt[fiCut]->Fill(PhotonCandidate->Pt());
if (fDoPhotonQA > 0){
- hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
- hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
+ hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
+ hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
+ hESDConvGammaPhi[fiCut]->Fill(PhotonCandidate->Phi());
}
}
if(fIsMC){
if(!((AliConversionPhotonCuts*)fCutArray->At(fiCut))->UseToCloseV0sCut()){ // To Colse v0s cut diabled, step two not needed
fGammaCandidates->Add(PhotonCandidate);
if(fIsFromMBHeader){
- hESDConvGammaPt[fiCut]->Fill(PhotonCandidate->Pt());
- if (fDoPhotonQA > 0){
- hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
- hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
- }
+ hESDConvGammaPt[fiCut]->Fill(PhotonCandidate->Pt());
+ if (fDoPhotonQA > 0){
+ hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
+ hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
+ hESDConvGammaPhi[fiCut]->Fill(PhotonCandidate->Phi());
+ }
}
}
if(fIsMC){
if(fIsFromMBHeader){
hESDConvGammaPt[fiCut]->Fill(PhotonCandidate->Pt());
if (fDoPhotonQA > 0){
- hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
- hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
+ hESDConvGammaR[fiCut]->Fill(PhotonCandidate->GetConversionRadius());
+ hESDConvGammaEta[fiCut]->Fill(PhotonCandidate->Eta());
+ hESDConvGammaPhi[fiCut]->Fill(PhotonCandidate->Phi());
}
}
if(fIsMC){
}
// STILL A BUG IN ALIROOT >>8 HAS TPO BE REMOVED AFTER FIX
-
+ Double_t rConv=0.;
+ rConv = sqrt( (posDaughter->Xv()*posDaughter->Xv()) + (posDaughter->Yv()*posDaughter->Yv()) );
// True Photon
if(fIsFromMBHeader){
- hESDTrueConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- if (fDoPhotonQA > 0) hESDTrueConvGammaEta[fiCut]->Fill(TruePhotonCandidate->Eta());
+ hESDTrueConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ if (fDoPhotonQA > 0){
+ hESDTrueConvGammaEta[fiCut]->Fill(TruePhotonCandidate->Eta());
+ hESDTrueConvGammaR[fiCut]->Fill(TruePhotonCandidate->GetConversionRadius());
+ hESDTrueConvGammaRMC[fiCut]->Fill(rConv);
+ hESDTrueConvGammaPtMC[fiCut]->Fill(Photon->Pt());
+
+ }
}
hESDTrueGammaPsiPairDeltaPhi[fiCut]->Fill(deltaPhi,TruePhotonCandidate->GetPsiPair());
if(Photon->IsPrimary()){
// True Photon
if(fIsFromMBHeader){
hESDTrueConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- if (fDoPhotonQA > 0) hESDTrueConvGammaEta[fiCut]->Fill(TruePhotonCandidate->Eta());
+ if (fDoPhotonQA > 0){
+ hESDTrueConvGammaEta[fiCut]->Fill(TruePhotonCandidate->Eta());
+ hESDTrueConvGammaR[fiCut]->Fill(TruePhotonCandidate->GetConversionRadius());
+ hESDTrueConvGammaRMC[fiCut]->Fill(posDaughter->R());
+ hESDTrueConvGammaPtMC[fiCut]->Fill(Photon->Pt());
+ }
+
}
hESDTrueGammaPsiPairDeltaPhi[fiCut]->Fill(deltaPhi,TruePhotonCandidate->GetPsiPair());
if(posDaughter->GetMother(0) <= fMCStack->GetNprimary()){
if(fIsFromMBHeader){
iPhotonMCInfo = 2;
hESDTrueSecondaryConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- if(fMCStack->Particle(Photon->GetMother(0))->GetMother(0) > -1 &&
- fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 3122){
- hESDTrueSecondaryConvGammaFromXFromLambdaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- iPhotonMCInfo = 5;
- }
- if(fMCStack->Particle(Photon->GetMother(0))->GetMother(0) > -1 &&
- fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 310){
- hESDTrueSecondaryConvGammaFromXFromK0sPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- iPhotonMCInfo = 4;
- }
- if(fMCStack->Particle(Photon->GetMother(0))->GetMother(0) > -1 &&
- fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 221){
- iPhotonMCInfo = 3;
- }
+ if(fMCStack->Particle(Photon->GetMother(0))->GetMother(0) > -1){
+ if ( fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 3122){
+ hESDTrueSecondaryConvGammaFromXFromLambdaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ iPhotonMCInfo = 5;
+ }
+ if (fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 310){
+ hESDTrueSecondaryConvGammaFromXFromK0sPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ iPhotonMCInfo = 4;
+ }
+ if (fMCStack->Particle(fMCStack->Particle(Photon->GetMother(0))->GetMother(0))->GetPdgCode() == 221){
+ iPhotonMCInfo = 3;
+ }
+ }
}
}
}
AliAODMCParticle *tmpDaughter = static_cast<AliAODMCParticle*>(AODMCTrackArray->At(daughterIndex));
if(!tmpDaughter) continue;
if(abs(tmpDaughter->GetPdgCode()) == 11){
- rConv = sqrt( (tmpDaughter->Xv()*tmpDaughter->Xv()) + (tmpDaughter->Yv()*tmpDaughter->Yv()) );
+ rConv = sqrt( (tmpDaughter->Xv()*tmpDaughter->Xv()) + (tmpDaughter->Yv()*tmpDaughter->Yv()) );
}
}
hMCConvGammaPt[fiCut]->Fill(particle->Pt());
-((AliConvEventCuts*)fEventCutArray->At(fiCut))->GetEtaShift();
}
+ Double_t alpha = -1;
+ if (particle->GetPdgCode() == 111 || particle->GetPdgCode() == 221){
+ alpha = TMath::Abs((daughter0->E() - daughter1->E()))/(daughter0->E() + daughter1->E());
+ }
+
if(particle->GetPdgCode() == 111){
hMCPi0Pt[fiCut]->Fill(particle->Pt(),weighted); // All MC Pi0
hMCPi0WOWeightPt[fiCut]->Fill(particle->Pt());
- if (fDoMesonQA > 0) hMCPi0PtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ if (fDoMesonQA > 0){
+ hMCPi0PtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ hMCPi0PtAlpha[fiCut]->Fill(particle->Pt(),alpha); // All MC Pi0
+ }
} else if(particle->GetPdgCode() == 221){
hMCEtaPt[fiCut]->Fill(particle->Pt(),weighted); // All MC Eta
hMCEtaWOWeightPt[fiCut]->Fill(particle->Pt());
- if (fDoMesonQA > 0) hMCEtaPtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ if (fDoMesonQA > 0){
+ hMCEtaPtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ hMCEtaPtAlpha[fiCut]->Fill(particle->Pt(),alpha); // All MC Pi0
+ }
}
// Check the acceptance for both gammas
mesonY = 0.5*(TMath::Log((particle->Energy()+particle->Pz()) / (particle->Energy()-particle->Pz())))
-((AliConvEventCuts*)fEventCutArray->At(fiCut))->GetEtaShift();
}
+ Double_t alpha = -1;
+ if (particle->GetPdgCode() == 111 || particle->GetPdgCode() == 221){
+ alpha = TMath::Abs((daughter0->Energy() - daughter1->Energy()))/(daughter0->Energy() + daughter1->Energy());
+ }
if(particle->GetPdgCode() == 111){
hMCPi0Pt[fiCut]->Fill(particle->Pt(),weighted); // All MC Pi0
hMCPi0WOWeightPt[fiCut]->Fill(particle->Pt());
- if (fDoMesonQA > 0) hMCPi0PtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ if (fDoMesonQA > 0){
+ hMCPi0PtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ hMCPi0PtAlpha[fiCut]->Fill(particle->Pt(),alpha); // All MC Pi0
+ }
} else if(particle->GetPdgCode() == 221){
hMCEtaPt[fiCut]->Fill(particle->Pt(),weighted); // All MC Eta
hMCEtaWOWeightPt[fiCut]->Fill(particle->Pt());
- if (fDoMesonQA > 0) hMCEtaPtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ if (fDoMesonQA > 0){
+ hMCEtaPtY[fiCut]->Fill(particle->Pt(),mesonY,weighted); // All MC Pi0
+ hMCEtaPtAlpha[fiCut]->Fill(particle->Pt(),alpha); // All MC Pi0
+ }
}
// Check the acceptance for both gammas
if (fInvMass > 0.08 && fInvMass < 0.2) tESDMesonsInvMassPtDcazMinDcazMaxFlag[fiCut]->Fill();
if ((fInvMass > 0.45 && fInvMass < 0.6) && (fPt > 0.999 && fPt < 20.) )tESDMesonsInvMassPtDcazMinDcazMaxFlag[fiCut]->Fill();
} else if (fPt > 0.299 && fPt < 20. ) {
- if ( (fInvMass > 0.08 && fInvMass < 0.2) || (fInvMass > 0.45 && fInvMass < 0.6)) tESDMesonsInvMassPtDcazMinDcazMaxFlag[fiCut]->Fill();
+ if ( (fInvMass > 0.08 && fInvMass < 0.6) ) tESDMesonsInvMassPtDcazMinDcazMaxFlag[fiCut]->Fill();
}
}
}
else return 15;
}
return 15;
-
-}
\ No newline at end of file
+}