@@ -91,6 +91,7 @@ struct PseudorapidityDensityMFT {
9191 " max allowed Z difference for reconstructed collisions (cm)" };
9292
9393 Configurable<bool > usePhiCut{" usePhiCut" , true , " use azimuthal angle cut" };
94+ Configurable<bool > useDCAxyCut{" useDCAxyCut" , false , " use DCAxy cut" };
9495 Configurable<float > cfgPhiCut{" cfgPhiCut" , 0 .1f ,
9596 " Cut on azimuthal angle of MFT tracks" };
9697 Configurable<float > cfgPhiCut1{" cfgPhiCut1" , 0 .0f ,
@@ -108,6 +109,7 @@ struct PseudorapidityDensityMFT {
108109 Configurable<float > cfgnEta2{" cfgnEta2" , -1 .0f ,
109110 " Cut on eta1" };
110111 Configurable<float > cfgChi2NDFMax{" cfgChi2NDFMax" , 2000 .0f , " Max allowed chi2/NDF for MFT tracks" };
112+ Configurable<float > maxDCAxy{" maxDCAxy" , 2 .0f , " Cut on dcaXY" };
111113
112114 HistogramRegistry registry{
113115 " registry" ,
@@ -588,6 +590,11 @@ struct PseudorapidityDensityMFT {
588590 if ((phi <= 0.02 ) || ((phi >= 3.10 ) && (phi <= 3.23 )) || (phi >= 6.21 ))
589591 continue ;
590592 }
593+ float dcaxy_cut = retrack.bestDCAXY ();
594+ if (useDCAxyCut) {
595+ if (dcaxy_cut > maxDCAxy)
596+ continue ;
597+ }
591598 if ((cfgnEta1 < track.eta ()) && (track.eta () < cfgnEta2) && track.nClusters () >= cfgnCluster && retrack.ambDegree () > 0 && chi2ndf < cfgChi2NDFMax && (phi > cfgPhiCut1 && phi < cfgPhiCut2)) {
592599 registry.fill (HIST (" Tracks/2Danalysis/EtaZvtx" ), track.eta (), z);
593600 }
@@ -628,6 +635,11 @@ struct PseudorapidityDensityMFT {
628635 if ((phi <= 0.02 ) || ((phi >= 3.10 ) && (phi <= 3.23 )) || (phi >= 6.21 ))
629636 continue ;
630637 }
638+ float dcaxy_cut = retrack.bestDCAXY ();
639+ if (useDCAxyCut) {
640+ if (dcaxy_cut > maxDCAxy)
641+ continue ;
642+ }
631643 if ((cfgnEta1 < track.eta ()) && (track.eta () < cfgnEta2) && track.nClusters () >= cfgnCluster && retrack.ambDegree () > 0 && chi2ndf < cfgChi2NDFMax && (phi > cfgPhiCut1 && phi < cfgPhiCut2)) {
632644 registry.fill (HIST (" Tracks/Control/Chi2NDF" ), chi2ndf);
633645 registry.fill (HIST (" Tracks/2Danalysis/EtaZvtx_sel8" ), track.eta (), z);
@@ -646,12 +658,17 @@ struct PseudorapidityDensityMFT {
646658 float ndf = std::max (2 .0f * track.nClusters () - 5 .0f , 1 .0f );
647659 float chi2ndf = track.chi2 () / ndf;
648660 float phi = track.phi ();
661+ float dcaxy_cut = retrack.bestDCAXY ();
649662 o2::math_utils::bringTo02Pi (phi);
650663 if ((cfgnEta1 < track.eta ()) && (track.eta () < cfgnEta2) && track.nClusters () >= cfgnCluster && chi2ndf < cfgChi2NDFMax && (phi > cfgPhiCut1 && phi < cfgPhiCut2)) {
651664 if (usePhiCut) {
652665 if ((phi <= 0.02 ) || ((phi >= 3.10 ) && (phi <= 3.23 )) || (phi >= 6.21 ))
653666 continue ;
654667 }
668+ if (useDCAxyCut) {
669+ if (dcaxy_cut > maxDCAxy)
670+ continue ;
671+ }
655672 registry.fill (HIST (" TracksEtaZvtx" ), track.eta (), z);
656673 if (midtracks.size () > 0 && retrack.ambDegree () > 0 ) {
657674 registry.fill (HIST (" Tracks/EtaZvtx_gt0" ), track.eta (), z);
0 commit comments