Skip to content

Commit 1f7a8de

Browse files
committed
[PWGEM/Dilepton] cleanup unnecessary lines
1 parent 5cbd65a commit 1f7a8de

9 files changed

Lines changed: 39 additions & 77 deletions

File tree

PWGEM/Dilepton/Core/DielectronCut.cxx

Lines changed: 12 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,11 @@ void DielectronCut::SetMindEtadPhi(bool flag1, bool flag2, float min_deta, float
7979
mMinDeltaPhi = min_dphi;
8080
LOG(info) << "Dielectron Cut, set apply deta-dphi cut: " << mApplydEtadPhi << " apply deta-dphi* cut: " << mApplydEtadPhiPosition << " min_deta: " << mMinDeltaEta << " min_dphi: " << mMinDeltaPhi;
8181
}
82-
void DielectronCut::SetRequireDifferentSides(bool flag)
83-
{
84-
mRequireDiffSides = flag;
85-
LOG(info) << "Dielectron Cut, require 2 tracks to be from different sides: " << mRequireDiffSides;
86-
}
82+
// void DielectronCut::SetRequireDifferentSides(bool flag)
83+
// {
84+
// mRequireDiffSides = flag;
85+
// LOG(info) << "Dielectron Cut, require 2 tracks to be from different sides: " << mRequireDiffSides;
86+
// }
8787
void DielectronCut::SetTrackPtRange(float minPt, float maxPt)
8888
{
8989
mMinTrackPt = minPt;
@@ -163,8 +163,6 @@ void DielectronCut::SetMeanClusterSizeITS(float min, float max)
163163
{
164164
mMinMeanClusterSizeITS = min;
165165
mMaxMeanClusterSizeITS = max;
166-
// mMinP_ITSClusterSize = minP;
167-
// mMaxP_ITSClusterSize = maxP;
168166
LOG(info) << "Dielectron Cut, set mean cluster size ITS range: " << mMinMeanClusterSizeITS << " - " << mMaxMeanClusterSizeITS;
169167
}
170168
void DielectronCut::SetChi2TOF(float min, float max)
@@ -174,21 +172,22 @@ void DielectronCut::SetChi2TOF(float min, float max)
174172
LOG(info) << "Dielectron Cut, set chi2 TOF range: " << mMinChi2TOF << " - " << mMaxChi2TOF;
175173
}
176174

177-
void DielectronCut::SetTrackDca3DRange(float min, float max)
175+
void DielectronCut::SetTrackMaxDcaSigma(float max, uint dcaType)
178176
{
179-
mMinDca3D = min;
180-
mMaxDca3D = max;
181-
LOG(info) << "Dielectron Cut, set DCA 3D range in sigma: " << mMinDca3D << " - " << mMaxDca3D;
177+
mMaxDcaSigma = max;
178+
mDCAType = dcaType;
179+
LOG(info) << "Dielectron Cut, set max DCA in sigma: " << mMaxDcaSigma;
180+
LOG(info) << "Dielectron Cut, set DCA type: " << mDCAType;
182181
}
183182
void DielectronCut::SetTrackMaxDcaXY(float maxDcaXY)
184183
{
185184
mMaxDcaXY = maxDcaXY;
186-
LOG(info) << "Dielectron Cut, set max DCA xy: " << mMaxDcaXY;
185+
LOG(info) << "Dielectron Cut, set max DCA xy in cm: " << mMaxDcaXY;
187186
}
188187
void DielectronCut::SetTrackMaxDcaZ(float maxDcaZ)
189188
{
190189
mMaxDcaZ = maxDcaZ;
191-
LOG(info) << "Dielectron Cut, set max DCA z: " << mMaxDcaZ;
190+
LOG(info) << "Dielectron Cut, set max DCA z in cm: " << mMaxDcaZ;
192191
}
193192

194193
void DielectronCut::SetTrackMaxDcaXYPtDep(std::function<float(float)> ptDepCut)
@@ -201,11 +200,6 @@ void DielectronCut::ApplyPhiV(bool flag)
201200
mApplyPhiV = flag;
202201
LOG(info) << "Dielectron Cut, apply phiv cut: " << mApplyPhiV;
203202
}
204-
void DielectronCut::ApplyPrefilter(bool flag)
205-
{
206-
mApplyPF = flag;
207-
LOG(info) << "Dielectron Cut, apply prefilter: " << mApplyPF;
208-
}
209203

210204
void DielectronCut::SetPIDScheme(int scheme)
211205
{
@@ -323,20 +317,6 @@ void DielectronCut::SetTOFNsigmaPrRange(float min, float max)
323317
// mMaxITSNsigmaPr = max;
324318
// LOG(info) << "Dielectron Cut, set ITS n sigma Pr range: " << mMinITSNsigmaPr << " - " << mMaxITSNsigmaPr;
325319
// }
326-
//
327-
// void DielectronCut::SetPRangeForITSNsigmaKa(float min, float max)
328-
// {
329-
// mMinP_ITSNsigmaKa = min;
330-
// mMaxP_ITSNsigmaKa = max;
331-
// LOG(info) << "Dielectron Cut, set p range for ITS n sigma Ka: " << mMinP_ITSNsigmaKa << " - " << mMaxP_ITSNsigmaKa;
332-
// }
333-
//
334-
// void DielectronCut::SetPRangeForITSNsigmaPr(float min, float max)
335-
// {
336-
// mMinP_ITSNsigmaPr = min;
337-
// mMaxP_ITSNsigmaPr = max;
338-
// LOG(info) << "Dielectron Cut, set p range for ITS n sigma Pr: " << mMinP_ITSNsigmaPr << " - " << mMaxP_ITSNsigmaPr;
339-
// }
340320

341321
void DielectronCut::SetPinRangeForPionRejectionTPC(float min, float max)
342322
{

PWGEM/Dilepton/Core/DielectronCut.h

Lines changed: 15 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
#include <Rtypes.h>
3333

3434
#include <algorithm>
35+
#include <array>
3536
#include <cmath>
3637
#include <cstdint>
3738
#include <functional>
@@ -66,14 +67,13 @@ class DielectronCut : public TNamed
6667
kTPCFracSharedClusters,
6768
kRelDiffPin,
6869
kTPCChi2NDF,
69-
kDCA3Dsigma,
70+
kDCAsigma,
7071
kDCAxy,
7172
kDCAz,
7273
kITSNCls,
7374
kITSChi2NDF,
7475
kITSClusterSize,
7576
kTTCA,
76-
kPrefilter,
7777
kNCuts
7878
};
7979

@@ -144,9 +144,9 @@ class DielectronCut : public TNamed
144144
return false;
145145
}
146146

147-
if (mRequireDiffSides && t1.eta() * t2.eta() > 0.0) {
148-
return false;
149-
}
147+
// if (mRequireDiffSides && t1.eta() * t2.eta() > 0.0) {
148+
// return false;
149+
// }
150150

151151
if (mApplydEtadPhi && mApplydEtadPhiPosition) { // applying both cuts is not allowed.
152152
return false;
@@ -195,7 +195,7 @@ class DielectronCut : public TNamed
195195
if (!IsSelectedTrack(track, DielectronCuts::kTrackPhiPositionRange)) {
196196
return false;
197197
}
198-
if (!IsSelectedTrack(track, DielectronCuts::kDCA3Dsigma)) {
198+
if (!IsSelectedTrack(track, DielectronCuts::kDCAsigma)) {
199199
return false;
200200
}
201201
if (!IsSelectedTrack(track, DielectronCuts::kDCAxy)) {
@@ -263,9 +263,6 @@ class DielectronCut : public TNamed
263263
return false;
264264
}
265265
}
266-
if (mApplyPF && !IsSelectedTrack(track, DielectronCuts::kPrefilter)) {
267-
return false;
268-
}
269266

270267
// PID cuts
271268
if (!PassPID(track)) {
@@ -336,8 +333,6 @@ class DielectronCut : public TNamed
336333
bool is_el_included_TPC = mMinTPCNsigmaEl < track.tpcNSigmaEl() && track.tpcNSigmaEl() < mMaxTPCNsigmaEl;
337334
bool is_pi_excluded_TPC = (track.tpcInnerParam() > mMinPinForPionRejectionTPC && track.tpcInnerParam() < mMaxPinForPionRejectionTPC) ? (track.tpcNSigmaPi() < mMinTPCNsigmaPi || mMaxTPCNsigmaPi < track.tpcNSigmaPi()) : true;
338335
bool is_el_included_TOF = (mMinTOFNsigmaEl < track.tofNSigmaEl() && track.tofNSigmaEl() < mMaxTOFNsigmaEl) && (track.hasTOF() && track.tofChi2() < mMaxChi2TOF);
339-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
340-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
341336
return is_el_included_TPC && is_pi_excluded_TPC && is_el_included_TOF;
342337
}
343338

@@ -347,8 +342,6 @@ class DielectronCut : public TNamed
347342
bool is_el_included_TPC = mMinTPCNsigmaEl < track.tpcNSigmaEl() && track.tpcNSigmaEl() < mMaxTPCNsigmaEl;
348343
bool is_pi_excluded_TPC = track.tpcInnerParam() < mMaxPinForPionRejectionTPC ? (track.tpcNSigmaPi() < mMinTPCNsigmaPi || mMaxTPCNsigmaPi < track.tpcNSigmaPi()) : true;
349344
bool is_el_included_TOF = (mMinTOFNsigmaEl < track.tofNSigmaEl() && track.tofNSigmaEl() < mMaxTOFNsigmaEl) && (track.hasTOF() && track.tofChi2() < mMaxChi2TOF);
350-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
351-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
352345
return is_el_included_TPC && is_pi_excluded_TPC && is_el_included_TOF;
353346
}
354347

@@ -361,17 +354,13 @@ class DielectronCut : public TNamed
361354
bool is_ka_excluded_TPC = track.tpcNSigmaKa() < mMinTPCNsigmaKa || mMaxTPCNsigmaKa < track.tpcNSigmaKa();
362355
bool is_pr_excluded_TPC = track.tpcNSigmaPr() < mMinTPCNsigmaPr || mMaxTPCNsigmaPr < track.tpcNSigmaPr();
363356
bool is_el_included_TOF = track.hasTOF() ? (mMinTOFNsigmaEl < track.tofNSigmaEl() && track.tofNSigmaEl() < mMaxTOFNsigmaEl) : true;
364-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
365-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
366357
return is_el_included_TPC && is_pi_excluded_TPC && is_ka_excluded_TPC && is_pr_excluded_TPC && is_el_included_TOF;
367358
}
368359

369360
template <typename T>
370361
bool PassTPConly(T const& track) const
371362
{
372363
bool is_el_included_TPC = mMinTPCNsigmaEl < track.tpcNSigmaEl() && track.tpcNSigmaEl() < mMaxTPCNsigmaEl;
373-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
374-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
375364
return is_el_included_TPC;
376365
}
377366

@@ -383,8 +372,6 @@ class DielectronCut : public TNamed
383372
bool is_pi_excluded_TPC = track.tpcInnerParam() < mMaxPinForPionRejectionTPC ? (track.tpcNSigmaPi() < mMinTPCNsigmaPi || mMaxTPCNsigmaPi < track.tpcNSigmaPi()) : true;
384373
bool is_ka_excluded_TPC = track.tpcNSigmaKa() < mMinTPCNsigmaKa || mMaxTPCNsigmaKa < track.tpcNSigmaKa();
385374
bool is_pr_excluded_TPC = track.tpcNSigmaPr() < mMinTPCNsigmaPr || mMaxTPCNsigmaPr < track.tpcNSigmaPr();
386-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
387-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
388375
return is_el_included_TPC && is_pi_excluded_TPC && is_ka_excluded_TPC && is_pr_excluded_TPC;
389376
}
390377

@@ -394,8 +381,6 @@ class DielectronCut : public TNamed
394381
bool is_el_included_TPC = mMinTPCNsigmaEl < track.tpcNSigmaEl() && track.tpcNSigmaEl() < mMaxTPCNsigmaEl;
395382
bool is_pi_excluded_TPC = track.tpcInnerParam() < mMaxPinForPionRejectionTPC ? (track.tpcNSigmaPi() < mMinTPCNsigmaPi || mMaxTPCNsigmaPi < track.tpcNSigmaPi()) : true;
396383
bool is_el_included_TOF = track.hasTOF() ? (mMinTOFNsigmaEl < track.tofNSigmaEl() && track.tofNSigmaEl() < mMaxTOFNsigmaEl) : true;
397-
// bool is_ka_excluded_ITS = (mMinP_ITSNsigmaKa < track.p() && track.p() < mMaxP_ITSNsigmaKa) ? (track.itsNSigmaKa() < mMinITSNsigmaKa || mMaxITSNsigmaKa < track.itsNSigmaKa()) : true;
398-
// bool is_pr_excluded_ITS = (mMinP_ITSNsigmaPr < track.p() && track.p() < mMaxP_ITSNsigmaPr) ? (track.itsNSigmaPr() < mMinITSNsigmaPr || mMaxITSNsigmaPr < track.itsNSigmaPr()) : true;
399384
return is_el_included_TPC && is_pi_excluded_TPC && is_el_included_TOF;
400385
}
401386

@@ -462,8 +447,8 @@ class DielectronCut : public TNamed
462447
case DielectronCuts::kTPCChi2NDF:
463448
return mMinChi2PerClusterTPC < track.tpcChi2NCl() && track.tpcChi2NCl() < mMaxChi2PerClusterTPC;
464449

465-
case DielectronCuts::kDCA3Dsigma:
466-
return mMinDca3D < o2::aod::pwgem::dilepton::utils::emtrackutil::dca3DinSigma(track) && o2::aod::pwgem::dilepton::utils::emtrackutil::dca3DinSigma(track) < mMaxDca3D; // in sigma for single leg
450+
case DielectronCuts::kDCAsigma:
451+
return std::array<float, 3>{std::fabs(o2::aod::pwgem::dilepton::utils::emtrackutil::dca3DinSigma(track)), std::fabs(o2::aod::pwgem::dilepton::utils::emtrackutil::dcaXYinSigma(track)), std::fabs(o2::aod::pwgem::dilepton::utils::emtrackutil::dcaZinSigma(track))}[mDCAType] < mMaxDcaSigma;
467452

468453
case DielectronCuts::kDCAxy:
469454
return std::fabs(track.dcaXY()) < ((mMaxDcaXYPtDep) ? mMaxDcaXYPtDep(track.pt()) : mMaxDcaXY);
@@ -483,9 +468,6 @@ class DielectronCut : public TNamed
483468
case DielectronCuts::kTTCA:
484469
return mEnableTTCA ? true : track.isAssociatedToMPC();
485470

486-
case DielectronCuts::kPrefilter:
487-
return track.pfb() <= 0;
488-
489471
default:
490472
return false;
491473
}
@@ -500,7 +482,7 @@ class DielectronCut : public TNamed
500482
void SetMaxMeePhiVDep(std::function<float(float)> phivDepCut, float min_phiv, float max_phiv);
501483
void SelectPhotonConversion(bool flag);
502484
void SetMindEtadPhi(bool applydEtadPhi, bool applydEtadPhiPosition, float min_deta, float min_dphi);
503-
void SetRequireDifferentSides(bool flag);
485+
// void SetRequireDifferentSides(bool flag);
504486

505487
void SetTrackPtRange(float minPt = 0.f, float maxPt = 1e10f);
506488
void SetTrackEtaRange(float minEta = -1e10f, float maxEta = 1e10f);
@@ -537,18 +519,14 @@ class DielectronCut : public TNamed
537519
// void SetITSNsigmaKaRange(float min, float max);
538520
// void SetITSNsigmaPrRange(float min, float max);
539521

540-
// void SetPRangeForITSNsigmaKa(float min, float max);
541-
// void SetPRangeForITSNsigmaPr(float min, float max);
542-
543522
void SetPinRangeForPionRejectionTPC(float min, float max);
544523
void RequireITSibAny(bool flag);
545524
void RequireITSib1st(bool flag);
546525

547-
void SetTrackDca3DRange(float min, float max); // in sigma
548-
void SetTrackMaxDcaXY(float maxDcaXY); // in cm
549-
void SetTrackMaxDcaZ(float maxDcaZ); // in cm
526+
void SetTrackMaxDcaSigma(float max, uint dcaType); // in sigma
527+
void SetTrackMaxDcaXY(float maxDcaXY); // in cm
528+
void SetTrackMaxDcaZ(float maxDcaZ); // in cm
550529
void SetTrackMaxDcaXYPtDep(std::function<float(float)> ptDepCut);
551-
void ApplyPrefilter(bool flag);
552530
void ApplyPhiV(bool flag);
553531
void IncludeITSsa(bool flag, float maxpt);
554532
void EnableTTCA(bool flag);
@@ -589,7 +567,7 @@ class DielectronCut : public TNamed
589567
float mMinDeltaEta{0.f};
590568
float mMinDeltaPhi{0.f};
591569
float mMinOpAng{0.f}, mMaxOpAng{1e10f};
592-
bool mRequireDiffSides{false}; // flag to require 2 tracks to be from different sides. (A-C combination). If one wants 2 tracks to be in the same side (A-A or C-C), one can simply use track eta cut.
570+
// bool mRequireDiffSides{false}; // flag to require 2 tracks to be from different sides. (A-C combination). If one wants 2 tracks to be in the same side (A-A or C-C), one can simply use track eta cut.
593571

594572
// kinematic cuts
595573
float mMinTrackPt{0.f}, mMaxTrackPt{1e10f}; // range in pT
@@ -614,15 +592,13 @@ class DielectronCut : public TNamed
614592
bool mRequireITSib1st{false};
615593
float mMinChi2TOF{-1e10f}, mMaxChi2TOF{1e10f}; // max tof chi2 per
616594

617-
float mMinDca3D{0.0f}; // min dca in 3D in units of sigma
618-
float mMaxDca3D{1e+10}; // max dca in 3D in units of sigma
595+
uint mDCAType{0}; // 0:3D, 1:XY, 2:Z, else:3D
596+
float mMaxDcaSigma{1e+10}; // max dca in units of sigma
619597
float mMaxDcaXY{1.0f}; // max dca in xy plane
620598
float mMaxDcaZ{1.0f}; // max dca in z direction
621599
std::function<float(float)> mMaxDcaXYPtDep{}; // max dca in xy plane as function of pT
622600
bool mApplyPhiV{true};
623-
bool mApplyPF{false};
624601
float mMinMeanClusterSizeITS{0.0}, mMaxMeanClusterSizeITS{1e10f}; // <its cluster size> x cos(lmabda)
625-
// float mMinP_ITSClusterSize{0.0}, mMaxP_ITSClusterSize{0.0};
626602
bool mIncludeITSsa{false};
627603
float mMaxPtITSsa{1e+10};
628604

@@ -649,8 +625,6 @@ class DielectronCut : public TNamed
649625
// float mMinITSNsigmaPi{-1e+10}, mMaxITSNsigmaPi{+1e+10};
650626
// float mMinITSNsigmaKa{-1e+10}, mMaxITSNsigmaKa{+1e+10};
651627
// float mMinITSNsigmaPr{-1e+10}, mMaxITSNsigmaPr{+1e+10};
652-
// float mMinP_ITSNsigmaKa{0.0}, mMaxP_ITSNsigmaKa{0.0};
653-
// float mMinP_ITSNsigmaPr{0.0}, mMaxP_ITSNsigmaPr{0.0};
654628

655629
// o2::analysis::MlResponseDielectronSingleTrack<float>* mPIDMlResponse{nullptr};
656630
std::vector<float> mMLBins{}; // binning for a feature variable. e.g. tpcInnerParam

PWGEM/Dilepton/Core/Dilepton.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ struct Dilepton {
234234
o2::framework::Configurable<float> cfg_max_chi2tof{"cfg_max_chi2tof", 1e+10, "max chi2 TOF"};
235235
o2::framework::Configurable<float> cfg_max_dcaxy{"cfg_max_dcaxy", 1.0, "max dca XY for single track in cm"};
236236
o2::framework::Configurable<float> cfg_max_dcaz{"cfg_max_dcaz", 1.0, "max dca Z for single track in cm"};
237+
o2::framework::Configurable<float> cfg_max_dca_sigma{"cfg_max_dca_sigma", 1e+10, "max dca for single track in sigma"};
237238
o2::framework::Configurable<bool> cfg_require_itsib_any{"cfg_require_itsib_any", false, "flag to require ITS ib any hits"};
238239
o2::framework::Configurable<bool> cfg_require_itsib_1st{"cfg_require_itsib_1st", true, "flag to require ITS ib 1st hit"};
239240
o2::framework::Configurable<float> cfg_min_its_cluster_size{"cfg_min_its_cluster_size", 0.f, "min ITS cluster size"};
@@ -783,6 +784,7 @@ struct Dilepton {
783784
fDielectronCut.SetChi2PerClusterITS(0.0, dielectroncuts.cfg_max_chi2its);
784785
fDielectronCut.SetNClustersITS(dielectroncuts.cfg_min_ncluster_its, 7);
785786
fDielectronCut.SetMeanClusterSizeITS(dielectroncuts.cfg_min_its_cluster_size, dielectroncuts.cfg_max_its_cluster_size);
787+
fDielectronCut.SetTrackMaxDcaSigma(dielectroncuts.cfg_max_dca_sigma, cfgDCAType);
786788
fDielectronCut.SetTrackMaxDcaXY(dielectroncuts.cfg_max_dcaxy);
787789
fDielectronCut.SetTrackMaxDcaZ(dielectroncuts.cfg_max_dcaz);
788790
fDielectronCut.RequireITSibAny(dielectroncuts.cfg_require_itsib_any);

PWGEM/Dilepton/Core/DileptonHadronMPC.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -628,7 +628,7 @@ struct DileptonHadronMPC {
628628
fDielectronCut.ApplyPhiV(dielectroncuts.cfg_apply_phiv);
629629
fDielectronCut.SetMindEtadPhi(dielectroncuts.cfg_apply_detadphi, dielectroncuts.cfg_apply_detadphiposition, dielectroncuts.cfg_min_deta, dielectroncuts.cfg_min_dphi);
630630
fDielectronCut.SetPairOpAng(0.f, 6.3);
631-
fDielectronCut.SetRequireDifferentSides(false);
631+
// fDielectronCut.SetRequireDifferentSides(false);
632632

633633
// for track
634634
fDielectronCut.SetTrackPtRange(dielectroncuts.cfg_min_pt_track, dielectroncuts.cfg_max_pt_track);

PWGEM/Dilepton/Core/DileptonMC.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,7 @@ struct DileptonMC {
229229
o2::framework::Configurable<float> cfg_max_chi2tof{"cfg_max_chi2tof", 1e+10, "max chi2 TOF"};
230230
o2::framework::Configurable<float> cfg_max_dcaxy{"cfg_max_dcaxy", 1.0, "max dca XY for single track in cm"};
231231
o2::framework::Configurable<float> cfg_max_dcaz{"cfg_max_dcaz", 1.0, "max dca Z for single track in cm"};
232+
o2::framework::Configurable<float> cfg_max_dca_sigma{"cfg_max_dca_sigma", 1e+10, "max dca for single track in sigma"};
232233
o2::framework::Configurable<bool> cfg_require_itsib_any{"cfg_require_itsib_any", false, "flag to require ITS ib any hits"};
233234
o2::framework::Configurable<bool> cfg_require_itsib_1st{"cfg_require_itsib_1st", true, "flag to require ITS ib 1st hit"};
234235
o2::framework::Configurable<float> cfg_min_its_cluster_size{"cfg_min_its_cluster_size", 0.f, "min ITS cluster size"};
@@ -752,6 +753,7 @@ struct DileptonMC {
752753
fDielectronCut.SetChi2PerClusterITS(0.0, dielectroncuts.cfg_max_chi2its);
753754
fDielectronCut.SetNClustersITS(dielectroncuts.cfg_min_ncluster_its, 7);
754755
fDielectronCut.SetMeanClusterSizeITS(dielectroncuts.cfg_min_its_cluster_size, dielectroncuts.cfg_max_its_cluster_size);
756+
fDielectronCut.SetTrackMaxDcaSigma(dielectroncuts.cfg_max_dca_sigma, cfgDCAType);
755757
fDielectronCut.SetTrackMaxDcaXY(dielectroncuts.cfg_max_dcaxy);
756758
fDielectronCut.SetTrackMaxDcaZ(dielectroncuts.cfg_max_dcaz);
757759
fDielectronCut.RequireITSibAny(dielectroncuts.cfg_require_itsib_any);

0 commit comments

Comments
 (0)