]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Update the DCA calculation for V0 daughters (for consistency)
authorbhippoly <bhippoly@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 28 Mar 2009 21:18:28 +0000 (21:18 +0000)
committerbhippoly <bhippoly@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 28 Mar 2009 21:18:28 +0000 (21:18 +0000)
PWG2/SPECTRA/AliAnalysisTaskCheckV0.cxx
PWG2/SPECTRA/AliAnalysisTaskStrange.cxx

index 4292b39d75da42cafaebb2a6ced93e8462bc2cbd..afb2d4fbc490857b0b8d72d5529f6213bfbcd742 100644 (file)
@@ -253,6 +253,8 @@ void AliAnalysisTaskCheckV0::UserExec(Option_t *)
     fHistPrimaryVertexPosY->Fill(tPrimaryVtxPosition[1]);
     fHistPrimaryVertexPosZ->Fill(tPrimaryVtxPosition[2]);
 
+    Double_t lMagneticField = ((AliESDEvent*)lEvent)->GetMagneticField();
+
     for (Int_t iV0 = 0; iV0 < nv0s; iV0++) 
       {// This is the begining of the V0 loop
        AliESDv0 *v0 = ((AliESDEvent*)lEvent)->GetV0(iV0);
@@ -275,16 +277,13 @@ void AliAnalysisTaskCheckV0::UserExec(Option_t *)
          continue;
        }
 
-       Float_t tDcaPosToPrimVertex[2];
-       if(pTrack) pTrack->GetImpactParameters(tDcaPosToPrimVertex[0],tDcaPosToPrimVertex[1]);
-       else { tDcaPosToPrimVertex[0]=999.;  tDcaPosToPrimVertex[1]=999.;}
-       lDcaPosToPrimVertex = TMath::Sqrt(tDcaPosToPrimVertex[0]*tDcaPosToPrimVertex[0]+tDcaPosToPrimVertex[1]*tDcaPosToPrimVertex[1]);
-
-       Float_t tDcaNegToPrimVertex[2];
-       if(nTrack) nTrack->GetImpactParameters(tDcaNegToPrimVertex[0],tDcaNegToPrimVertex[1]);
-       else { tDcaNegToPrimVertex[0]=999.;  tDcaNegToPrimVertex[1]=999.;}
-       lDcaNegToPrimVertex = TMath::Sqrt(tDcaNegToPrimVertex[0]*tDcaNegToPrimVertex[0]+tDcaNegToPrimVertex[1]*tDcaNegToPrimVertex[1]);
+       lDcaPosToPrimVertex = TMath::Abs(pTrack->GetD(tPrimaryVtxPosition[0],
+                                                     tPrimaryVtxPosition[1],
+                                                     lMagneticField) );
 
+       lDcaNegToPrimVertex = TMath::Abs(nTrack->GetD(tPrimaryVtxPosition[0],
+                                                     tPrimaryVtxPosition[1],
+                                                     lMagneticField) );
 
        lOnFlyStatus = v0->GetOnFlyStatus();
        lChi2V0 = v0->GetChi2V0();
index 1b154914b9c7147c8f47ef464c91e6bf127575bd..95c51abead6c6331a3536d62431bbec9a6e0bdf2 100644 (file)
@@ -278,13 +278,14 @@ void AliAnalysisTaskStrange::UserExec(Option_t *)
     fHistPrimaryVertexPosY->Fill(tPrimaryVtxPosition[1]);
     fHistPrimaryVertexPosZ->Fill(tPrimaryVtxPosition[2]);
 
+    Double_t lMagneticField = ((AliESDEvent*)lEvent)->GetMagneticField();
+
     primaryVtx->GetCovMatrix(tPrimaryVtxCov); 
     AliAODVertex *primary = new AliAODVertex(tPrimaryVtxPosition, tPrimaryVtxCov, primaryVtx->GetChi2toNDF(), NULL, -1, AliAODVertex::kPrimary);
   
     // V0 variables:
     // to get info from ESD files and fill AliAODVertex:
-    Float_t   tdcaPosToPrimVertexXYZ[2], tdcaNegToPrimVertexXYZ[2]; // ..[0] = Impact parameter in XY plane and ..[1] = Impact parameter in Z            
-    Double_t  tdcaDaughterToPrimVertex[2];                          // ..[0] = Pos and ..[1] = Neg
+    Double_t  tdcaDaughterToPrimVertex[2];                 // ..[0] = Pos and ..[1] = Neg
     Double_t  tMomPos[3];
     Double_t  tMomNeg[3];
     Double_t  tV0Position[3];
@@ -372,10 +373,13 @@ void AliAnalysisTaskStrange::UserExec(Option_t *)
        lDcaV0Daughters    = v0->GetDcaV0Daughters();
        lDcaV0ToPrimVertex = v0->GetD(tPrimaryVtxPosition[0],tPrimaryVtxPosition[1],tPrimaryVtxPosition[2]);
 
-       if (pTrack) pTrack->GetImpactParameters(tdcaPosToPrimVertexXYZ[0],tdcaPosToPrimVertexXYZ[1]);
-       if (nTrack) nTrack->GetImpactParameters(tdcaNegToPrimVertexXYZ[0],tdcaNegToPrimVertexXYZ[1]);
-       tdcaDaughterToPrimVertex[0] = TMath::Sqrt(tdcaPosToPrimVertexXYZ[0]*tdcaPosToPrimVertexXYZ[0]+tdcaPosToPrimVertexXYZ[1]*tdcaPosToPrimVertexXYZ[1]);
-       tdcaDaughterToPrimVertex[1] = TMath::Sqrt(tdcaNegToPrimVertexXYZ[0]*tdcaNegToPrimVertexXYZ[0]+tdcaNegToPrimVertexXYZ[1]*tdcaNegToPrimVertexXYZ[1]);
+       if (pTrack) tdcaDaughterToPrimVertex[0] = TMath::Abs(pTrack->GetD(tPrimaryVtxPosition[0],
+                                                                         tPrimaryVtxPosition[1],
+                                                                         lMagneticField) );
+
+       if (nTrack) tdcaDaughterToPrimVertex[1] = TMath::Abs(pTrack->GetD(tPrimaryVtxPosition[0],
+                                                                         tPrimaryVtxPosition[1],
+                                                                         lMagneticField) );
 
        v0->GetPPxPyPz(tMomPos[0],tMomPos[1],tMomPos[2]); 
        v0->GetNPxPyPz(tMomNeg[0],tMomNeg[1],tMomNeg[2]);