updates for mcosenti and fzhou
authormcosenti <mcosenti@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 28 Jun 2012 09:39:05 +0000 (09:39 +0000)
committermcosenti <mcosenti@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 28 Jun 2012 09:39:05 +0000 (09:39 +0000)
PWGGA/EMCALTasks/AliAnalysisTaskEMCALIsoPhoton.cxx
PWGGA/EMCALTasks/AliAnalysisTaskEMCALIsoPhoton.h
PWGGA/EMCALTasks/AliAnalysisTaskPi0V2.cxx

index e9656a4..e4271d6 100644 (file)
@@ -67,6 +67,9 @@ AliAnalysisTaskEMCALIsoPhoton::AliAnalysisTaskEMCALIsoPhoton() :
   fCeIsoVsEtPho(0),          
   fTrIsoVsEtPho(0),          
   fAllIsoVsEtPho(0),         
+  fCeIsoVsEtPi0(0),          
+  fTrIsoVsEtPi0(0),          
+  fAllIsoVsEtPi0(0),         
   fM02EtCeIso1TM(0),         
   fM02EtCeIso2TM(0),         
   fM02EtCeIso5TM(0),         
@@ -78,7 +81,10 @@ AliAnalysisTaskEMCALIsoPhoton::AliAnalysisTaskEMCALIsoPhoton() :
   fM02EtAllIso5TM(0),        
   fCeIsoVsEtPhoTM(0),        
   fTrIsoVsEtPhoTM(0),        
-  fAllIsoVsEtPhoTM(0)    
+  fAllIsoVsEtPhoTM(0),    
+  fCeIsoVsEtPi0TM(0),        
+  fTrIsoVsEtPi0TM(0),        
+  fAllIsoVsEtPi0TM(0)    
 {
   // Default constructor.
 }
@@ -117,6 +123,9 @@ AliAnalysisTaskEMCALIsoPhoton::AliAnalysisTaskEMCALIsoPhoton(const char *name) :
   fCeIsoVsEtPho(0),     
   fTrIsoVsEtPho(0),     
   fAllIsoVsEtPho(0),    
+  fCeIsoVsEtPi0(0),          
+  fTrIsoVsEtPi0(0),          
+  fAllIsoVsEtPi0(0),         
   fM02EtCeIso1TM(0),
   fM02EtCeIso2TM(0),        
   fM02EtCeIso5TM(0),        
@@ -128,7 +137,10 @@ AliAnalysisTaskEMCALIsoPhoton::AliAnalysisTaskEMCALIsoPhoton(const char *name) :
   fM02EtAllIso5TM(0),       
   fCeIsoVsEtPhoTM(0),       
   fTrIsoVsEtPhoTM(0),       
-  fAllIsoVsEtPhoTM(0)       
+  fAllIsoVsEtPhoTM(0),       
+  fCeIsoVsEtPi0TM(0),        
+  fTrIsoVsEtPi0TM(0),        
+  fAllIsoVsEtPi0TM(0)    
 {
   // Constructor
 
@@ -223,6 +235,18 @@ void AliAnalysisTaskEMCALIsoPhoton::UserCreateOutputObjects()
   fAllIsoVsEtPho->Sumw2();
   fOutputList->Add(fAllIsoVsEtPho);
 
+  fCeIsoVsEtPi0 = new TH2F("fCeIsoVsEtPi0","ISO_{EMC} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{EMC}",1000,0,100,1000,-10,190);
+  fCeIsoVsEtPi0->Sumw2();
+  fOutputList->Add(fCeIsoVsEtPi0);
+
+  fTrIsoVsEtPi0 = new TH2F("fTrIsoVsEtPi0","ISO_{TRK} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{TRK}",1000,0,100,1000,-10,190);
+  fTrIsoVsEtPi0->Sumw2();
+  fOutputList->Add(fTrIsoVsEtPi0);
+
+  fAllIsoVsEtPi0 = new TH2F("fAllIsoVsEtPi0","ISO_{EMC+TRK} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{EMC+TRK}",1000,0,100,1000,-10,190);
+  fAllIsoVsEtPi0->Sumw2();
+  fOutputList->Add(fAllIsoVsEtPi0);
+
   fM02EtCeIso1TM = new TH2F("fM02EtCeIso1TM","M02 vs Et for all clusters (ISO_{EMC}<1GeV);E_{T} (GeV);M02",1000,0,100,400,0,4);
   fM02EtCeIso1TM->Sumw2();
   fOutputList->Add(fM02EtCeIso1TM);
@@ -271,6 +295,18 @@ void AliAnalysisTaskEMCALIsoPhoton::UserCreateOutputObjects()
   fAllIsoVsEtPhoTM->Sumw2();
   fOutputList->Add(fAllIsoVsEtPhoTM);
 
+  fCeIsoVsEtPi0TM = new TH2F("fCeIsoVsEtPi0TM","ISO_{EMC} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{EMC}",1000,0,100,1000,-10,190);
+  fCeIsoVsEtPi0TM->Sumw2();
+  fOutputList->Add(fCeIsoVsEtPi0TM);
+
+  fTrIsoVsEtPi0TM = new TH2F("fTrIsoVsEtPi0TM","ISO_{TRK} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{TRK}",1000,0,100,1000,-10,190);
+  fTrIsoVsEtPi0TM->Sumw2();
+  fOutputList->Add(fTrIsoVsEtPi0TM);
+
+  fAllIsoVsEtPi0TM = new TH2F("fAllIsoVsEtPi0TM","ISO_{EMC+TRK} vs. E_{T}^{clus} (#pi^{0} selection for BG);E_{T} (GeV);ISO_{EMC+TRK}",1000,0,100,1000,-10,190);
+  fAllIsoVsEtPi0TM->Sumw2();
+  fOutputList->Add(fAllIsoVsEtPi0TM);
+
   PostData(1, fOutputList);
 }
 
@@ -382,32 +418,50 @@ void AliAnalysisTaskEMCALIsoPhoton::FillClusHists()
     Float_t ceisoue =  cephiband/phibandArea*netConeArea;
     Float_t trisoue =  trphiband/phibandArea*netConeArea;
     Float_t allisoue =  allphiband/phibandArea*netConeArea;
-    fM02Et->Fill(Et, c->GetM02());
-    if(ceiso-cecore<1)
-      fM02EtCeIso1->Fill(Et, c->GetM02());
-    if(ceiso-cecore<2)
-      fM02EtCeIso2->Fill(Et, c->GetM02());
-    if(ceiso-cecore<5)
-      fM02EtCeIso5->Fill(Et, c->GetM02());
-    if(triso-trcore<1)
-      fM02EtTrIso1->Fill(Et, c->GetM02());
-    if(triso-trcore<2)
-      fM02EtTrIso2->Fill(Et, c->GetM02());
-    if(triso-trcore<5)
-      fM02EtTrIso5->Fill(Et, c->GetM02());
-    if(alliso-allcore<1)
-      fM02EtAllIso1->Fill(Et, c->GetM02());
-    if(alliso-allcore<2)
-      fM02EtAllIso2->Fill(Et, c->GetM02());
-    if(alliso-allcore<5)
-      fM02EtAllIso5->Fill(Et, c->GetM02());
-    if(c->GetM02()>0.1 && c->GetM02()<0.3){
-      fCeIsoVsEtPho->Fill(Et, ceiso - cecore - ceisoue);
-      fTrIsoVsEtPho->Fill(Et, triso - trcore - trisoue);
-      fAllIsoVsEtPho->Fill(Et, alliso - allcore - allisoue);
-      }
     Double_t dR = TMath::Sqrt(pow(c->GetTrackDx(),2)+pow(c->GetTrackDz(),2));
-    if(dR<0.014){
+    Double_t M02u;
+    if(Et<12)
+      M02u = 0.02486*Et*Et - 0.7289*Et + 6.266;
+    else
+      M02u = 14.32/Et - 0.09863;
+    if(M02u<0.65)
+      M02u = 0.65;
+    Double_t M02l = 12.88/Et - 0.3194;
+    if(M02l<0.4)
+      M02l = 0.4;
+    if(dR>0.028){
+      fM02Et->Fill(Et, c->GetM02());
+      if(ceiso-cecore<1)
+       fM02EtCeIso1->Fill(Et, c->GetM02());
+      if(ceiso-cecore<2)
+       fM02EtCeIso2->Fill(Et, c->GetM02());
+      if(ceiso-cecore<5)
+       fM02EtCeIso5->Fill(Et, c->GetM02());
+      if(triso-trcore<1)
+       fM02EtTrIso1->Fill(Et, c->GetM02());
+      if(triso-trcore<2)
+       fM02EtTrIso2->Fill(Et, c->GetM02());
+      if(triso-trcore<5)
+       fM02EtTrIso5->Fill(Et, c->GetM02());
+      if(alliso-allcore<1)
+       fM02EtAllIso1->Fill(Et, c->GetM02());
+      if(alliso-allcore<2)
+       fM02EtAllIso2->Fill(Et, c->GetM02());
+      if(alliso-allcore<5)
+       fM02EtAllIso5->Fill(Et, c->GetM02());
+      if(c->GetM02()>0.1 && c->GetM02()<0.3){
+       fCeIsoVsEtPho->Fill(Et, ceiso - cecore - ceisoue);
+       fTrIsoVsEtPho->Fill(Et, triso - trcore - trisoue);
+       fAllIsoVsEtPho->Fill(Et, alliso - allcore - allisoue);
+      }
+      if(c->GetM02()>M02l && c->GetM02()<M02u){
+       fCeIsoVsEtPi0->Fill(Et, ceiso - cecore - ceisoue);
+       fTrIsoVsEtPi0->Fill(Et, triso - trcore - trisoue);
+       fAllIsoVsEtPi0->Fill(Et, alliso - allcore - allisoue);
+      }
+    }
+    else
+      {
       fM02EtTM->Fill(Et, c->GetM02());
       if(ceiso-cecore<1)
        fM02EtCeIso1TM->Fill(Et, c->GetM02());
@@ -428,9 +482,14 @@ void AliAnalysisTaskEMCALIsoPhoton::FillClusHists()
       if(alliso-allcore<5)
        fM02EtAllIso5TM->Fill(Et, c->GetM02());
       if(c->GetM02()>0.1 && c->GetM02()<0.3){
-       fCeIsoVsEtPhoTM->Fill(Et, ceiso);
-       fTrIsoVsEtPhoTM->Fill(Et, triso);
-       fAllIsoVsEtPhoTM->Fill(Et, alliso);
+       fCeIsoVsEtPhoTM->Fill(Et, ceiso - cecore - ceisoue);
+       fTrIsoVsEtPhoTM->Fill(Et, triso - trcore - trisoue);
+       fAllIsoVsEtPhoTM->Fill(Et, alliso - allcore - allisoue);
+      }
+      if(c->GetM02()>M02l && c->GetM02()<M02u){
+       fCeIsoVsEtPi0TM->Fill(Et, ceiso - cecore - ceisoue);
+       fTrIsoVsEtPi0TM->Fill(Et, triso - trcore - trisoue);
+       fAllIsoVsEtPi0TM->Fill(Et, alliso - allcore - allisoue);
       }
     }
     if(c->E()>maxE)
index 8e13312..35714e0 100644 (file)
@@ -70,9 +70,12 @@ class AliAnalysisTaskEMCALIsoPhoton : public AliAnalysisTaskSE {
   TH2F        *fM02EtAllIso1;            //!M02 vs Et for clusters with isolation total Et<1GeV
   TH2F        *fM02EtAllIso2;            //!M02 vs Et for clusters with isolation total Et<2GeV
   TH2F        *fM02EtAllIso5;            //!M02 vs Et for clusters with isolation total Et<5GeV
-  TH2F        *fCeIsoVsEtPho;            //!Neutral isolation Et vs. cluster Et, 0.05<M02<0.30
-  TH2F        *fTrIsoVsEtPho;            //!Charged isolation Et vs. cluster Et, 0.05<M02<0.30
-  TH2F        *fAllIsoVsEtPho;           //!Total isolation Et vs. cluster Et, 0.05<M02<0.30
+  TH2F        *fCeIsoVsEtPho;            //!Neutral isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fTrIsoVsEtPho;            //!Charged isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fAllIsoVsEtPho;           //!Total isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fCeIsoVsEtPi0;            //!Neutral isolation Et vs. cluster Et, pi0 selection (BG)
+  TH2F        *fTrIsoVsEtPi0;            //!Charged isolation Et vs. cluster Et, pi0 selection (BG)
+  TH2F        *fAllIsoVsEtPi0;           //!Total isolation Et vs. cluster Et, pi0 selection (BG)
   //track matched stuff
   TH2F        *fM02EtCeIso1TM;           //!Track-matched M02 vs Et for clusters with isolation neutral Et<1GeV
   TH2F        *fM02EtCeIso2TM;           //!Track-matched M02 vs Et for clusters with isolation neutral Et<2GeV
@@ -83,9 +86,12 @@ class AliAnalysisTaskEMCALIsoPhoton : public AliAnalysisTaskSE {
   TH2F        *fM02EtAllIso1TM;          //!Track-matched M02 vs Et for clusters with isolation total Et<1GeV
   TH2F        *fM02EtAllIso2TM;          //!Track-matched M02 vs Et for clusters with isolation total Et<2GeV
   TH2F        *fM02EtAllIso5TM;          //!Track-matched M02 vs Et for clusters with isolation total Et<5GeV
-  TH2F        *fCeIsoVsEtPhoTM;          //!Track-matched Neutral isolation Et vs. cluster Et, 0.05<M02<0.30
-  TH2F        *fTrIsoVsEtPhoTM;          //!Track-matched Charged isolation Et vs. cluster Et, 0.05<M02<0.30
-  TH2F        *fAllIsoVsEtPhoTM;         //!Track-matched Total isolation Et vs. cluster Et, 0.05<M02<0.30
+  TH2F        *fCeIsoVsEtPhoTM;          //!Track-matched Neutral isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fTrIsoVsEtPhoTM;          //!Track-matched Charged isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fAllIsoVsEtPhoTM;         //!Track-matched Total isolation Et vs. cluster Et, 0.10<M02<0.30
+  TH2F        *fCeIsoVsEtPi0TM;          //!Track-matched Neutral isolation Et vs. cluster Et, pi0 selection (BG)
+  TH2F        *fTrIsoVsEtPi0TM;          //!Track-matched Charged isolation Et vs. cluster Et, pi0 selection (BG)
+  TH2F        *fAllIsoVsEtPi0TM;         //!Track-matched Total isolation Et vs. cluster Et, pi0 selection (BG)
    
   AliAnalysisTaskEMCALIsoPhoton(const AliAnalysisTaskEMCALIsoPhoton&); // not implemented
   AliAnalysisTaskEMCALIsoPhoton& operator=(const AliAnalysisTaskEMCALIsoPhoton&); // not implemented
index f897c22..b455cdf 100644 (file)
@@ -328,10 +328,10 @@ void AliAnalysisTaskPi0V2::FillPion(const TLorentzVector& p1, const TLorentzVect
   Double_t cos2phiV0C = TMath::Cos(2.*(dphiV0C));
   Double_t cos2phiTPC = TMath::Cos(2.*(dphiTPC));
 
-  dphiV0  = TVector2::Phi_0_2pi(dphiV0);  if(dphiV0 >TMath::Pi())  dphiV0 -= TMath::Pi();
-  dphiV0A = TVector2::Phi_0_2pi(dphiV0A); if(dphiV0A >TMath::Pi()) dphiV0A -= TMath::Pi();
-  dphiV0C = TVector2::Phi_0_2pi(dphiV0C); if(dphiV0C >TMath::Pi()) dphiV0C -= TMath::Pi();
-  dphiTPC = TVector2::Phi_0_2pi(dphiTPC); if(dphiTPC >TMath::Pi()) dphiTPC -= TMath::Pi();
+  dphiV0  = TVector2::Phi_0_2pi(dphiV0);  if(dphiV0  >TMath::Pi())  dphiV0 -= TMath::Pi();
+  dphiV0A = TVector2::Phi_0_2pi(dphiV0A); if(dphiV0A >TMath::Pi())  dphiV0A -= TMath::Pi();
+  dphiV0C = TVector2::Phi_0_2pi(dphiV0C); if(dphiV0C >TMath::Pi())  dphiV0C -= TMath::Pi();
+  dphiTPC = TVector2::Phi_0_2pi(dphiTPC); if(dphiTPC >TMath::Pi())  dphiTPC -= TMath::Pi();
 
   //cout<<"cos2V0: "<<cos2phiV0<<"  cos2V0A: "<<cos2phiV0A<<"  cos2V0C: "<<cos2phiV0C<<endl;
   //cout<<mass<<"  "<<pt<<"  "<<phi<<"  "<<endl;
@@ -509,11 +509,8 @@ void AliAnalysisTaskPi0V2::UserExec(Option_t *)
     }  
     const AliESDVertex* fvertex = fESD->GetPrimaryVertex();
 
-    if(!(fvertex->GetStatus())) return;
-    // if vertex is from spd vertexZ, require more stringent cut
-    if (fvertex->IsFromVertexerZ()) {
-        if (fvertex->GetDispersion()>0.02 ||  fvertex->GetZRes()>0.25 ) return; // bad vertex from VertexerZ
-    }
+    if(TMath::Abs(fvertex->GetZ())>10.)
+      return;
     Double_t vertex[3] = {fvertex->GetX(), fvertex->GetY(), fvertex->GetZ()};
 
     if(fESD->GetCentrality()) {
@@ -557,7 +554,7 @@ void AliAnalysisTaskPi0V2::UserExec(Option_t *)
       if(fEPV0r<-2. || fEPV0Ar<-2. || fEPV0Cr<-2.) return; 
     }
     if(!fcheckEP2sub){
-      if(fEPV0A<-2. || fEPV0C<-2. || fEPV0AR4<-2. || fEPV0AR7<-2. || fEPV0CR0<-2. || fEPV0CR3<-2.) return;
+      if(fEPV0A<-2. || fEPV0C<-2. || fEPV0AR4<-2. || fEPV0AR7<-2. || fEPV0CR0<-2. || fEPV0CR3<-2. || fEPTPC<-2.) return;
     }
     fEPV0   = TVector2::Phi_0_2pi(fEPV0);    if(fEPV0>TMath::Pi())   fEPV0  = fEPV0  - TMath::Pi();
     fEPV0r  = TVector2::Phi_0_2pi(fEPV0r);   if(fEPV0r>TMath::Pi())  fEPV0r = fEPV0r - TMath::Pi();