]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Adding correlation of the shared tpc clusters between the trigger particle and the...
authorxsanchez <xitzel.sanchez.castro@cern.ch>
Mon, 28 Jul 2014 10:15:24 +0000 (12:15 +0200)
committerxsanchez <xitzel.sanchez.castro@cern.ch>
Mon, 28 Jul 2014 10:15:24 +0000 (12:15 +0200)
PWGLF/STRANGENESS/Correlations/AliAnalysisTaskLambdaOverK0sJets.cxx
PWGLF/STRANGENESS/Correlations/AliAnalysisTaskLambdaOverK0sJets.h

index f84614ba284cfb903d2118ec580d1c29b5df5929..a7112463af4187d344b687cfbdb666bf755fc8ad 100644 (file)
@@ -95,15 +95,15 @@ fK0sMCPt(0), fK0sMCPtRap(0), fK0sMCPtRap2(0),  fK0sMCPtRapEmbeded(0), fK0sAssocP
 
   fHistArmenterosPodolanski(0), fHistArmPodBckg(0),
   
-  fK0sMass(0), fK0sMassEmbeded(0), fK0sMassPtEta(0), fK0sMassPtPhi(0), fK0sDaughtersPt(0),  fSharedClsTrigDaug(0), fK0sPosDaugSplCheckCovMat(0x0), fK0sNegDaugSplCheckCovMat(0x0), fK0sDCADaugToPrimVtx(0), fK0sSpatialRes(0), fK0sBckgDecLength(0), fK0sBckgDCADaugToPrimVtx(0), fK0sBckgEtaPhi(0), fK0sBckgPhiRadio(0), fK0sBckgDCANegDaugToPrimVtx(0), fK0sBckgDCAPosDaugToPrimVtx(0), fV0MassCascade(0),
+  fK0sMass(0), fK0sMassEmbeded(0), fK0sMassPtEta(0), fK0sMassPtPhi(0), fK0sDaughtersPt(0), fK0sDCADaugToPrimVtx(0), fK0sSpatialRes(0), fK0sBckgDecLength(0), fK0sBckgDCADaugToPrimVtx(0), fK0sBckgEtaPhi(0), fK0sBckgPhiRadio(0), fK0sBckgDCANegDaugToPrimVtx(0), fK0sBckgDCAPosDaugToPrimVtx(0), fV0MassCascade(0),
   
-  fLambdaMass(0), fLambdaMassEmbeded(0), fLambdaMass2(0), fLambdaMass2Embeded(0), fLambdaMassPtEta(0), fLambdaMassPtPhi(0), fLambdaDaughtersPt(0), fLambdaPosDaugSplCheckCovMat(0x0), fLambdaNegDaugSplCheckCovMat(0x0), fLambdaDCADaugToPrimVtx(0), fLambdaSpatialRes(0), fLambdaBckgDecLength(0), fLambdaBckgDCADaugToPrimVtx(0), fLambdaBckgEtaPhi(0), fLambdaBckgPhiRadio(0), fLambdaBckgDCANegDaugToPrimVtx(0), fLambdaBckgDCAPosDaugToPrimVtx(0), 
+  fLambdaMass(0), fLambdaMassEmbeded(0), fLambdaMass2(0), fLambdaMass2Embeded(0), fLambdaMassPtEta(0), fLambdaMassPtPhi(0), fLambdaDaughtersPt(0), fLambdaDCADaugToPrimVtx(0), fLambdaSpatialRes(0), fLambdaBckgDecLength(0), fLambdaBckgDCADaugToPrimVtx(0), fLambdaBckgEtaPhi(0), fLambdaBckgPhiRadio(0), fLambdaBckgDCANegDaugToPrimVtx(0), fLambdaBckgDCAPosDaugToPrimVtx(0), 
 
-  fAntiLambdaMass(0), fAntiLambdaMassEmbeded(0), fAntiLambdaMass2(0), fAntiLambdaMass2Embeded(0), fAntiLambdaMassPtEta(0), fAntiLambdaMassPtPhi(0), fAntiLambdaDaughtersPt(0), fAntiLambdaPosDaugSplCheckCovMat(0x0), fAntiLambdaNegDaugSplCheckCovMat(0x0), fAntiLambdaDCADaugToPrimVtx(0), fAntiLambdaSpatialRes(0), fAntiLambdaBckgDecLength(0), fAntiLambdaBckgDCADaugToPrimVtx(0), fAntiLambdaBckgEtaPhi(0), fAntiLambdaBckgPhiRadio(0), fAntiLambdaBckgDCANegDaugToPrimVtx(0), fAntiLambdaBckgDCAPosDaugToPrimVtx(0), 
+  fAntiLambdaMass(0), fAntiLambdaMassEmbeded(0), fAntiLambdaMass2(0), fAntiLambdaMass2Embeded(0), fAntiLambdaMassPtEta(0), fAntiLambdaMassPtPhi(0), fAntiLambdaDaughtersPt(0), fAntiLambdaDCADaugToPrimVtx(0), fAntiLambdaSpatialRes(0), fAntiLambdaBckgDecLength(0), fAntiLambdaBckgDCADaugToPrimVtx(0), fAntiLambdaBckgEtaPhi(0), fAntiLambdaBckgPhiRadio(0), fAntiLambdaBckgDCANegDaugToPrimVtx(0), fAntiLambdaBckgDCAPosDaugToPrimVtx(0), 
 
   fK0sPtPosDaug(0), fK0sPtNegDaug(0), fK0sBckgPtPosDaug(0), fK0sBckgPtNegDaug(0), fK0sPhiEtaPosDaug(0), fK0sPhiEtaNegDaug(0), fK0sBckgPhiEtaPosDaug(0), fK0sBckgPhiEtaNegDaug(0), fK0sDCAPosDaug(0), fK0sDCANegDaug(0), fK0sBckgDCAPosDaug(0), fK0sBckgDCANegDaug(0), fK0sDecayPos(0), fK0sBckgDecayPos(0), fK0sDecayVertex(0), fK0sBckgDecayVertex(0), fK0sCPA(0), fK0sBckgCPA(0), fK0sDCAV0Daug(0), fK0sBckgDCAV0Daug(0), fK0sNClustersTPC(0), fK0sBckgNClustersTPC(0), fK0sNClustersITSPos(0), fK0sNClustersITSNeg(0), fK0sBckgNClustersITSPos(0), fK0sBckgNClustersITSNeg(0),   
 
-  fLambdaPtPosDaug(0), fLambdaPtNegDaug(0), fLambdaBckgPtPosDaug(0), fLambdaBckgPtNegDaug(0), fLambdaPhiEtaPosDaug(0),fLambdaPhiEtaNegDaug(0), fLambdaBckgPhiEtaPosDaug(0),fLambdaBckgPhiEtaNegDaug(0), fLambdaDCAPosDaug(0),fLambdaDCANegDaug(0), fLambdaBckgDCAPosDaug(0), fLambdaBckgDCANegDaug(0), fLambdaDecayPos(0), fLambdaBckgDecayPos(0), fLambdaDecayVertex(0), fLambdaBckgDecayVertex(0), fLambdaCPA(0), fLambdaBckgCPA(0), fLambdaDCAV0Daug(0), fLambdaBckgDCAV0Daug(0), fLambdaNClustersTPC(0), fLambdaBckgNClustersTPC(0), fLambdaNClustersITSPos(0), fLambdaNClustersITSNeg(0), fLambdaBckgNClustersITSPos(0),  fLambdaBckgNClustersITSNeg(0),
+  fLambdaPtPosDaug(0), fLambdaPtNegDaug(0), fLambdaBckgPtPosDaug(0), fLambdaBckgPtNegDaug(0), fLambdaPhiEtaPosDaug(0),fLambdaPhiEtaNegDaug(0), fLambdaBckgPhiEtaPosDaug(0), fLambdaBckgPhiEtaNegDaug(0), fLambdaDCAPosDaug(0),fLambdaDCANegDaug(0), fLambdaBckgDCAPosDaug(0), fLambdaBckgDCANegDaug(0), fLambdaDecayPos(0), fLambdaBckgDecayPos(0), fLambdaDecayVertex(0), fLambdaBckgDecayVertex(0), fLambdaCPA(0), fLambdaBckgCPA(0), fLambdaDCAV0Daug(0), fLambdaBckgDCAV0Daug(0), fLambdaNClustersTPC(0), fLambdaBckgNClustersTPC(0), fLambdaNClustersITSPos(0), fLambdaNClustersITSNeg(0), fLambdaBckgNClustersITSPos(0),  fLambdaBckgNClustersITSNeg(0),
 
   fAntiLambdaPtPosDaug(0), fAntiLambdaPtNegDaug(0), fAntiLambdaBckgPtPosDaug(0), fAntiLambdaBckgPtNegDaug(0), fAntiLambdaPhiEtaPosDaug(0),fAntiLambdaPhiEtaNegDaug(0), fAntiLambdaBckgPhiEtaPosDaug(0),fAntiLambdaBckgPhiEtaNegDaug(0), fAntiLambdaDCAPosDaug(0),fAntiLambdaDCANegDaug(0), fAntiLambdaBckgDCAPosDaug(0), fAntiLambdaBckgDCANegDaug(0), fAntiLambdaDecayPos(0), fAntiLambdaBckgDecayPos(0), fAntiLambdaDecayVertex(0), fAntiLambdaBckgDecayVertex(0), fAntiLambdaCPA(0), fAntiLambdaBckgCPA(0), fAntiLambdaDCAV0Daug(0), fAntiLambdaBckgDCAV0Daug(0), fAntiLambdaNClustersTPC(0), fAntiLambdaBckgNClustersTPC(0), fAntiLambdaNClustersITSPos(0), fAntiLambdaNClustersITSNeg(0), fAntiLambdaBckgNClustersITSPos(0),  fAntiLambdaBckgNClustersITSNeg(0)
   
@@ -141,6 +141,8 @@ fK0sMCPt(0), fK0sMCPtRap(0), fK0sMCPtRap2(0),  fK0sMCPtRapEmbeded(0), fK0sAssocP
     fK0sAssocMassPtDaugNClsTPCEmbeded[i] = 0;
     // -- Mass vs rapidity vs pt vs centrlaity
     fK0sMassPtRap[i] = 0;
+    fK0sPosDaugSplCheckCovMat[i] = 0x0;
+    fK0sNegDaugSplCheckCovMat[i] = 0x0;
     fK0sPosDaugdPhiSdEtaS[i] = 0x0;   
     fK0sNegDaugdPhiSdEtaS[i] = 0x0;
 
@@ -167,6 +169,8 @@ fK0sMCPt(0), fK0sMCPtRap(0), fK0sMCPtRap2(0),  fK0sMCPtRapEmbeded(0), fK0sAssocP
     fLambdaAssocMassPtDaugNClsTPCEmbeded[i] = 0;
     // -- Mass vs rapidity vs pt vs centrlaity
     fLambdaMassPtRap[i] = 0;
+    fLambdaPosDaugSplCheckCovMat[i] = 0x0;
+    fLambdaNegDaugSplCheckCovMat[i] =0x0;
     fLambdaPosDaugdPhiSdEtaS[i] = 0x0;
     fLambdaNegDaugdPhiSdEtaS[i] = 0x0;
 
@@ -193,8 +197,10 @@ fK0sMCPt(0), fK0sMCPtRap(0), fK0sMCPtRap2(0),  fK0sMCPtRapEmbeded(0), fK0sAssocP
     fAntiLambdaAssocMassPtDaugNClsTPCEmbeded[i] = 0;
     // -- Mass vs rapidity vs pt vs centrlaity
     fAntiLambdaMassPtRap[i] = 0;
-    fAntiLambdaPosDaugdPhiSdEtaS[i] = 0x0; //! Positive daughter: delta(phi)* delta(eta)*    
-    fAntiLambdaNegDaugdPhiSdEtaS[i] = 0x0; //! Negative daughter: delta(phi)* delta(eta)* 
+    fAntiLambdaPosDaugSplCheckCovMat[i] = 0x0;
+    fAntiLambdaNegDaugSplCheckCovMat[i] = 0x0;
+    fAntiLambdaPosDaugdPhiSdEtaS[i] = 0x0;
+    fAntiLambdaNegDaugdPhiSdEtaS[i] = 0x0;
   }
 
   // Correlations in MC
@@ -910,27 +916,7 @@ void AliAnalysisTaskLambdaOverK0sJets::UserCreateOutputObjects()
   
   // ================== Correlations =================
 
-  // ----------------Splitting:
-  //    Shared TPC clusters status between trigger and daughter tracks
-  fSharedClsTrigDaug = new TH3F("fSharedClsTrigDaug","Splitting chech with TPC map;",100,0.,10.,100,0.,10.,6,0.,6.);
-  fOutput->Add(fSharedClsTrigDaug);
-  //-----   
-  Int_t binsSplit2[9] = {100,nbins,100,2,20,20,101,101,2};   
-  Double_t xminSplit2[9] = {pMin,0.398,pMin,-0.5,-0.1,-0.1,-0.005,-0.005,-0.5}; 
-  Double_t xmaxSplit2[9] = {pMax,0.598,pMax,1.5,0.1,0.1,1.005,1.005,1.5};    
-
-  for(Int_t j=0; j<kNCent; j++){
-    // Positive daughter:
-    fK0sPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fK0sPosDaugdPhiSdEtaS_%d",j), "K^{0}_{S} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit2,xminSplit2,xmaxSplit2);
-    fOutput->Add(fK0sPosDaugdPhiSdEtaS[j]);  
-    
-    // Negative daughter:
-    fK0sNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fK0sNegDaugdPhiSdEtaS_%d",j), "K^{0}_{S} Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit2,xminSplit2,xmaxSplit2);
-    fOutput->Add(fK0sNegDaugdPhiSdEtaS[j]);  
-  }
-
-  //-----
+  // ------------------------  Splitting:  
   Double_t binsDev[121];
   binsDev[0] = 0;
 
@@ -938,17 +924,34 @@ void AliAnalysisTaskLambdaOverK0sJets::UserCreateOutputObjects()
     for (Int_t j=1;j<=10;j++)
       binsDev[(k+7)*10+j] = j*TMath::Power(10,k);
      
-  Int_t binsSplit[7] = {100,100,3,120,9,301,4};   Double_t xminSplit[7] = {pMin,pMin,-1.5,0,-0.5,-0.001,-0.5}; Double_t xmaxSplit[7] = {pMax,pMax,1.5,10e+4,8.5,0.3,3.5};    
+  Int_t binsSplit[9] = {100,nbins,100,2,301,101,101,120,9};   Double_t xminSplit[9] = {pMin,0.398,pMin,-0.5,-0.001,-0.005,-0.005,0,-0.5}; Double_t xmaxSplit[9] = {pMax,0.598,pMax,1.5,0.3,1.005,1.005,10e+4,8.5};    
+
+  Int_t binsSplit2[10] = {100,nbins,100,2,20,20,101,101,100,2};   
+  Double_t xminSplit2[10] = {pMin,0.398,pMin,-0.5,-0.1,-0.1,-0.005,-0.005,-1.,-0.5}; 
+  Double_t xmaxSplit2[10] = {pMax,0.598,pMax,1.5,0.1,0.1,1.005,1.005,1.,1.5};    
 
-  // positive daughter
-  fK0sPosDaugSplCheckCovMat  = new THnSparseD("fK0sPosDaugSplCheckCovMat", "K^{0}_{S} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit);
-  fK0sPosDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fK0sPosDaugSplCheckCovMat);  
+  for(Int_t j=0; j<kNCent; j++){
+
+    // positive daughter
+    fK0sPosDaugSplCheckCovMat[j]   = new THnSparseD( Form("fK0sPosDaugSplCheckCovMat_%d",j), "K^{0}_{S} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",9,binsSplit,xminSplit,xmaxSplit);
+    fK0sPosDaugSplCheckCovMat[j]->SetBinEdges(7,binsDev);
+    fOutput->Add(fK0sPosDaugSplCheckCovMat[j]);  
+
+    // negative daughter
+    fK0sNegDaugSplCheckCovMat[j]   = new THnSparseD( Form("fK0sNegDaugSplCheckCovMat_%d",j), "K^{0}_{S} Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",7,binsSplit,xminSplit,xmaxSplit);
+    fK0sNegDaugSplCheckCovMat[j]->SetBinEdges(8,binsDev);
+    fOutput->Add(fK0sNegDaugSplCheckCovMat[j]); 
+
+    // Positive daughter:
+    fK0sPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fK0sPosDaugdPhiSdEtaS_%d",j), "K^{0}_{S} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; Correlation fraction of shared cls: Trigger - Daughter; same MC label;",10,binsSplit2,xminSplit2,xmaxSplit2);
+    fOutput->Add(fK0sPosDaugdPhiSdEtaS[j]);  
+    
+    // Negative daughter:
+    fK0sNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fK0sNegDaugdPhiSdEtaS_%d",j), "K^{0}_{S} Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; Correlation fraction of shared cls: Trigger - Daughter; same MC label;",10,binsSplit2,xminSplit2,xmaxSplit2);
+    fOutput->Add(fK0sNegDaugdPhiSdEtaS[j]);  
+
+  }
 
-  // negative daughter
-  fK0sNegDaugSplCheckCovMat  = new THnSparseD("fK0sNegDaugSplCheckCovMat", "K^{0}_{S} Neg. daughter;  #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit);
-  fK0sNegDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fK0sNegDaugSplCheckCovMat); 
 
   //    DCA to prim vertex
   fK0sDCADaugToPrimVtx  
@@ -1104,31 +1107,34 @@ void AliAnalysisTaskLambdaOverK0sJets::UserCreateOutputObjects()
   // ================== Correlations =================
 
   // ----------------Splitting:
+  xminSplit[1] = 1.065;  xmaxSplit[1] = 1.165;    
 
-  //-----   
-  Int_t binsSplit3[9] = {100,nbins,100,2,20,20,101,101,2};   
-  Double_t xminSplit3[9] = {pMin,1.065,pMin,-0.5,-0.1,-0.1,-0.005,-0.005,-0.5}; 
-  Double_t xmaxSplit3[9] = {pMax,1.165,pMax,1.5,0.1,0.1,1.005,1.005,1.5};    
+  Int_t binsSplit3[10] = {100,nbins,100,2,20,20,101,101,100,2};   
+  Double_t xminSplit3[10] = {pMin,1.065,pMin,-0.5,-0.1,-0.1,-0.005,-0.005,-1.,-0.5}; 
+  Double_t xmaxSplit3[10] = {pMax,1.165,pMax,1.5,0.1,0.1,1.005,1.005,1.,1.5};    
 
   for(Int_t j=0; j<kNCent; j++){
+
+    // positive daughter:
+    fLambdaPosDaugSplCheckCovMat[j]   = new THnSparseD( Form("fLambdaPosDaugSplCheckCovMat_%d",j), "#Lambda Pos. daughter;   #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",9,binsSplit,xminSplit,xmaxSplit);   
+    fLambdaPosDaugSplCheckCovMat[j]->SetBinEdges(7,binsDev);
+    fOutput->Add(fLambdaPosDaugSplCheckCovMat[j]);  
+
+    // negative daughter:
+    fLambdaNegDaugSplCheckCovMat[j]   = new THnSparseD( Form("fLambdaNegDaugSplCheckCovMat_%d",j), "#Lambda Neg. daughter;   #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",9,binsSplit,xminSplit,xmaxSplit);   
+    fLambdaNegDaugSplCheckCovMat[j]->SetBinEdges(7,binsDev);
+    fOutput->Add(fLambdaNegDaugSplCheckCovMat[j]); 
+
     // Positive daughter:
-    fLambdaPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fLambdaPosDaugdPhiSdEtaS_%d",j), "#Lambda Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit3,xminSplit3,xmaxSplit3);
+    fLambdaPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fLambdaPosDaugdPhiSdEtaS_%d",j), "#Lambda Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  Correlation fraction of shared cls: Trigger - Daughter; same MC label;",10,binsSplit3,xminSplit3,xmaxSplit3);
     fOutput->Add(fLambdaPosDaugdPhiSdEtaS[j]);  
     
     // Negative daughter:
-    fLambdaNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fLambdaNegDaugdPhiSdEtaS_%d",j), "#Lambda Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit3,xminSplit3,xmaxSplit3);
+    fLambdaNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fLambdaNegDaugdPhiSdEtaS_%d",j), "#Lambda Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  Correlation fraction of shared cls: Trigger - Daughter;  same MC label;",10,binsSplit3,xminSplit3,xmaxSplit3);
     fOutput->Add(fLambdaNegDaugdPhiSdEtaS[j]);  
   }
 
-  // positive daughter
-  fLambdaPosDaugSplCheckCovMat  = new THnSparseD("fLambdaPosDaugSplCheckCovMat", "#Lambda Pos. daughter;  #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit);   
-  fLambdaPosDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fLambdaPosDaugSplCheckCovMat);  
 
-  // negative daughter
-  fLambdaNegDaugSplCheckCovMat  = new THnSparseD("fLambdaNegDaugSplCheckCovMat", "#Lambda Neg. daughter;  #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit);   
-  fLambdaNegDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fLambdaNegDaugSplCheckCovMat); 
 
   //    DCA to prim vertex
   fLambdaDCADaugToPrimVtx  
@@ -1287,24 +1293,27 @@ void AliAnalysisTaskLambdaOverK0sJets::UserCreateOutputObjects()
 
   // ----------------Splitting:
   for(Int_t j=0; j<kNCent; j++){
+
+    // positive daughter:
+    fAntiLambdaPosDaugSplCheckCovMat[j]  = new THnSparseD(Form("fAntiLambdaPosDaugSplCheckCovMat_%d",j), "#bar{#Lambda} Pos. daughter;  #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",9,binsSplit,xminSplit,xmaxSplit); 
+    fAntiLambdaPosDaugSplCheckCovMat[j]->SetBinEdges(7,binsDev);
+    fOutput->Add(fAntiLambdaPosDaugSplCheckCovMat[j]);  
+
+    // negative daughter:
+    fAntiLambdaNegDaugSplCheckCovMat[j]  = new THnSparseD(Form("fAntiLambdaNegDaugSplCheckCovMat_%d",j), "#bar{#Lambda} Neg. daughter;  #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle;  R#Delta#varphi*_{max}; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls;  (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables;",9,binsSplit,xminSplit,xmaxSplit);       
+    fAntiLambdaNegDaugSplCheckCovMat[j]->SetBinEdges(7,binsDev);
+    fOutput->Add(fAntiLambdaNegDaugSplCheckCovMat[j]); 
+
     // Positive daughter:
-    fAntiLambdaPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fAntiLambdaPosDaugdPhiSdEtaS_%d",j), "#bar{#Lambda} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit3,xminSplit3,xmaxSplit3);
+    fAntiLambdaPosDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fAntiLambdaPosDaugdPhiSdEtaS_%d",j), "#bar{#Lambda} Pos. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; Correlation fraction of shared cls: Trigger - Daughter; same MC label;",10,binsSplit3,xminSplit3,xmaxSplit3);
     fOutput->Add(fAntiLambdaPosDaugdPhiSdEtaS[j]);  
     
     // Negative daughter:
-    fAntiLambdaNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fAntiLambdaNegDaugdPhiSdEtaS_%d",j), "#bar{#Lambda} Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; same MC label;",9,binsSplit3,xminSplit3,xmaxSplit3);
+    fAntiLambdaNegDaugdPhiSdEtaS[j]  = new THnSparseD(Form("fAntiLambdaNegDaugdPhiSdEtaS_%d",j), "#bar{#Lambda} Neg. daughter; #it{p}_{T,V0} (GeV/#it{c}); Mass (GeV/c^2); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; #Delta#phi*; #Delta#eta*; Trigger: fraction of TPC shared cls; Daughter: fraction of TPC shared cls; Correlation fraction of shared cls: Trigger - Daughter; same MC label;",10,binsSplit3,xminSplit3,xmaxSplit3);
     fOutput->Add(fAntiLambdaNegDaugdPhiSdEtaS[j]);  
   }
 
-  // positive daughter
-  fAntiLambdaPosDaugSplCheckCovMat  = new THnSparseD("fAntiLambdaPosDaugSplCheckCovMat", "#bar{#Lambda} Pos. daughter;  #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit); 
-  fAntiLambdaPosDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fAntiLambdaPosDaugSplCheckCovMat);  
-
-  // negative daughter
-  fAntiLambdaNegDaugSplCheckCovMat  = new THnSparseD("fAntiLambdaNegDaugSplCheckCovMat", "#bar{#Lambda} Neg. daughter;  #it{p}_{T,V0} (GeV/#it{c}); #it{p}_{Daug} (GeV/#it{c}); Same Sign as Trigger Particle; (X-X')^{2}/( #sigma^{2} + #sigma'^{2} ); Variables; R#Delta#varphi*_{max};Shared cluster condition;",7,binsSplit,xminSplit,xmaxSplit);       
-  fAntiLambdaNegDaugSplCheckCovMat->SetBinEdges(3,binsDev);
-  fOutput->Add(fAntiLambdaNegDaugSplCheckCovMat); 
+  
 
   //    DCA to prim vertex
   fAntiLambdaDCADaugToPrimVtx  
@@ -3360,7 +3369,7 @@ void AliAnalysisTaskLambdaOverK0sJets::V0Loop(V0LoopStep_t step, Bool_t isTrigge
          fK0sMassPtPhi->Fill(massK0s,pt,lPhi);
 
          
-         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && !isNaturalPart )
+         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && isNaturalPart )
            fAssocParticles->Add( new AliMiniParticle(centrality, zv, iV0, pt, lPhi, lEta, lMCAssocNegDaug, lMCAssocPosDaug, 3) );
          
 
@@ -3525,7 +3534,7 @@ void AliAnalysisTaskLambdaOverK0sJets::V0Loop(V0LoopStep_t step, Bool_t isTrigge
          fLambdaMassPtPhi->Fill(massLambda,pt,lPhi);
 
          
-         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && !isNaturalPart )
+         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && isNaturalPart )
            fAssocParticles->Add( new AliMiniParticle(centrality, zv, iV0, pt, lPhi, lEta, lMCAssocNegDaug, lMCAssocPosDaug, 4) );
          
          
@@ -3692,10 +3701,9 @@ void AliAnalysisTaskLambdaOverK0sJets::V0Loop(V0LoopStep_t step, Bool_t isTrigge
          fAntiLambdaMassPtPhi->Fill(massAntiLambda,pt,lPhi);
        
          
-         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && !isNaturalPart )
+         if( (pt>kPtBinV0[0]) && (pt<kPtBinV0[kN1]) && isNaturalPart )
            fAssocParticles->Add( new AliMiniParticle(centrality, zv, iV0, pt, lPhi, lEta, lMCAssocNegDaug, lMCAssocPosDaug, 5) );
          
-
        }
  
        if( fDoQA && lCheckMcAntiLambda && isNaturalPart && (pt<10.) ){ // Quality Assurance
@@ -4301,12 +4309,12 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
   // variables for track splititing checks:
   Float_t  posdPhiS = -9999., posdEtaS = -9999., negdPhiS = -9999., negdEtaS = -9999.; 
   Float_t  fracTrigTPCSharedMap=-1., fracPosDaugTPCSharedMap =-1., fracNegDaugTPCSharedMap =-1.;
-  Bool_t   trigTPCMapOk=kTRUE, posDaugTPCMapOk=kTRUE, negDaugTPCMapOk=kTRUE;  
+  //Bool_t   trigTPCMapOk=kTRUE, posDaugTPCMapOk=kTRUE, negDaugTPCMapOk=kTRUE;  
   Float_t  RdPhiStarMaxPosDaug=-1., RdPhiStarMaxNegDaug=-1., den=1.;
   Double_t trigCov[21], posDaugCov[21], negDaugCov[21];
   Double_t trigPos[6], posDaugPos[6], negDaugPos[6];
   Double_t trigXYZ[3], posDaugXYZ[3], negDaugXYZ[3];
-  Double_t devPosDaugTrig[9], devNegDaugTrig[9], splitCont[7],  splitCont2[9];;
+  Double_t devPosDaugTrig[9], devNegDaugTrig[9], splitCont[9],  splitCont2[10];
   Int_t    sameSignPosDaug = -1., sameSignNegDaug = -1.;
   Float_t  sameLabelPosDaug = 0., sameLabelNegDaug = 0.;
 
@@ -4368,7 +4376,8 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
       sameLabelPosDaug = 0.; sameLabelNegDaug = 0.;
       sameSignPosDaug = -1.; sameSignNegDaug = -1.;
       RdPhiStarMaxPosDaug=-1.; RdPhiStarMaxNegDaug=-1.;
-      trigTPCMapOk=kTRUE; posDaugTPCMapOk=kTRUE; negDaugTPCMapOk=kTRUE;
+      //trigTPCMapOk=kTRUE; posDaugTPCMapOk=kTRUE; negDaugTPCMapOk=kTRUE;
+      fracTrigTPCSharedMap=0; fracPosDaugTPCSharedMap=0; fracNegDaugTPCSharedMap=0;
 
       // =========== Classical methods for track-splitting  ============= //
       if( TMath::Abs(dPhi)<0.1 && TMath::Abs(dEta)<0.1 ){   
@@ -4418,9 +4427,9 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
          RdPhiStarMaxNegDaug = TwoTrackEfficiencyCut( tTrig->Phi(), tTrig->Eta(), tTrig->Pt(), tTrig->Charge(), ntrack->Phi(), ntrack->Eta(), ntrack->Pt(), -1, bSign);
 
          // -------- TPC Shared Map:
-         trigTPCMapOk    = GoodTPCSharedMap(tTrig);
-         posDaugTPCMapOk = GoodTPCSharedMap(ptrack);
-         negDaugTPCMapOk = GoodTPCSharedMap(ntrack);
+         //trigTPCMapOk    = GoodTPCSharedMap(tTrig);
+         //posDaugTPCMapOk = GoodTPCSharedMap(ptrack);
+         //negDaugTPCMapOk = GoodTPCSharedMap(ntrack);
 
          // ------ Get position:
          tTrig->GetXYZ(trigXYZ);
@@ -4490,7 +4499,8 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
        
        // ==== Correlations K0s invariant mass peak ==== //
        // +++++++++++ Pt bin & centrality
-       fK0sdPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massK0s);
+       if( fracPosDaugTPCSharedMap<0.5 || fracPosDaugTPCSharedMap<0.5 || fracNegDaugTPCSharedMap )
+         fK0sdPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massK0s);
 
        // -------- Classical track-splitting method: d(phi)* and d(eta)*
        if(  TMath::Abs(dPhi)<0.1 && TMath::Abs(dEta)<0.1 ){   
@@ -4499,50 +4509,46 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
 
          // Positive daughter
          splitCont2[2] = ptrack->Pt();  splitCont2[3] = sameSignPosDaug;  splitCont2[4] = posdPhiS;  splitCont2[5] = posdEtaS; 
-         splitCont2[7] = fracPosDaugTPCSharedMap;  splitCont2[8] = sameLabelPosDaug;  
+         splitCont2[7] = fracPosDaugTPCSharedMap;   splitCont2[8] = fracTrigTPCSharedMap - fracPosDaugTPCSharedMap;
+         splitCont2[9] = sameLabelPosDaug;  
          fK0sPosDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);    
 
          // Negative daughter
          splitCont2[2] = ntrack->Pt();  splitCont2[3] = sameSignNegDaug;  splitCont2[4] = negdPhiS;  splitCont2[5] = negdEtaS; 
-         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = sameLabelNegDaug;  
+         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = fracTrigTPCSharedMap - fracNegDaugTPCSharedMap;
+         splitCont2[9] = sameLabelNegDaug;  
          fK0sNegDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);
 
        }
 
-       // ==== Correlations K0s invariant mass peak ==== //
-       if (TMath::Abs(mK0s-massK0s) < 3*sK0s) {
-
-         // -------------- splitting checks ---------------
-         if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
+       // -------------- splitting checks:  Covariance matrix   ---------------
+       if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
 
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),0.5);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),1.5);
+           splitCont[0] = pt;  splitCont[1] = massK0s; 
+           splitCont[5] = fracTrigTPCSharedMap; 
 
-           //// -------- Covariance matrix ------- ////
            // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk
+           splitCont[2] = ptrack->Pt();  splitCont[3] = sameSignPosDaug; 
+           splitCont[4] = RdPhiStarMaxPosDaug;   splitCont[6] = fracPosDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fK0sPosDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devPosDaugTrig[ll]; splitCont[8] = ll; 
+             fK0sPosDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
            // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk
+           splitCont[2] = ntrack->Pt(); splitCont[3] = sameSignNegDaug; 
+           splitCont[4] = RdPhiStarMaxNegDaug;   splitCont[6] = fracNegDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fK0sNegDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devNegDaugTrig[ll]; splitCont[8] = ll; 
+             fK0sNegDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
          }
 
-         // ----------------------------------------------
+       // ==== Correlations K0s invariant mass peak ==== //
+       if (TMath::Abs(mK0s-massK0s) < 3*sK0s) {
 
-         if(radio<0.1){
+         if(radio<0.02){
            fK0sSpatialRes->Fill(dPhi,res,lt);
          }
          if(radio < 0.4){
@@ -4558,36 +4564,6 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
        if( TMath::Abs(mK0s-massK0s + 6.5*sK0s) < 1.5*sK0s ||
            TMath::Abs(mK0s-massK0s - 6.5*sK0s) < 1.5*sK0s  ) {
          
-         // -------------- splitting checks ---------------
-         if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
-
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),0.5,-1);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),1.5,-1);
-
-           //// -------- Covariance matrix ------- ////
-           // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fK0sPosDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-           // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fK0sNegDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-         }
-
-         // ----------------------------------------------
-
          // Only fills the histograms when it is a triggered event
          if(j==0){
            fHistArmenterosPodolanski->Fill(lAlphaV0,lPtArmV0,1);
@@ -4628,7 +4604,8 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
 
        // ==== Correlations Lambda invariant mass peak ==== //
         // +++++++++++ Pt bin & centrality
-       fLambdadPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massL);
+       if( fracPosDaugTPCSharedMap<0.5 || fracPosDaugTPCSharedMap<0.5 || fracNegDaugTPCSharedMap<0.5 )
+         fLambdadPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massL);
 
        // -------- Classical track-splitting method: d(phi)* and d(eta)*
        if(  TMath::Abs(dPhi)<0.1 && TMath::Abs(dEta)<0.1 ){   
@@ -4637,50 +4614,47 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
 
          // Positive daughter
          splitCont2[2] = ptrack->Pt();  splitCont2[3] = sameSignPosDaug;  splitCont2[4] = posdPhiS;  splitCont2[5] = posdEtaS; 
-         splitCont2[7] = fracPosDaugTPCSharedMap;  splitCont2[8] = sameLabelPosDaug;  
+         splitCont2[7] = fracPosDaugTPCSharedMap;  splitCont2[8] = fracTrigTPCSharedMap - fracPosDaugTPCSharedMap;
+         splitCont2[9] = sameLabelPosDaug;  
          fLambdaPosDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);         
 
          // Negative daughter
          splitCont2[2] = ntrack->Pt();  splitCont2[3] = sameSignNegDaug;  splitCont2[4] = negdPhiS;  splitCont2[5] = negdEtaS; 
-         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = sameLabelNegDaug;  
+         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = fracTrigTPCSharedMap - fracNegDaugTPCSharedMap;
+         splitCont2[9] = sameLabelNegDaug;  
          fLambdaNegDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);
 
        }
 
-       // ==== Correlations Lambda invariant mass peak ==== //
-       if (TMath::Abs(mL-massL) < 3*sL) {
-                         
-         // -------------- splitting checks ---------------
-         if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
+       // -------------- splitting checks:  Covariance matrix   ---------------
+       if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
 
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),2.5);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),3.5);
+           splitCont[0] = pt;  splitCont[1] = massL; 
+           splitCont[5] = fracTrigTPCSharedMap; 
 
-           //// -------- Covariance matrix ------- ////
            // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk
+           splitCont[2] = ptrack->Pt();  splitCont[3] = sameSignPosDaug; 
+           splitCont[4] = RdPhiStarMaxPosDaug;   splitCont[6] = fracPosDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fLambdaPosDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devPosDaugTrig[ll]; splitCont[8] = ll; 
+             fLambdaPosDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
            // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk
+           splitCont[2] = ntrack->Pt(); splitCont[3] = sameSignNegDaug; 
+           splitCont[4] = RdPhiStarMaxNegDaug;   splitCont[6] = fracNegDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fLambdaNegDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devNegDaugTrig[ll]; splitCont[8] = ll; 
+             fLambdaNegDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
          }
 
-         // ----------------------------------------------
 
-         if(radio<0.1)
+       // ==== Correlations Lambda invariant mass peak ==== //
+       if (TMath::Abs(mL-massL) < 3*sL) {                        
+
+         if(radio<0.02)
            fLambdaSpatialRes->Fill(dPhi,res,lt);
          if(radio < 0.4){
            fHistArmPodBckg->Fill(lAlphaV0,lPtArmV0,2);
@@ -4693,36 +4667,6 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
        // ==== Correlations Lambda background ==== //
        if( TMath::Abs(mL-massL + 6.5*sL) < 1.5*sL ||
            TMath::Abs(mL-massL - 6.5*sL) < 1.5*sL ) {
-           
-         // -------------- splitting checks ---------------
-         if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
-
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),2.5,-1);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),3.5,-1);
-
-           //// -------- Covariance matrix ------- ////
-           // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fLambdaPosDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-           // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fLambdaNegDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-         }
-
-         // ----------------------------------------------
 
          // Only fills the histograms when it is a triggered event
          if(j==0){
@@ -4747,7 +4691,7 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
 
          }// End selection in the correlation peak
                
-       } // End bacground selection
+       } // End background selection
        
       }// End Lambda selection
        // *******************
@@ -4764,56 +4708,55 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
 
        // ==== Correlations Lambda invariant mass peak ==== //
         // +++++++++++ Pt bin & centrality
-       fAntiLambdadPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massAL);
+       if( fracPosDaugTPCSharedMap<0.5 || fracPosDaugTPCSharedMap<0.5 || fracNegDaugTPCSharedMap<0.5 )
+         fAntiLambdadPhidEtaPtL[curCentBin*kN1*kNVtxZ + binPtv0*kNVtxZ + curVtxBin]->Fill(dPhi,dEta,massAL);
 
+       // -------- Classical track-splitting method: d(phi)* and d(eta)*
        if(  TMath::Abs(dPhi)<0.1 && TMath::Abs(dEta)<0.1 ){   
          splitCont2[0] = pt;  splitCont2[1] = massAL;  
          splitCont2[6] = fracTrigTPCSharedMap; 
 
          // Positive daughter
          splitCont2[2] = ptrack->Pt();  splitCont2[3] = sameSignPosDaug;  splitCont2[4] = posdPhiS;  splitCont2[5] = posdEtaS; 
-         splitCont2[7] = fracPosDaugTPCSharedMap;  splitCont2[8] = sameLabelPosDaug;  
+         splitCont2[7] = fracPosDaugTPCSharedMap;  splitCont2[8] = fracTrigTPCSharedMap - fracPosDaugTPCSharedMap;
+         splitCont2[9] = sameLabelPosDaug;  
          fAntiLambdaPosDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);     
 
          // Negative daughter
          splitCont2[2] = ntrack->Pt();  splitCont2[3] = sameSignNegDaug;  splitCont2[4] = negdPhiS;  splitCont2[5] = negdEtaS; 
-         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = sameLabelNegDaug;  
+         splitCont2[7] = fracNegDaugTPCSharedMap;  splitCont2[8] = fracTrigTPCSharedMap - fracNegDaugTPCSharedMap;
+         splitCont2[9] = sameLabelNegDaug;  
          fAntiLambdaNegDaugdPhiSdEtaS[curCentBin]->Fill(splitCont2);
 
        }
 
-       // ==== Correlations AntiLambda invariant mass peak ==== //
-       if (TMath::Abs(mL-massAL) < 3*sL) {
 
-         // -------------- splitting checks ---------------
+         // -------------- splitting checks:  Covariance matrix   ---------------
          if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
 
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),4.5);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),5.5);
+           splitCont[0] = pt;  splitCont[1] = massAL; 
+           splitCont[5] = fracTrigTPCSharedMap; 
 
-           //// -------- Covariance matrix ------- ////
            // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk
+           splitCont[2] = ptrack->Pt();  splitCont[3] = sameSignPosDaug; 
+           splitCont[4] = RdPhiStarMaxPosDaug;   splitCont[6] = fracPosDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fAntiLambdaPosDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devPosDaugTrig[ll]; splitCont[8] = ll; 
+             fAntiLambdaPosDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
            // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk
+           splitCont[2] = ntrack->Pt(); splitCont[3] = sameSignNegDaug; 
+           splitCont[4] = RdPhiStarMaxNegDaug;   splitCont[6] = fracNegDaugTPCSharedMap
            for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fAntiLambdaNegDaugSplCheckCovMat->Fill(splitCont);
+             splitCont[7] = devNegDaugTrig[ll]; splitCont[8] = ll; 
+             fAntiLambdaNegDaugSplCheckCovMat[curCentBin]->Fill(splitCont);
            }
 
          }
 
-         // ----------------------------------------------
+       // ==== Correlations AntiLambda invariant mass peak ==== //
+       if (TMath::Abs(mL-massAL) < 3*sL) {
 
          if(radio<0.1)
            fAntiLambdaSpatialRes->Fill(dPhi,res,lt);         
@@ -4828,34 +4771,6 @@ void AliAnalysisTaskLambdaOverK0sJets::UserExec(Option_t *)
        // ==== Correlations AntiLambda background ==== //
        if( (TMath::Abs(mL-massAL + 6.5*sL) < 1.5*sL) ||
            (TMath::Abs(mL-massAL - 6.5*sL) < 1.5*sL) ){
-          
-         // -------------- splitting checks ---------------
-         if(TMath::Abs(dPhi)<0.02 && TMath::Abs(dEta)<0.02){
-
-           //// -------- TPC Map ------- ////
-           if(!trigTPCMapOk && !posDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ptrack->P(),4.5,-1);
-           if(!trigTPCMapOk && !negDaugTPCMapOk)
-             fSharedClsTrigDaug->Fill(pt,ntrack->P(),5.5,-1);
-
-           //// -------- Covariance matrix ------- ////
-           // positive daughter
-           splitCont[0] = pt;  splitCont[1] = ptrack->Pt();  splitCont[2] = sameSignPosDaug; 
-           splitCont[5] = RdPhiStarMaxPosDaug;   splitCont[6] = 1*trigTPCMapOk + 2*posDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devPosDaugTrig[ll]; splitCont[4] = ll; 
-             fAntiLambdaPosDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-           // negative daughter
-           splitCont[0] = pt;  splitCont[1] = ntrack->Pt(); splitCont[2] = sameSignNegDaug; 
-           splitCont[5] = RdPhiStarMaxNegDaug;   splitCont[6] = 1*trigTPCMapOk + 2*negDaugTPCMapOk; 
-           for(Int_t ll=0; ll<=8; ll++){
-             splitCont[3] = devNegDaugTrig[ll]; splitCont[4] = ll; 
-             fAntiLambdaNegDaugSplCheckCovMat->Fill(splitCont,-1);
-           }
-
-         }
 
          // ----------------------------------------------
 
index 9d794d9881c1a89e071a17a6cc1c883bd8e63b26..5ea9751b761433309e9427a470b4e9e13b83c241 100644 (file)
@@ -330,14 +330,13 @@ class AliAnalysisTaskLambdaOverK0sJets : public AliAnalysisTaskSE {
   TH3F*   fK0sMassPtRap[kNCent];         //! K0s: mass vs pt vs rap vs centrality
   TH3F*   fK0sMassPtPhi;                 //! K0s: mass vs pt vs phi
 
-  TH2F*   fK0sDaughtersPt;               //! K0s: pt of daughters
-  TH3F*   fSharedClsTrigDaug;            //! Splitting studies according to the TPC Shared Bit Map for K0s Lambda and AntiLambda
-  THnSparse* fK0sPosDaugdPhiSdEtaS[kNCent]; //! Positive daughter: delta(phi)* delta(eta)*    
-  THnSparse* fK0sNegDaugdPhiSdEtaS[kNCent]; //! Negative daughter: delta(phi)* delta(eta)* 
-  THnSparse* fK0sPosDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  THnSparse* fK0sNegDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  TH3F*   fK0sDCADaugToPrimVtx;          //! K0s: DCA to primary vertex of daughters vs leading particle's pt inside a radio wrt the near-side peak
-  TH3F*   fK0sSpatialRes;                //! K0s: Spatial resolution  
+  TH2F*   fK0sDaughtersPt;                       //! K0s: pt of daughters
+  THnSparse* fK0sPosDaugdPhiSdEtaS[kNCent];      //! Positive daughter: delta(phi)* delta(eta)*    
+  THnSparse* fK0sNegDaugdPhiSdEtaS[kNCent];      //! Negative daughter: delta(phi)* delta(eta)* 
+  THnSparse* fK0sPosDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  THnSparse* fK0sNegDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  TH3F*   fK0sDCADaugToPrimVtx;                  //! K0s: DCA to primary vertex of daughters vs leading particle's pt inside a radio wrt the near-side peak
+  TH3F*   fK0sSpatialRes;                        //! K0s: Spatial resolution  
    
   TH3F*   fK0sdPhidEtaMC[kNCent*kN1];             //! K0s MC: Delta phi,Delta eta vs Z vertex position
   TH3F*   fK0sdPhidEtaPtL[kNVtxZ*kNCent*kN1];     //! K0s: Delta phi,Delta eta vs Z vertex position
@@ -361,13 +360,13 @@ class AliAnalysisTaskLambdaOverK0sJets : public AliAnalysisTaskSE {
   TH3F*   fLambdaMassPtRap[kNCent];      //! Lambda: mass vs pt vs rap
   TH3F*   fLambdaMassPtPhi;              //! Lambda: mass vs pt vs phi 
 
-  TH2F*   fLambdaDaughtersPt;            //! Lambda: pt of daughters
-  THnSparse* fLambdaPosDaugdPhiSdEtaS[kNCent]; //! Positive daughter: delta(phi)* delta(eta)*    
-  THnSparse* fLambdaNegDaugdPhiSdEtaS[kNCent]; //! Negative daughter: delta(phi)* delta(eta)* 
-  THnSparse* fLambdaPosDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  THnSparse* fLambdaNegDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  TH3F*   fLambdaDCADaugToPrimVtx;       //! Lambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
-  TH3F*   fLambdaSpatialRes;             //! Lambda: Spatial resolution  
+  TH2F*   fLambdaDaughtersPt;                       //! Lambda: pt of daughters
+  THnSparse* fLambdaPosDaugdPhiSdEtaS[kNCent];      //! Positive daughter: delta(phi)* delta(eta)*    
+  THnSparse* fLambdaNegDaugdPhiSdEtaS[kNCent];      //! Negative daughter: delta(phi)* delta(eta)* 
+  THnSparse* fLambdaPosDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  THnSparse* fLambdaNegDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  TH3F*   fLambdaDCADaugToPrimVtx;                  //! Lambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
+  TH3F*   fLambdaSpatialRes;                        //! Lambda: Spatial resolution  
 
   TH3F*   fLambdadPhidEtaMC[kNCent*kN1];            //! Lambda MC: Delta phi,Delta eta vs Z vertex position
   TH3F*   fLambdadPhidEtaPtL[kNVtxZ*kNCent*kN1];    //! Lambda: Delta phi,Delta eta vs Z vertex position
@@ -392,13 +391,13 @@ class AliAnalysisTaskLambdaOverK0sJets : public AliAnalysisTaskSE {
   TH3F*   fAntiLambdaMassPtRap[kNCent];        //! AntiLambda: pt vs rap
   TH3F*   fAntiLambdaMassPtPhi;                //! Lambda: mass vs phi 
 
-  TH2F*   fAntiLambdaDaughtersPt;              //! AntiLambda: pt of daughters
-  THnSparse* fAntiLambdaPosDaugdPhiSdEtaS[kNCent]; //! Positive daughter: delta(phi)* delta(eta)*    
-  THnSparse* fAntiLambdaNegDaugdPhiSdEtaS[kNCent]; //! Negative daughter: delta(phi)* delta(eta)* 
-  THnSparse* fAntiLambdaPosDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  THnSparse* fAntiLambdaNegDaugSplCheckCovMat;  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
-  TH3F*   fAntiLambdaDCADaugToPrimVtx;         //! AntiLambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
-  TH3F*   fAntiLambdaSpatialRes;               //! AntiLambda: Spatial resolution  
+  TH2F*   fAntiLambdaDaughtersPt;                       //! AntiLambda: pt of daughters
+  THnSparse* fAntiLambdaPosDaugdPhiSdEtaS[kNCent];      //! Positive daughter: delta(phi)* delta(eta)*    
+  THnSparse* fAntiLambdaNegDaugdPhiSdEtaS[kNCent];      //! Negative daughter: delta(phi)* delta(eta)* 
+  THnSparse* fAntiLambdaPosDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  THnSparse* fAntiLambdaNegDaugSplCheckCovMat[kNCent];  //! Check Covariance Matrix elemenets between trigger trcak and daughter track
+  TH3F*   fAntiLambdaDCADaugToPrimVtx;                  //! AntiLambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
+  TH3F*   fAntiLambdaSpatialRes;                        //! AntiLambda: Spatial resolution  
 
   TH3F*   fAntiLambdadPhidEtaMC[kNCent*kN1];            //! AntiLambda MC: Delta phi,Delta eta vs Z vertex position
   TH3F*   fAntiLambdadPhidEtaPtL[kNVtxZ*kNCent*kN1];    //! AntiLambda: Delta phi,Delta eta vs pt of the leading particle