Skip to content

Commit 0849d7f

Browse files
authored
[PWGEM/PhotonMeson] update TaggingPi0 (#10437)
1 parent 8edebb1 commit 0849d7f

File tree

12 files changed

+1363
-9
lines changed

12 files changed

+1363
-9
lines changed

PWGEM/PhotonMeson/Core/DalitzEECut.cxx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,12 @@ void DalitzEECut::SetMeanClusterSizeITS(float min, float max)
111111
mMaxMeanClusterSizeITS = max;
112112
LOG(info) << "DalitzEE Cut, set mean cluster size ITS range: " << mMinMeanClusterSizeITS << " - " << mMaxMeanClusterSizeITS;
113113
}
114+
void DalitzEECut::SetTrackDca3DRange(float min, float max)
115+
{
116+
mMinDca3D = min;
117+
mMaxDca3D = max;
118+
LOG(info) << "DalitzEE Cut, set DCA 3D range in sigma: " << mMinDca3D << " - " << mMaxDca3D;
119+
}
114120
void DalitzEECut::SetMaxDcaXY(float maxDcaXY)
115121
{
116122
mMaxDcaXY = maxDcaXY;

PWGEM/PhotonMeson/Core/DalitzEECut.h

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ class DalitzEECut : public TNamed
5757
kTPCChi2NDF,
5858
kTPCNsigmaEl,
5959
kTPCNsigmaPi,
60+
kDCA3Dsigma,
6061
kDCAxy,
6162
kDCAz,
6263
kITSNCls,
@@ -125,6 +126,9 @@ class DalitzEECut : public TNamed
125126
if (!IsSelectedTrack(track, DalitzEECuts::kTrackEtaRange)) {
126127
return false;
127128
}
129+
if (!IsSelectedTrack(track, DalitzEECuts::kDCA3Dsigma)) {
130+
return false;
131+
}
128132
if (!IsSelectedTrack(track, DalitzEECuts::kDCAxy)) {
129133
return false;
130134
}
@@ -242,6 +246,9 @@ class DalitzEECut : public TNamed
242246
case DalitzEECuts::kTPCChi2NDF:
243247
return mMinChi2PerClusterTPC < track.tpcChi2NCl() && track.tpcChi2NCl() < mMaxChi2PerClusterTPC;
244248

249+
case DalitzEECuts::kDCA3Dsigma:
250+
return mMinDca3D <= dca3DinSigma(track) && dca3DinSigma(track) <= mMaxDca3D; // in sigma for single leg
251+
245252
case DalitzEECuts::kDCAxy:
246253
return std::fabs(track.dcaXY()) <= ((mMaxDcaXYPtDep) ? mMaxDcaXYPtDep(track.pt()) : mMaxDcaXY);
247254

@@ -288,8 +295,9 @@ class DalitzEECut : public TNamed
288295
void RequireITSibAny(bool flag);
289296
void RequireITSib1st(bool flag);
290297

291-
void SetMaxDcaXY(float maxDcaXY); // in cm
292-
void SetMaxDcaZ(float maxDcaZ); // in cm
298+
void SetTrackDca3DRange(float min, float max); // in sigma
299+
void SetMaxDcaXY(float maxDcaXY); // in cm
300+
void SetMaxDcaZ(float maxDcaZ); // in cm
293301
void SetMaxDcaXYPtDep(std::function<float(float)> ptDepCut);
294302
void ApplyPrefilter(bool flag);
295303
void ApplyPhiV(bool flag);
@@ -324,6 +332,8 @@ class DalitzEECut : public TNamed
324332
bool mRequireITSibAny{true};
325333
bool mRequireITSib1st{false};
326334

335+
float mMinDca3D{0.0f}; // min dca in 3D in units of sigma
336+
float mMaxDca3D{1e+10}; // max dca in 3D in units of sigma
327337
float mMaxDcaXY{1.0f}; // max dca in xy plane
328338
float mMaxDcaZ{1.0f}; // max dca in z direction
329339
std::function<float(float)> mMaxDcaXYPtDep{}; // max dca in xy plane as function of pT

PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,7 @@ struct Pi0EtaToGammaGamma {
177177
Configurable<float> cfg_max_chi2its{"cfg_max_chi2its", 5.0, "max chi2/NclsITS"};
178178
Configurable<float> cfg_max_dcaxy{"cfg_max_dcaxy", 0.05, "max dca XY for single track in cm"};
179179
Configurable<float> cfg_max_dcaz{"cfg_max_dcaz", 0.05, "max dca Z for single track in cm"};
180+
Configurable<float> cfg_max_dca3dsigma_track{"cfg_max_dca3dsigma_track", 1.5, "max DCA 3D in sigma"};
180181
Configurable<float> cfg_max_frac_shared_clusters_tpc{"cfg_max_frac_shared_clusters_tpc", 999.f, "max fraction of shared clusters in TPC"};
181182
Configurable<bool> cfg_apply_cuts_from_prefilter_derived{"cfg_apply_cuts_from_prefilter_derived", false, "flag to apply prefilter to electron"};
182183

@@ -396,6 +397,7 @@ struct Pi0EtaToGammaGamma {
396397
fDileptonCut.SetNClustersITS(dileptoncuts.cfg_min_ncluster_its, 7);
397398
fDileptonCut.SetMaxDcaXY(dileptoncuts.cfg_max_dcaxy);
398399
fDileptonCut.SetMaxDcaZ(dileptoncuts.cfg_max_dcaz);
400+
fDileptonCut.SetTrackDca3DRange(0.f, dileptoncuts.cfg_max_dca3dsigma_track); // in sigma
399401

400402
// for eID
401403
fDileptonCut.SetPIDScheme(dileptoncuts.cfg_pid_scheme);

PWGEM/PhotonMeson/Core/Pi0EtaToGammaGammaMC.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ struct Pi0EtaToGammaGammaMC {
166166
Configurable<float> cfg_max_chi2its{"cfg_max_chi2its", 5.0, "max chi2/NclsITS"};
167167
Configurable<float> cfg_max_dcaxy{"cfg_max_dcaxy", 0.05, "max dca XY for single track in cm"};
168168
Configurable<float> cfg_max_dcaz{"cfg_max_dcaz", 0.05, "max dca Z for single track in cm"};
169+
Configurable<float> cfg_max_dca3dsigma_track{"cfg_max_dca3dsigma_track", 1.5, "max DCA 3D in sigma"};
169170
Configurable<bool> cfg_apply_cuts_from_prefilter_derived{"cfg_apply_cuts_from_prefilter_derived", false, "flag to apply prefilter to electron"};
170171

171172
Configurable<int> cfg_pid_scheme{"cfg_pid_scheme", static_cast<int>(DalitzEECut::PIDSchemes::kTOFif), "pid scheme [kTOFif : 0, kTPConly : 1]"};
@@ -319,6 +320,7 @@ struct Pi0EtaToGammaGammaMC {
319320
// for track
320321
fV0PhotonCut.SetTrackPtRange(pcmcuts.cfg_min_pt_v0 * 0.4, 1e+10f);
321322
fV0PhotonCut.SetTrackEtaRange(-pcmcuts.cfg_max_eta_v0, +pcmcuts.cfg_max_eta_v0);
323+
fV0PhotonCut.SetMinNClustersTPC(pcmcuts.cfg_min_ncluster_tpc);
322324
fV0PhotonCut.SetMinNCrossedRowsTPC(pcmcuts.cfg_min_ncrossedrows);
323325
fV0PhotonCut.SetMinNCrossedRowsOverFindableClustersTPC(0.8);
324326
fV0PhotonCut.SetMaxFracSharedClustersTPC(pcmcuts.cfg_max_frac_shared_clusters_tpc);
@@ -358,6 +360,7 @@ struct Pi0EtaToGammaGammaMC {
358360
fDileptonCut.SetNClustersITS(dileptoncuts.cfg_min_ncluster_its, 7);
359361
fDileptonCut.SetMaxDcaXY(dileptoncuts.cfg_max_dcaxy);
360362
fDileptonCut.SetMaxDcaZ(dileptoncuts.cfg_max_dcaz);
363+
fDileptonCut.SetTrackDca3DRange(0.f, dileptoncuts.cfg_max_dca3dsigma_track); // in sigma
361364

362365
// for eID
363366
fDileptonCut.SetPIDScheme(dileptoncuts.cfg_pid_scheme);
@@ -406,10 +409,6 @@ struct Pi0EtaToGammaGammaMC {
406409
Partition<MyMCElectrons> positrons = o2::aod::emprimaryelectron::sign > int8_t(0) && static_cast<float>(dileptoncuts.cfg_min_pt_track) < o2::aod::track::pt&& nabs(o2::aod::track::eta) < static_cast<float>(dileptoncuts.cfg_max_eta_track) && static_cast<float>(dileptoncuts.cfg_min_TPCNsigmaEl) < o2::aod::pidtpc::tpcNSigmaEl&& o2::aod::pidtpc::tpcNSigmaEl < static_cast<float>(dileptoncuts.cfg_max_TPCNsigmaEl);
407410
Partition<MyMCElectrons> electrons = o2::aod::emprimaryelectron::sign < int8_t(0) && static_cast<float>(dileptoncuts.cfg_min_pt_track) < o2::aod::track::pt && nabs(o2::aod::track::eta) < static_cast<float>(dileptoncuts.cfg_max_eta_track) && static_cast<float>(dileptoncuts.cfg_min_TPCNsigmaEl) < o2::aod::pidtpc::tpcNSigmaEl && o2::aod::pidtpc::tpcNSigmaEl < static_cast<float>(dileptoncuts.cfg_max_TPCNsigmaEl);
408411

409-
// Preslice<MyMCMuons> perCollision_muon = aod::emprimarymuon::emeventId;
410-
// Partition<MyMCMuons> muons_pos = o2::aod::emprimarymuon::sign > int8_t(0) && static_cast<float>(dileptoncuts.cfg_min_pt_track) < o2::aod::track::pt&& nabs(o2::aod::track::eta) < static_cast<float>(dileptoncuts.cfg_max_eta_track) && static_cast<float>(dileptoncuts.cfg_min_TPCNsigmaMu) < o2::aod::pidtpc::tpcNSigmaMu&& o2::aod::pidtpc::tpcNSigmaMu < static_cast<float>(dileptoncuts.cfg_max_TPCNsigmaMu);
411-
// Partition<MyMCMuons> muons_neg = o2::aod::emprimarymuon::sign < int8_t(0) && static_cast<float>(dileptoncuts.cfg_min_pt_track) < o2::aod::track::pt && nabs(o2::aod::track::eta) < static_cast<float>(dileptoncuts.cfg_max_eta_track) && static_cast<float>(dileptoncuts.cfg_min_TPCNsigmaMu) < o2::aod::pidtpc::tpcNSigmaMu && o2::aod::pidtpc::tpcNSigmaMu < static_cast<float>(dileptoncuts.cfg_max_TPCNsigmaMu);
412-
413412
template <typename TCollisions, typename TPhotons1, typename TPhotons2, typename TSubInfos1, typename TSubInfos2, typename TPreslice1, typename TPreslice2, typename TCut1, typename TCut2, typename TMCCollisions, typename TMCParticles>
414413
void runTruePairing(TCollisions const& collisions,
415414
TPhotons1 const& photons1, TPhotons2 const& photons2,

0 commit comments

Comments
 (0)