]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliV0vertexer.cxx
handle reference tracks correctly for background subtraction and randomized events
[u/mrichter/AliRoot.git] / STEER / AliV0vertexer.cxx
index aae7657417855f254b6e240765ce5a6e139433ea..4e8d21c5811d794973f2a35025ad7ca970028bba 100644 (file)
@@ -35,7 +35,7 @@ Double_t AliV0vertexer::fgDPmin=0.05;  //min imp parameter for the 2nd daughter
 Double_t AliV0vertexer::fgDCAmax=1.5;  //max DCA between the daughter tracks
 Double_t AliV0vertexer::fgCPAmin=0.9;  //min cosine of V0's pointing angle
 Double_t AliV0vertexer::fgRmin=0.2;    //min radius of the fiducial volume
-Double_t AliV0vertexer::fgRmax=100.;   //max radius of the fiducial volume
+Double_t AliV0vertexer::fgRmax=200.;   //max radius of the fiducial volume
 
 Int_t AliV0vertexer::Tracks2V0vertices(AliESDEvent *event) {
   //--------------------------------------------------------------------
@@ -63,7 +63,7 @@ Int_t AliV0vertexer::Tracks2V0vertices(AliESDEvent *event) {
      AliESDtrack *esdTrack=event->GetTrack(i);
      ULong_t status=esdTrack->GetStatus();
 
-     if ((status&AliESDtrack::kITSrefit)==0)
+     //if ((status&AliESDtrack::kITSrefit)==0)//not to accept the ITS SA tracks
         if ((status&AliESDtrack::kTPCrefit)==0) continue;
 
      Double_t d=esdTrack->GetD(xPrimaryVertex,yPrimaryVertex,b);
@@ -113,6 +113,11 @@ Int_t AliV0vertexer::Tracks2V0vertices(AliESDEvent *event) {
          AliESDv0 vertex(nt,nidx,pt,pidx);
          if (vertex.GetChi2V0() > fChi2max) continue;
         
+         Double_t x=vertex.Xv(), y=vertex.Yv();
+         Double_t r2=x*x + y*y;
+         if (r2 < fRmin*fRmin) continue;
+         if (r2 > fRmax*fRmax) continue;
+
         Float_t cpa=vertex.GetV0CosineOfPointingAngle(xPrimaryVertex,yPrimaryVertex,zPrimaryVertex);
         if (cpa < fCPAmin) continue;
         vertex.SetDcaV0Daughters(dca);