fHistoMotherEtaPtAlpha(NULL),
fHistoMotherPi0PtOpenAngle(NULL),
fHistoMotherEtaPtOpenAngle(NULL),
+ fHistoMotherInvMassECalib(NULL),
+ fHistoMotherInvMassECalibalpha(NULL),
fTreeMesonsInvMassPtDcazMinDcazMaxFlag(NULL),
fInvMass(0),
fPt(0),
fHistoClusGammaPt(NULL),
fHistoMCHeaders(NULL),
fHistoMCAllGammaPt(NULL),
+ fHistoMCAllGammaEMCALAccPt(NULL),
fHistoMCDecayGammaPi0Pt(NULL),
fHistoMCDecayGammaRhoPt(NULL),
fHistoMCDecayGammaEtaPt(NULL),
fHistoTrueMotherInvMassPt(NULL),
fHistoTrueMotherCaloPhotonInvMassPt(NULL),
fHistoTrueMotherCaloConvertedPhotonInvMassPt(NULL),
+ fHistoTruePi0CaloConvertedPhotonInvMassPt(NULL),
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt(NULL),
+ fHistoTrueEtaCaloConvertedPhotonInvMassPt(NULL),
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt(NULL),
fHistoTrueMotherCaloElectronInvMassPt(NULL),
fHistoTrueMotherCaloMergedClusterInvMassPt(NULL),
fHistoTrueMotherCaloEMNonLeadingInvMassPt(NULL),
fHistoTrueSecondaryConvGammaFromXFromLambdaPt(NULL),
fHistoTrueClusGammaPt(NULL),
fHistoTrueClusUnConvGammaPt(NULL),
+ fHistoTrueClusUnConvGammaMCPt(NULL),
fHistoTrueClusElectronPt(NULL),
fHistoTrueClusConvGammaPt(NULL),
+ fHistoTrueClusConvGammaMCPt(NULL),
fHistoTrueClusConvGammaFullyPt(NULL),
fHistoTrueClusMergedGammaPt(NULL),
fHistoTrueClusMergedPartConvGammaPt(NULL),
fHistoMotherEtaPtAlpha(NULL),
fHistoMotherPi0PtOpenAngle(NULL),
fHistoMotherEtaPtOpenAngle(NULL),
+ fHistoMotherInvMassECalib(NULL),
+ fHistoMotherInvMassECalibalpha(NULL),
fTreeMesonsInvMassPtDcazMinDcazMaxFlag(NULL),
fInvMass(0),
fPt(0),
fHistoClusGammaPt(NULL),
fHistoMCHeaders(NULL),
fHistoMCAllGammaPt(NULL),
+ fHistoMCAllGammaEMCALAccPt(NULL),
fHistoMCDecayGammaPi0Pt(NULL),
fHistoMCDecayGammaRhoPt(NULL),
fHistoMCDecayGammaEtaPt(NULL),
fHistoTrueMotherInvMassPt(NULL),
fHistoTrueMotherCaloPhotonInvMassPt(NULL),
fHistoTrueMotherCaloConvertedPhotonInvMassPt(NULL),
+ fHistoTruePi0CaloConvertedPhotonInvMassPt(NULL),
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt(NULL),
+ fHistoTrueEtaCaloConvertedPhotonInvMassPt(NULL),
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt(NULL),
fHistoTrueMotherCaloElectronInvMassPt(NULL),
fHistoTrueMotherCaloMergedClusterInvMassPt(NULL),
fHistoTrueMotherCaloEMNonLeadingInvMassPt(NULL),
fHistoTrueSecondaryConvGammaFromXFromLambdaPt(NULL),
fHistoTrueClusGammaPt(NULL),
fHistoTrueClusUnConvGammaPt(NULL),
+ fHistoTrueClusUnConvGammaMCPt(NULL),
fHistoTrueClusElectronPt(NULL),
fHistoTrueClusConvGammaPt(NULL),
+ fHistoTrueClusConvGammaMCPt(NULL),
fHistoTrueClusConvGammaFullyPt(NULL),
fHistoTrueClusMergedGammaPt(NULL),
fHistoTrueClusMergedPartConvGammaPt(NULL),
fHistoMotherPi0PtOpenAngle = new TH2F*[fnCuts];
fHistoMotherEtaPtOpenAngle = new TH2F*[fnCuts];
}
+ if(fDoMesonQA == 1){
+ fHistoMotherInvMassECalib = new TH2F*[fnCuts];
+ fHistoMotherInvMassECalibalpha = new TH2F*[fnCuts];
+ }
}
fTagOutputList = new TList*[fnCuts];
fMesonDCAList[iCut]->Add(fTreeMesonsInvMassPtDcazMinDcazMaxFlag[iCut]);
}
+ if(fDoMesonQA == 1){
+ fHistoMotherInvMassECalib[iCut] = new TH2F("ESD_Mother_InvMass_Pt_Calib","ESD_Mother_InvMass_Pt_Calib",800,0,0.8,250,0,25);
+ fESDList[iCut]->Add(fHistoMotherInvMassECalib[iCut]);
+ fHistoMotherInvMassECalibalpha[iCut] = new TH2F("ESD_Mother_InvMass_vs_E_Calib_alpha","ESD_Mother_InvMass_vs_E_Calib_alpha",800,0,0.8,250,0,25);
+ fESDList[iCut]->Add(fHistoMotherInvMassECalibalpha[iCut]);
+ }
+
if (fDoMesonQA > 0 ){
fHistoMotherPi0PtY[iCut] = new TH2F("ESD_MotherPi0_Pt_Y","ESD_MotherPi0_Pt_Y",150,0.03,15.,150,-1.5,1.5);
SetLogBinningXTH2(fHistoMotherPi0PtY[iCut]);
fHeaderNameList = new TList*[fnCuts];
fHistoMCHeaders = new TH1I*[fnCuts];
fHistoMCAllGammaPt = new TH1F*[fnCuts];
+ fHistoMCAllGammaEMCALAccPt = new TH1F*[fnCuts];
fHistoMCDecayGammaPi0Pt = new TH1F*[fnCuts];
fHistoMCDecayGammaRhoPt = new TH1F*[fnCuts];
fHistoMCDecayGammaEtaPt = new TH1F*[fnCuts];
}
if (fDoClusterQA > 0){
fHistoTrueClusUnConvGammaPt = new TH1F*[fnCuts];
+ fHistoTrueClusUnConvGammaMCPt = new TH1F*[fnCuts];
fHistoTrueClusElectronPt = new TH1F*[fnCuts];
fHistoTrueClusConvGammaPt = new TH1F*[fnCuts];
+ fHistoTrueClusConvGammaMCPt = new TH1F*[fnCuts];
fHistoTrueClusConvGammaFullyPt = new TH1F*[fnCuts];
fHistoTrueClusMergedGammaPt = new TH1F*[fnCuts];
fHistoTrueClusMergedPartConvGammaPt = new TH1F*[fnCuts];
fHistoMCSecEtaSource = new TH1F*[fnCuts];
fHistoTrueMotherCaloPhotonInvMassPt = new TH2F*[fnCuts];
fHistoTrueMotherCaloConvertedPhotonInvMassPt= new TH2F*[fnCuts];
+ fHistoTruePi0CaloConvertedPhotonInvMassPt = new TH2F*[fnCuts];
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt = new TH2F*[fnCuts];
+ fHistoTrueEtaCaloConvertedPhotonInvMassPt = new TH2F*[fnCuts];
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt = new TH2F*[fnCuts];
fHistoTrueMotherCaloElectronInvMassPt = new TH2F*[fnCuts];
fHistoTrueMotherCaloMergedClusterInvMassPt = new TH2F*[fnCuts];
fHistoTrueMotherCaloMergedClusterPartConvInvMassPt = new TH2F*[fnCuts];
fMCList[iCut]->Add(fHistoMCHeaders[iCut]);
fHistoMCAllGammaPt[iCut] = new TH1F("MC_AllGamma_Pt","MC_AllGamma_Pt",250,0,25);
fMCList[iCut]->Add(fHistoMCAllGammaPt[iCut]);
+ fHistoMCAllGammaEMCALAccPt[iCut] = new TH1F("MC_AllGammaEMCALAcc_Pt","MC_AllGamma_Pt",250,0,25);
+ fMCList[iCut]->Add(fHistoMCAllGammaEMCALAccPt[iCut]);
fHistoMCDecayGammaPi0Pt[iCut] = new TH1F("MC_DecayGammaPi0_Pt","MC_DecayGammaPi0_Pt",250,0,25);
fMCList[iCut]->Add(fHistoMCDecayGammaPi0Pt[iCut]);
fHistoMCDecayGammaRhoPt[iCut] = new TH1F("MC_DecayGammaRho_Pt","MC_DecayGammaRho_Pt",250,0,25);
if (fDoClusterQA > 0){
fHistoTrueClusUnConvGammaPt[iCut] = new TH1F("TrueClusUnConvGamma_Pt","TrueClusUnConvGamma_Pt",250,0,25);
fTagOutputList[iCut]->Add(fHistoTrueClusUnConvGammaPt[iCut]);
+ fHistoTrueClusUnConvGammaMCPt[iCut] = new TH1F("TrueClusUnConvGamma_MCPt","TrueClusUnConvGamma_MCPt",250,0,25);
+ fTagOutputList[iCut]->Add(fHistoTrueClusUnConvGammaMCPt[iCut]);
fHistoTrueClusElectronPt[iCut] = new TH1F("TrueClusElectron_Pt","TrueElectronGamma_Pt",250,0,25);
fTagOutputList[iCut]->Add(fHistoTrueClusElectronPt[iCut]);
-
fHistoTrueClusConvGammaPt[iCut] = new TH1F("TrueClusConvGamma_Pt","TrueClusConvGamma_Pt",250,0,25);
fTagOutputList[iCut]->Add(fHistoTrueClusConvGammaPt[iCut]);
+ fHistoTrueClusConvGammaMCPt[iCut] = new TH1F("TrueClusConvGamma_MCPt","TrueClusConvGamma_MCPt",250,0,25);
+ fTagOutputList[iCut]->Add(fHistoTrueClusConvGammaMCPt[iCut]);
fHistoTrueClusConvGammaFullyPt[iCut] = new TH1F("TrueClusConvGammaFullyContained_Pt","TrueClusConvGammaFullyContained_Pt",250,0,25);
fTagOutputList[iCut]->Add(fHistoTrueClusConvGammaFullyPt[iCut]);
fHistoTrueClusMergedGammaPt[iCut] = new TH1F("TrueClusMergedGamma_Pt","TrueClusMergedGamma_Pt",250,0,25);
fTrueList[iCut]->Add(fHistoTrueMotherCaloPhotonInvMassPt[iCut]);
fHistoTrueMotherCaloConvertedPhotonInvMassPt[iCut] = new TH2F("ESD_TrueMotherCaloConvertedPhoton_InvMass_Pt","ESD_TrueMotherCaloConvertedPhoton_InvMass_Pt",800,0,0.8,250,0,25);
fTrueList[iCut]->Add(fHistoTrueMotherCaloConvertedPhotonInvMassPt[iCut]);
+
+ fHistoTruePi0CaloConvertedPhotonInvMassPt[iCut] = new TH2F("ESD_TruePi0CaloConvertedPhoton_InvMass_Pt","ESD_TruePi0CaloConvertedPhoton_InvMass_Pt",800,0,0.8,250,0,25);
+ fTrueList[iCut]->Add(fHistoTruePi0CaloConvertedPhotonInvMassPt[iCut]);
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt[iCut] = new TH2F("ESD_TruePi0CaloConvertedPhotonMatched_InvMass_Pt","ESD_TruePi0CaloConvertedPhotonMatched_InvMass_Pt",800,0,0.8,250,0,25);
+ fTrueList[iCut]->Add(fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt[iCut]);
+
+ fHistoTrueEtaCaloConvertedPhotonInvMassPt[iCut] = new TH2F("ESD_TrueEtaCaloConvertedPhoton_InvMass_Pt","ESD_TrueEtaCaloConvertedPhoton_InvMass_Pt",800,0,0.8,250,0,25);
+ fTrueList[iCut]->Add(fHistoTrueEtaCaloConvertedPhotonInvMassPt[iCut]);
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt[iCut] = new TH2F("ESD_TrueEtaCaloConvertedPhotonMatched_InvMass_Pt","ESD_TrueEtaCaloConvertedPhotonMatched_InvMass_Pt",800,0,0.8,250,0,25);
+ fTrueList[iCut]->Add(fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt[iCut]);
+
fHistoTrueMotherCaloElectronInvMassPt[iCut] = new TH2F("ESD_TrueMotherCaloElectron_InvMass_Pt","ESD_TrueMotherCaloElectron_InvMass_Pt",800,0,0.8,250,0,25);
fTrueList[iCut]->Add(fHistoTrueMotherCaloElectronInvMassPt[iCut]);
fHistoTrueMotherCaloMergedClusterInvMassPt[iCut] = new TH2F("ESD_TrueMotherCaloMergedCluster_InvMass_Pt","ESD_TrueMotherCaloMergedCluster_InvMass_Pt",800,0,0.8,250,0,25);
// Loop over EMCal clusters
for(Int_t i = 0; i < nclus; i++){
- AliVCluster* clus = fInputEvent->GetCaloCluster(i);
+ AliVCluster* clus = NULL;
+ clus = fInputEvent->GetCaloCluster(i);
if (!clus) continue;
if(!((AliCaloPhotonCuts*)fClusterCutArray->At(fiCut))->ClusterIsSelected(clus,fInputEvent,fIsMC)) continue;
// TLorentzvector with cluster
if (TruePhotonCandidate->IsLargestComponentPhoton() || TruePhotonCandidate->IsLargestComponentElectron() )fHistoTrueClusGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
else fHistoTrueClusEMNonLeadingPt[fiCut]->Fill(TruePhotonCandidate->Pt());
if (fDoClusterQA > 0){
- if (TruePhotonCandidate->IsLargestComponentPhoton())
+ if (TruePhotonCandidate->IsLargestComponentPhoton()){
fHistoTrueClusUnConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ fHistoTrueClusUnConvGammaMCPt[fiCut]->Fill(Photon->Pt());
+ }
if (TruePhotonCandidate->IsLargestComponentElectron())
fHistoTrueClusElectronPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion())
+ if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion()){
fHistoTrueClusConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ fHistoTrueClusConvGammaMCPt[fiCut]->Fill(((TParticle*)fMCStack->Particle(Photon->GetMother(0)))->Pt());
+ }
if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion() && TruePhotonCandidate->IsConversionFullyContained())
fHistoTrueClusConvGammaFullyPt[fiCut]->Fill(TruePhotonCandidate->Pt());
if (TruePhotonCandidate->IsMerged() || TruePhotonCandidate->IsMergedPartConv() || TruePhotonCandidate->IsDalitzMerged())
if (TruePhotonCandidate->IsLargestComponentPhoton() || TruePhotonCandidate->IsLargestComponentElectron() )fHistoTrueClusGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
else fHistoTrueClusEMNonLeadingPt[fiCut]->Fill(TruePhotonCandidate->Pt());
if (fDoClusterQA > 0){
- if (TruePhotonCandidate->IsLargestComponentPhoton())
+ if (TruePhotonCandidate->IsLargestComponentPhoton()) {
fHistoTrueClusUnConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ fHistoTrueClusUnConvGammaMCPt[fiCut]->Fill(Photon->Pt());
+ }
if (TruePhotonCandidate->IsLargestComponentElectron())
fHistoTrueClusElectronPt[fiCut]->Fill(TruePhotonCandidate->Pt());
- if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion())
+ if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion()) {
fHistoTrueClusConvGammaPt[fiCut]->Fill(TruePhotonCandidate->Pt());
+ AliAODMCParticle *Mother = (AliAODMCParticle*) AODMCTrackArray->At(Photon->GetMother());
+ fHistoTrueClusConvGammaMCPt[fiCut]->Fill(Mother->Pt());
+ }
if (TruePhotonCandidate->IsLargestComponentElectron() && TruePhotonCandidate->IsConversion() && TruePhotonCandidate->IsConversionFullyContained())
fHistoTrueClusConvGammaFullyPt[fiCut]->Fill(TruePhotonCandidate->Pt());
if (TruePhotonCandidate->IsMerged() || TruePhotonCandidate->IsMergedPartConv() || TruePhotonCandidate->IsDalitzMerged())
if(!((AliConversionPhotonCuts*)fCutArray->At(fiCut))->InPlaneOutOfPlaneCut(particle->Phi(),fEventPlaneAngle,kFALSE)) continue;
if(((AliConversionPhotonCuts*)fCutArray->At(fiCut))->PhotonIsSelectedMC(particle,fMCStack,kFALSE)){
fHistoMCAllGammaPt[fiCut]->Fill(particle->Pt()); // All MC Gamma
+ if (abs(particle->Eta()) < 0.66 ){
+ if (particle->Phi() > 1.39626 && particle->Phi() < 3.125) fHistoMCAllGammaEMCALAccPt[fiCut]->Fill(particle->Pt());
+ }
+
if(particle->GetMother(0) >-1){ // Meson Decay Gamma
switch(fMCStack->Particle(particle->GetMother(0))->GetPdgCode()){
case 111: // Pi0
if ( (fInvMass > 0.08 && fInvMass < 0.2) || (fInvMass > 0.45 && fInvMass < 0.6)) fTreeMesonsInvMassPtDcazMinDcazMaxFlag[fiCut]->Fill();
}
}
+ if (fDoMesonQA == 1){
+ fHistoMotherInvMassECalib[fiCut]->Fill(pi0cand->M(),gamma1->E());
+ if(pi0cand->GetAlpha()<0.1)
+ fHistoMotherInvMassECalibalpha[fiCut]->Fill(pi0cand->M(),gamma1->E());
+ }
+
}
delete pi0cand;
pi0cand=0x0;
fHistoTrueMotherCaloPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
if (TrueGammaCandidate1->IsLargestComponentElectron())
fHistoTrueMotherCaloElectronInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
- if (TrueGammaCandidate1->IsLargestComponentElectron() && TrueGammaCandidate1->IsConversion())
+ if (TrueGammaCandidate1->IsLargestComponentElectron() && TrueGammaCandidate1->IsConversion()){
fHistoTrueMotherCaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if (isTruePi0)fHistoTruePi0CaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if (isTrueEta)fHistoTrueEtaCaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if ((TrueGammaCandidate0->GetMCLabelPositive() == gamma1MCLabel || TrueGammaCandidate0->GetMCLabelNegative() == gamma1MCLabel) && isTruePi0)
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if ((TrueGammaCandidate0->GetMCLabelPositive() == gamma1MCLabel || TrueGammaCandidate0->GetMCLabelNegative() == gamma1MCLabel) && isTrueEta)
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ }
if (TrueGammaCandidate1->IsMerged() || TrueGammaCandidate1->IsMergedPartConv() || TrueGammaCandidate1->IsDalitzMerged() )
fHistoTrueMotherCaloMergedClusterInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
if (TrueGammaCandidate1->IsMergedPartConv())
fHistoTrueMotherCaloPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
if (TrueGammaCandidate1->IsLargestComponentElectron())
fHistoTrueMotherCaloElectronInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
- if (TrueGammaCandidate1->IsLargestComponentElectron() && TrueGammaCandidate1->IsConversion())
+ if (TrueGammaCandidate1->IsLargestComponentElectron() && TrueGammaCandidate1->IsConversion()){
fHistoTrueMotherCaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if (isTruePi0)fHistoTruePi0CaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if (isTrueEta)fHistoTrueEtaCaloConvertedPhotonInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if ((TrueGammaCandidate0->GetMCLabelPositive() == gamma1MCLabel || TrueGammaCandidate0->GetMCLabelNegative() == gamma1MCLabel) && isTruePi0)
+ fHistoTruePi0CaloConvertedPhotonMatchedInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ if ((TrueGammaCandidate0->GetMCLabelPositive() == gamma1MCLabel || TrueGammaCandidate0->GetMCLabelNegative() == gamma1MCLabel) && isTrueEta)
+ fHistoTrueEtaCaloConvertedPhotonMatchedInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
+ }
if (TrueGammaCandidate1->IsMerged() || TrueGammaCandidate1->IsMergedPartConv() || TrueGammaCandidate1->IsDalitzMerged() )
fHistoTrueMotherCaloMergedClusterInvMassPt[fiCut]->Fill(Pi0Candidate->M(),Pi0Candidate->Pt());
if (TrueGammaCandidate1->IsMergedPartConv())