]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
updated for backgrond study
authorssakai <ssakai@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Nov 2013 22:44:31 +0000 (22:44 +0000)
committerssakai <ssakai@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Nov 2013 22:44:31 +0000 (22:44 +0000)
PWGHF/hfe/AliAnalysisTaskEMCalHFEpA.cxx
PWGHF/hfe/AliAnalysisTaskEMCalHFEpA.h
PWGHF/hfe/macros/configs/pPb/ConfigEMCalHFEpA.C

index f71b8a24ae2a91a3b69eb9d2d97f3b01416706af..930246502c977add65505e8fbaf85a286eeb4ced 100644 (file)
@@ -18,7 +18,7 @@
        //      Task for Heavy-flavour electron analysis in pPb collisions    //
        //      (+ Electron-Hadron Jetlike Azimuthal Correlation)             //
        //                                                                                                                                        //
-       //              version: October 14th, 2013.                                                              //
+       //              version: November 11th, 2013.                                                             //
        //                                                                    //
        //          Authors                                                                               //
        //              Elienos Pereira de Oliveira Filho (epereira@cern.ch)          //
@@ -180,6 +180,7 @@ AliAnalysisTaskEMCalHFEpA::AliAnalysisTaskEMCalHFEpA(const char *name)
 ,fNTracks(0)
 ,fNClusters(0)
 ,fTPCNcls_EoverP(0)
+,fTPCNcls_pid(0)
 ,fEta(0)
 ,fPhi(0)
 ,fR(0)
@@ -412,6 +413,7 @@ AliAnalysisTaskEMCalHFEpA::AliAnalysisTaskEMCalHFEpA()
 ,fNTracks(0)
 ,fNClusters(0)
 ,fTPCNcls_EoverP(0)
+,fTPCNcls_pid(0)
 ,fEta(0)
 ,fPhi(0)
 ,fR(0)
@@ -955,6 +957,7 @@ void AliAnalysisTaskEMCalHFEpA::UserCreateOutputObjects()
        fTPCnsigma_eta = new TH2F("fTPCnsigma_eta",";Pseudorapidity #eta; TPC signal - <TPC signal>_{elec} (#sigma)",200,-0.9,0.9,200,-15,15);
        fTPCnsigma_phi = new TH2F("fTPCnsigma_phi",";Azimuthal Angle #phi; TPC signal - <TPC signal>_{elec} (#sigma)",200,0,2*TMath::Pi(),200,-15,15);
        
+       fTPCNcls_pid= new TH2F("fTPCNcls_pid","fTPCNcls_pid;NCls;NCls for PID",159,0,159,159,0,159);    
        
        fNcells_pt=new TH2F("fNcells_pt","fNcells_pt",1000, 0,20,100,0,30);
        fEoverP_pt_pions= new TH2F("fEoverP_pt_pions","fEoverP_pt_pions",1000,0,30,500,0,2);
@@ -978,6 +981,9 @@ void AliAnalysisTaskEMCalHFEpA::UserCreateOutputObjects()
        fOutputList->Add(fEoverP_pt_pions2);
        fOutputList->Add(fEoverP_pt_hadrons);
        
+       fOutputList->Add(fTPCNcls_pid);
+
+       
                //__________________________________________________________________
                //Efficiency studies
        if(fIsMC)
@@ -1480,6 +1486,11 @@ void AliAnalysisTaskEMCalHFEpA::UserExec(Option_t *)
                
                
                Float_t TPCNcls = track->GetTPCNcls();
+               //TPC Ncls for pid
+               Float_t TPCNcls_pid = track->GetTPCsignalN();
+               fTPCNcls_pid->Fill(TPCNcls, TPCNcls_pid);
+               
+               
                Float_t pos[3]={0,0,0};
                
                Double_t fEMCflag = kFALSE;
@@ -2200,9 +2211,16 @@ void AliAnalysisTaskEMCalHFEpA::UserExec(Option_t *)
                                                                
                                                                
                                                                if(fMCparticle->Eta()>=fEtaCutMin && fMCparticle->Eta()<=fEtaCutMax ){
-                                                                               //check
-                                                                       if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCparticle->Pt()); //numerator for the total efficiency
-                                                                       
+                                                                               
+                                                                       if(!fUseShowerShapeCut){
+                                                                               if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCparticle->Pt()); //numerator for the total efficiency AOD
+                                                                       }
+                                                                       //November 11 for efficiency of triggered data
+                                                                       if(fUseShowerShapeCut){
+                                                                               if(M02 >= fM02CutMin && M02<=fM02CutMax && M20>=fM20CutMin && M20<=fM20CutMax){
+                                                                                       if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCparticle->Pt()); //numerator for the total efficiency AOD
+                                                                               }
+                                                                       }
                                                                        
                                                                        Bool_t MotherFound = FindMother(track->GetLabel());
                                                                        if(MotherFound){
@@ -2247,7 +2265,20 @@ void AliAnalysisTaskEMCalHFEpA::UserExec(Option_t *)
                                                                if(MotherFound)
                                                                {
                                                                        if(fMCtrack->Eta()>=fEtaCutMin && fMCtrack->Eta()<=fEtaCutMax){
-                                                                               if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCtrack->Pt()); //numerator for the total efficiency
+                                                                               
+                                                                               
+                                                                               if(!fUseShowerShapeCut){
+                                                                                       if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCtrack->Pt()); //numerator for the total efficiency ESD
+                                                                               }
+                                                                               //November 11 for efficiency of triggered data
+                                                                               if(fUseShowerShapeCut){
+                                                                                       if(M02 >= fM02CutMin && M02<=fM02CutMax && M20>=fM20CutMin && M20<=fM20CutMax){
+                                                                                               if(fIsHFE1) fPtMCelectronAfterAll->Fill(fMCtrack->Pt()); //numerator for the total efficiency ESD
+                                                                                       }
+                                                                               }
+                                                                               
+                                                                               
+                                                                               
                                                                        }
                                                                }
                                                                
index e59b079f191713d533fa6db9252a6b6e4172b478..1a240c2856df7f61d1ec862aa5382124bea43a8b 100644 (file)
@@ -213,6 +213,7 @@ private:
        TH1F                            **fNTracks;
        TH1F                            **fNClusters;
        TH2F                            **fTPCNcls_EoverP;
+       TH2F                            *fTPCNcls_pid;
        
        TH1F                            **fEta;
        TH1F                            **fPhi;
index 0f1f4c0ad88b847a70eedbb212384b8deeb97e13..83354943530c2bddb2650ada42b7e6aad0ae0f37 100644 (file)
@@ -34,7 +34,7 @@ Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
        
        if(configIndex==7) hfecuts->SetMinNClustersTPCPID(70); 
        else if (configIndex==8) hfecuts->SetMinNClustersTPCPID(90);
-       else if (configIndex==9) hfecuts->SetMinNClustersTPCPID(60)
+       else if (configIndex==9) hfecuts->SetMinNClustersTPCPID(60);
        else if (configIndex==10) hfecuts->SetMinNClustersTPCPID(65);
        else if (configIndex==11) hfecuts->SetMinNClustersTPCPID(100);
        else if (configIndex==12) hfecuts->SetMinNClustersTPCPID(95);
@@ -43,7 +43,7 @@ Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
        hfecuts->SetMinRatioTPCclusters(0.6);                                                               //Number of clusters (Found/Findable)
        
        //ITS
-       if(configIndex==13) hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth);                            //Require at least one cluster on SPD
+       if(configIndex==13) hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth);                    //Require at least one cluster on SPD
        else hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny);                                                    //Require at least one cluster on SPD
        //hfecuts->SetCutITSdrift(AliHFEextraCuts::kAny);                                           //Require at least one cluster on SDD
        hfecuts->SetCheckITSLayerStatus(kFALSE); 
@@ -77,7 +77,7 @@ Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
        task->SetAODanalysis(isAOD);
        task->SetEventMixing(kTRUE);
        
-       //to separate trigger threshould
+       //to separate trigger threshold
        if(EMCalThreshould==0 && triggerIndex==2) task->SetEMCalTriggerEG1();
        if(EMCalThreshould==1 && triggerIndex==2) task->SetEMCalTriggerEG2();
        
@@ -193,8 +193,201 @@ Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
        else if (configIndex==74) params[0] = -1.75;
        else params[0] = -1;
        
-       pid->ConfigureTPCdefaultCut(cutmodel,params,3.0); 
+       if(configIndex==75)Double_t max=1.5;
+       else if(configIndex==76)Double_t max=2.0;
+       else if(configIndex==77)Double_t max=2.5;
+       else if(configIndex==78)Double_t max=3.5;
+       else if(configIndex==79)Double_t max=4.0;
+       else Double_t max=3.0;
+       
+       pid->ConfigureTPCdefaultCut(cutmodel,params,max); 
 //_______________________________________________________
+       
+///_______________________________________________________________________________________________________________
+/// New configurations for random cuts -- November 11th
+       
+       if (configIndex==80){
+               hfecuts->SetMinNClustersTPC(86);
+               hfecuts->SetMinNClustersTPCPID(76);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.057);
+               task->SetNonHFEangleCut(0.069);
+               task->SetAdditionalCuts(0.152, 91);
+               task->SetdPhidEtaCut(0.019, 0.044);
+               task->SetEoverPCut(0.850, 1.249);
+               Double_t params[0]=-0.19;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==81){
+               hfecuts->SetMinNClustersTPC(95);
+               hfecuts->SetMinNClustersTPCPID(99);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.018);
+               task->SetNonHFEangleCut(0.135);
+               task->SetAdditionalCuts(0.351, 61);
+               task->SetdPhidEtaCut(0.012, 0.044);
+               task->SetEoverPCut(0.830, 1.271);
+               Double_t params[0]=-1.16;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==82){
+               hfecuts->SetMinNClustersTPC(117);
+               hfecuts->SetMinNClustersTPCPID(69);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.015);
+               task->SetNonHFEangleCut(0.062);
+               task->SetAdditionalCuts(0.842, 91);
+               task->SetdPhidEtaCut(0.018, 0.033);
+               task->SetEoverPCut(0.913, 1.225);
+               Double_t params[0]=-1.14;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==83){
+               hfecuts->SetMinNClustersTPC(98);
+               hfecuts->SetMinNClustersTPCPID(93);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.051);
+               task->SetNonHFEangleCut(0.051);
+               task->SetAdditionalCuts(0.415, 83);
+               task->SetdPhidEtaCut(0.047, 0.016);
+               task->SetEoverPCut(0.939, 1.250);
+               Double_t params[0]=-0.98;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==84){
+               hfecuts->SetMinNClustersTPC(99);
+               hfecuts->SetMinNClustersTPCPID(99);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.020);
+               task->SetNonHFEangleCut(0.145);
+               task->SetAdditionalCuts(0.654, 99);
+               task->SetdPhidEtaCut(0.025, 0.014);
+               task->SetEoverPCut(0.721, 1.256);
+               Double_t params[0]=-1.38;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==85){
+               hfecuts->SetMinNClustersTPC(85);
+               hfecuts->SetMinNClustersTPCPID(91);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.159);
+               task->SetNonHFEangleCut(0.144);
+               task->SetAdditionalCuts(0.897, 78);
+               task->SetdPhidEtaCut(0.046, 0.043);
+               task->SetEoverPCut(0.764, 1.275);
+               Double_t params[0]=-1.15;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==86){
+               hfecuts->SetMinNClustersTPC(104);
+               hfecuts->SetMinNClustersTPCPID(75);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.045);
+               task->SetNonHFEangleCut(0.112);
+               task->SetAdditionalCuts(0.036, 93);
+               task->SetdPhidEtaCut(0.019, 0.013);
+               task->SetEoverPCut(0.930, 1.222);
+               Double_t params[0]=-1.29;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==87){
+               hfecuts->SetMinNClustersTPC(108);
+               hfecuts->SetMinNClustersTPCPID(93);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.109);
+               task->SetNonHFEangleCut(0.140);
+               task->SetAdditionalCuts(0.814, 89);
+               task->SetdPhidEtaCut(0.041, 0.022);
+               task->SetEoverPCut(0.737, 1.210);
+               Double_t params[0]=-0.76;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==88){
+               hfecuts->SetMinNClustersTPC(80);
+               hfecuts->SetMinNClustersTPCPID(82);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.027);
+               task->SetNonHFEangleCut(0.102);
+               task->SetAdditionalCuts(0.092, 97);
+               task->SetdPhidEtaCut(0.014, 0.031);
+               task->SetEoverPCut(0.807, 1.231);
+               Double_t params[0]=-1.04;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==89){
+               hfecuts->SetMinNClustersTPC(100);
+               hfecuts->SetMinNClustersTPCPID(66);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.073);
+               task->SetNonHFEangleCut(0.082);
+               task->SetAdditionalCuts(0.339, 76);
+               task->SetdPhidEtaCut(0.040, 0.011);
+               task->SetEoverPCut(0.892, 1.246);
+               Double_t params[0]=-0.20;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==90){
+               hfecuts->SetMinNClustersTPC(106);
+               hfecuts->SetMinNClustersTPCPID(90);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.168);
+               task->SetNonHFEangleCut(0.098);
+               task->SetAdditionalCuts(0.630, 91);
+               task->SetdPhidEtaCut(0.034, 0.026);
+               task->SetEoverPCut(0.765, 1.297);
+               Double_t params[0]=-0.25;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==91){
+               hfecuts->SetMinNClustersTPC(84);
+               hfecuts->SetMinNClustersTPCPID(80);
+               hfecuts->SetMinNClustersITS(2);
+               task->SetNonHFEmassCut(0.052);
+               task->SetNonHFEangleCut(0.098);
+               task->SetAdditionalCuts(0.594, 66);
+               task->SetdPhidEtaCut(0.013, 0.043);
+               task->SetEoverPCut(0.884, 1.291);
+               Double_t params[0]=-0.12;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==92){
+               hfecuts->SetMinNClustersTPC(112);
+               hfecuts->SetMinNClustersTPCPID(80);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.061);
+               task->SetNonHFEangleCut(0.069);
+               task->SetAdditionalCuts(0.803, 91);
+               task->SetdPhidEtaCut(0.043, 0.031);
+               task->SetEoverPCut(0.872, 1.253);
+               Double_t params[0]=-1.37;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==93){
+               hfecuts->SetMinNClustersTPC(115);
+               hfecuts->SetMinNClustersTPCPID(82);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.042);
+               task->SetNonHFEangleCut(0.113);
+               task->SetAdditionalCuts(0.637, 86);
+               task->SetdPhidEtaCut(0.043, 0.032);
+               task->SetEoverPCut(0.732, 1.209);
+               Double_t params[0]=-0.60;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       if (configIndex==94){
+               hfecuts->SetMinNClustersTPC(81);
+               hfecuts->SetMinNClustersTPCPID(63);
+               hfecuts->SetMinNClustersITS(3);
+               task->SetNonHFEmassCut(0.080);
+               task->SetNonHFEangleCut(0.050);
+               task->SetAdditionalCuts(0.529, 87);
+               task->SetdPhidEtaCut(0.026, 0.047);
+               task->SetEoverPCut(0.823, 1.200);
+               Double_t params[0]=-1.14;
+               pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
+       }
+       
+       
 ///_______________________________________________________________________________________________________________
 
        printf("*************************************\n");