Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions PWGEM/Dilepton/Core/PhotonHBT.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,14 +62,14 @@
};
} // namespace o2::aod::pwgem::dilepton::core::photonhbt

using namespace o2;

Check failure on line 65 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::aod;

Check failure on line 66 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::framework;

Check failure on line 67 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::framework::expressions;

Check failure on line 68 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::soa;

Check failure on line 69 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::aod::pwgem::dilepton::utils::emtrackutil;

Check failure on line 70 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::aod::pwgem::dilepton::utils;

Check failure on line 71 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.
using namespace o2::aod::pwgem::dilepton::core::photonhbt;

Check failure on line 72 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[using-directive]

Do not put using directives at global scope in headers.

using MyCollisions = soa::Join<aod::EMEvents, aod::EMEventsMult, aod::EMEventsCent, aod::EMEventsQvec>;
using MyCollision = MyCollisions::iterator;
Expand Down Expand Up @@ -107,7 +107,7 @@
Configurable<uint64_t> ndiff_bc_mix{"ndiff_bc_mix", 198, "difference in global BC required in mixed events"};
ConfigurableAxis ConfVtxBins{"ConfVtxBins", {VARIABLE_WIDTH, -10.0f, -8.f, -6.f, -4.f, -2.f, 0.f, 2.f, 4.f, 6.f, 8.f, 10.f}, "Mixing bins - z-vertex"};
ConfigurableAxis ConfCentBins{"ConfCentBins", {VARIABLE_WIDTH, 0.0f, 5.0f, 10.0f, 20.0f, 30.0f, 40.0f, 50.0f, 60.0f, 70.0f, 80.0f, 90.0f, 100.f, 999.f}, "Mixing bins - centrality"};
ConfigurableAxis ConfEPBins{"ConfEPBins", {16, -M_PI / 2, +M_PI / 2}, "Mixing bins - event plane angle"};

Check failure on line 110 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[external-pi]

Use the PI constant (and its multiples and fractions) defined in o2::constants::math.
ConfigurableAxis ConfOccupancyBins{"ConfOccupancyBins", {VARIABLE_WIDTH, -1, 1e+10}, "Mixing bins - occupancy"};
Configurable<std::string> cfg_swt_name{"cfg_swt_name", "fHighTrackMult", "desired software trigger name"}; // 1 trigger name per 1 task. fHighTrackMult, fHighFt0Mult
// Configurable<int> cfgNtracksPV08Min{"cfgNtracksPV08Min", -1, "min. multNTracksPV"};
Expand Down Expand Up @@ -161,7 +161,6 @@
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.997, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 3.0, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", true, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};

Configurable<bool> cfg_disable_itsonly_track{"cfg_disable_itsonly_track", false, "flag to disable ITSonly tracks"};
Expand Down Expand Up @@ -444,7 +443,7 @@
{
o2::aod::pwgem::dilepton::utils::eventhistogram::addEventHistograms<-1>(&fRegistry);
std::string_view qvec_det_names[6] = {"FT0M", "FT0A", "FT0C", "BTot", "BPos", "BNeg"};
fRegistry.add("Event/before/hEP2_CentFT0C_forMix", Form("2nd harmonics event plane for mix;centrality FT0C (%%);#Psi_{2}^{%s} (rad.)", qvec_det_names[cfgEP2Estimator_for_Mix].data()), kTH2F, {{110, 0, 110}, {180, -M_PI_2, +M_PI_2}}, false);

Check failure on line 446 in PWGEM/Dilepton/Core/PhotonHBT.h

View workflow job for this annotation

GitHub Actions / O2 linter

[external-pi]

Use the PI constant (and its multiples and fractions) defined in o2::constants::math.
fRegistry.add("Event/after/hEP2_CentFT0C_forMix", Form("2nd harmonics event plane for mix;centrality FT0C (%%);#Psi_{2}^{%s} (rad.)", qvec_det_names[cfgEP2Estimator_for_Mix].data()), kTH2F, {{110, 0, 110}, {180, -M_PI_2, +M_PI_2}}, false);

// pair info
Expand Down Expand Up @@ -536,7 +535,6 @@
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
fV0PhotonCut.SetRequireITSonly(pcmcuts.cfg_require_v0_with_itsonly);
fV0PhotonCut.SetRequireTPConly(pcmcuts.cfg_require_v0_with_tpconly);
Expand Down
5 changes: 5 additions & 0 deletions PWGEM/Dilepton/DataModel/dileptonTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -641,6 +641,11 @@ using EMPrimaryElectronsCov = EMPrimaryElectronsCov_001;
// iterators
using EMPrimaryElectronCov = EMPrimaryElectronsCov::iterator;

DECLARE_SOA_TABLE_VERSIONED(EMPrimaryElectronsDeDxMC_000, "AOD", "EMPRMELDEDXMC", 0, mcpidtpc::DeDxTunedMc, o2::soa::Marker<1>);
using EMPrimaryElectronsDeDxMC = EMPrimaryElectronsDeDxMC_000;
// iterators
using EMPrimaryElectronDeDxMC = EMPrimaryElectronsDeDxMC::iterator;

DECLARE_SOA_TABLE(EMPrimaryElectronEMEventIds, "AOD", "PRMELMEVENTID", emprimaryelectron::EMEventId); // To be joined with EMPrimaryElectrons table at analysis level.
// iterators
using EMPrimaryElectronEMEventId = EMPrimaryElectronEMEventIds::iterator;
Expand Down
12 changes: 6 additions & 6 deletions PWGEM/PhotonMeson/Core/CutsLibrary.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(true);
// cut->SetIsWithinBeamPipe(true);
// for v0
cut->SetMinCosPA(0.99);
cut->SetMaxPCA(3.0);
Expand Down Expand Up @@ -201,7 +201,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(true);
// cut->SetIsWithinBeamPipe(true);
// for v0
cut->SetMinCosPA(0.995);
cut->SetMaxPCA(0.5);
Expand All @@ -216,7 +216,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(true);
// cut->SetIsWithinBeamPipe(true);
cut->SetRequireITSTPC(true);
// for v0
cut->SetMinCosPA(0.99);
Expand All @@ -232,7 +232,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(true);
// cut->SetIsWithinBeamPipe(true);
// for v0
cut->SetMinCosPA(0.99);
cut->SetMaxPCA(3.0);
Expand All @@ -249,7 +249,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(false);
// cut->SetIsWithinBeamPipe(false);
// for v0
cut->SetMinCosPA(0.95);
cut->SetMaxPCA(3.0);
Expand All @@ -265,7 +265,7 @@ V0PhotonCut* o2::aod::pwgem::photon::pcmcuts::GetCut(const char* cutName)
cut->SetChi2PerClusterITS(-1e+10, 5.0);
cut->SetNClustersITS(2, 4);
cut->SetMeanClusterSizeITSob(0.0, 16.0);
cut->SetIsWithinBeamPipe(false);
// cut->SetIsWithinBeamPipe(false);
// for v0
cut->SetMinCosPA(0.95);
cut->SetMaxPCA(3.0);
Expand Down
2 changes: 0 additions & 2 deletions PWGEM/PhotonMeson/Core/DiphotonHadronMPC.h
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,6 @@ struct DiphotonHadronMPC {
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.997, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 3.0, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", false, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};
Configurable<bool> cfg_apply_cuts_from_prefilter_derived{"cfg_apply_cuts_from_prefilter_derived", false, "flag to apply prefilter to V0"};

Expand Down Expand Up @@ -432,7 +431,6 @@ struct DiphotonHadronMPC {
fV0PhotonCut.SetChi2PerClusterITS(-1e+10, pcmcuts.cfg_max_chi2its);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetDisableITSonly(pcmcuts.cfg_disable_itsonly_track);
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
Expand Down
2 changes: 0 additions & 2 deletions PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,6 @@ struct Pi0EtaToGammaGamma {
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.999, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 1.5, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", false, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};
Configurable<bool> cfg_apply_cuts_from_prefilter_derived{"cfg_apply_cuts_from_prefilter_derived", false, "flag to apply prefilter to V0"};

Expand Down Expand Up @@ -374,7 +373,6 @@ struct Pi0EtaToGammaGamma {
fV0PhotonCut.SetChi2PerClusterITS(-1e+10, pcmcuts.cfg_max_chi2its);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetDisableITSonly(pcmcuts.cfg_disable_itsonly_track);
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
Expand Down
2 changes: 0 additions & 2 deletions PWGEM/PhotonMeson/Core/Pi0EtaToGammaGammaMC.h
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,6 @@ struct Pi0EtaToGammaGammaMC {
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.999, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 1.5, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", false, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};
Configurable<bool> cfg_apply_cuts_from_prefilter_derived{"cfg_apply_cuts_from_prefilter_derived", false, "flag to apply prefilter to V0"};

Expand Down Expand Up @@ -333,7 +332,6 @@ struct Pi0EtaToGammaGammaMC {
fV0PhotonCut.SetChi2PerClusterITS(-1e+10, pcmcuts.cfg_max_chi2its);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetDisableITSonly(pcmcuts.cfg_disable_itsonly_track);
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
Expand Down
2 changes: 0 additions & 2 deletions PWGEM/PhotonMeson/Core/TaggingPi0.h
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,6 @@ struct TaggingPi0 {
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.997, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 3.0, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", true, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};

Configurable<int> cfg_min_ncluster_tpc{"cfg_min_ncluster_tpc", 10, "min ncluster tpc"};
Expand Down Expand Up @@ -369,7 +368,6 @@ struct TaggingPi0 {
fV0PhotonCut.SetChi2PerClusterITS(-1e+10, pcmcuts.cfg_max_chi2its);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetDisableITSonly(pcmcuts.cfg_disable_itsonly_track);
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
Expand Down
2 changes: 0 additions & 2 deletions PWGEM/PhotonMeson/Core/TaggingPi0MC.h
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,6 @@ struct TaggingPi0MC {
Configurable<float> cfg_min_cospa{"cfg_min_cospa", 0.997, "min V0 CosPA"};
Configurable<float> cfg_max_pca{"cfg_max_pca", 3.0, "max distance btween 2 legs"};
Configurable<float> cfg_max_chi2kf{"cfg_max_chi2kf", 1e+10, "max chi2/ndf with KF"};
Configurable<bool> cfg_require_v0_with_correct_xz{"cfg_require_v0_with_correct_xz", true, "flag to select V0s with correct xz"};
Configurable<bool> cfg_reject_v0_on_itsib{"cfg_reject_v0_on_itsib", true, "flag to reject V0s on ITSib"};

Configurable<int> cfg_min_ncluster_tpc{"cfg_min_ncluster_tpc", 10, "min ncluster tpc"};
Expand Down Expand Up @@ -339,7 +338,6 @@ struct TaggingPi0MC {
fV0PhotonCut.SetChi2PerClusterITS(-1e+10, pcmcuts.cfg_max_chi2its);
fV0PhotonCut.SetNClustersITS(0, 7);
fV0PhotonCut.SetMeanClusterSizeITSob(0.0, 16.0);
fV0PhotonCut.SetIsWithinBeamPipe(pcmcuts.cfg_require_v0_with_correct_xz);
fV0PhotonCut.SetDisableITSonly(pcmcuts.cfg_disable_itsonly_track);
fV0PhotonCut.SetDisableTPConly(pcmcuts.cfg_disable_tpconly_track);
fV0PhotonCut.SetRequireITSTPC(pcmcuts.cfg_require_v0_with_itstpc);
Expand Down
6 changes: 0 additions & 6 deletions PWGEM/PhotonMeson/Core/V0PhotonCut.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -193,12 +193,6 @@ void V0PhotonCut::SetMeanClusterSizeITSob(float min, float max)
LOG(info) << "V0 Photon Cut, set mean cluster size ITS range: " << mMinMeanClusterSizeITS << " - " << mMaxMeanClusterSizeITS;
}

void V0PhotonCut::SetIsWithinBeamPipe(bool flag)
{
mIsWithinBP = flag;
LOG(info) << "V0 Photon Cut, propagated to within beam pipe: " << mIsWithinBP;
}

void V0PhotonCut::SetRequireITSTPC(bool flag)
{
mRequireITSTPC = flag;
Expand Down
32 changes: 0 additions & 32 deletions PWGEM/PhotonMeson/Core/V0PhotonCut.h
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@ class V0PhotonCut : public TNamed
kITSNCls,
kITSChi2NDF,
kITSClusterSize,
kIsWithinBeamPipe,
kRequireITSTPC,
kRequireITSonly,
kRequireTPConly,
Expand Down Expand Up @@ -142,9 +141,6 @@ class V0PhotonCut : public TNamed
if (!IsSelectedTrack(track, V0PhotonCuts::kDCAz)) {
return false;
}
if (mIsWithinBP && !IsSelectedTrack(track, V0PhotonCuts::kIsWithinBeamPipe)) {
return false;
}
if (!track.hasITS() && !track.hasTPC()) { // track has to be ITSonly or TPConly or ITS-TPC
return false;
}
Expand Down Expand Up @@ -271,11 +267,6 @@ class V0PhotonCut : public TNamed
if (v0.v0radius() < mMinRxy || mMaxRxy < v0.v0radius()) {
return false;
}
if (mRejectITSib) {
if (v0.v0radius() < 4.f || v0.pca() < -0.05 * v0.v0radius() + 0.3) {
return false;
}
}
return true;
}

Expand Down Expand Up @@ -390,28 +381,6 @@ class V0PhotonCut : public TNamed
return mMinMeanClusterSizeITS < track.meanClusterSizeITSob() * std::cos(std::atan(track.tgl())) && track.meanClusterSizeITSob() * std::cos(std::atan(track.tgl())) < mMaxMeanClusterSizeITS;
}

case V0PhotonCuts::kIsWithinBeamPipe: {
if (!isTPConlyTrack(track)) { // TPC-TRD, TPC-TOF, TPC-TRD-TOF are constrained.
return true;
}

// if (abs(track.y()) > abs(track.x() * TMath::Tan(10.f * TMath::DegToRad())) + 15.f) {
// return false;
// }
if (track.x() < 0.1 && std::fabs(track.y()) > 15.f) {
return false;
}
if (track.x() > 82.9 && std::fabs(track.y()) > std::fabs(track.x() * std::tan(10.f * TMath::DegToRad())) + 5.f) {
return false;
}
if (track.x() > 82.9 && std::fabs(track.y()) < 15.0 && abs(abs(track.z()) - 44.5) < 2.5) {
return false;
}
return true;
// const float slope = TMath::Tan(2 * TMath::ATan(TMath::Exp(-0.5)));
// return !(track.x() > 82.9 && abs(track.y()) < 15.f && abs(abs(track.z()) - track.x() / slope) < 3.f && 15.f < abs(track.dcaXY()));
//// return !(track.x() > 82.9 && abs(track.y()) < 40.f && abs(abs(track.z()) - 47.f) < 3.f && 15.f < abs(track.dcaXY()));
}
case V0PhotonCuts::kRequireITSTPC:
return isITSTPCTrack(track);

Expand Down Expand Up @@ -517,7 +486,6 @@ class V0PhotonCut : public TNamed
float mMaxDcaXY{1e10f}; // max dca in xy plane
float mMaxDcaZ{1e10f}; // max dca in z direction
std::function<float(float)> mMaxDcaXYPtDep{}; // max dca in xy plane as function of pT
bool mIsWithinBP{false};
bool mRequireITSTPC{false};
bool mRequireITSonly{false};
bool mRequireTPConly{false};
Expand Down
14 changes: 10 additions & 4 deletions PWGEM/PhotonMeson/DataModel/gammaTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -209,8 +209,6 @@ DECLARE_SOA_TABLE_VERSIONED(V0Legs_001, "AOD", "V0LEG", 1, //!
track::TPCChi2NCl, track::TPCInnerParam,
track::TPCSignal, pidtpc::TPCNSigmaEl, pidtpc::TPCNSigmaPi,
track::ITSClusterSizes, track::ITSChi2NCl, track::DetectorMap,
mcpidtpc::DeDxTunedMc,
track::X, track::Y, track::Z,

// dynamic column
v0leg::P<v0leg::Px, v0leg::Py, v0leg::Pz>,
Expand All @@ -231,10 +229,19 @@ DECLARE_SOA_TABLE_VERSIONED(V0Legs_001, "AOD", "V0LEG", 1, //!
v0leg::MeanClusterSizeITSob<track::ITSClusterSizes>);

using V0Legs = V0Legs_001;

// iterators
using V0Leg = V0Legs::iterator;

DECLARE_SOA_TABLE_VERSIONED(V0LegsXYZ_000, "AOD", "V0LEGXYZ", 0, track::X, track::Y, track::Z);
using V0LegsXYZ = V0LegsXYZ_000;
// iterators
using V0LegXYZ = V0LegsXYZ::iterator;

DECLARE_SOA_TABLE_VERSIONED(V0LegsDeDxMC_000, "AOD", "V0LEGDEDXMC", 0, mcpidtpc::DeDxTunedMc, o2::soa::Marker<2>);
using V0LegsDeDxMC = V0LegsDeDxMC_000;
// iterators
using V0LegDeDxMC = V0LegsDeDxMC::iterator;

namespace emevent
{
DECLARE_SOA_COLUMN(NgPCM, ngpcm, int);
Expand Down Expand Up @@ -379,7 +386,6 @@ DECLARE_SOA_TABLE_VERSIONED(EMPrimaryElectronsFromDalitz_001, "AOD", "EMPRIMARYE
track::TPCSignal, pidtpc::TPCNSigmaEl, pidtpc::TPCNSigmaPi,
pidtofbeta::Beta, pidtof::TOFNSigmaEl,
track::ITSClusterSizes, track::ITSChi2NCl, track::TOFChi2, track::DetectorMap,
mcpidtpc::DeDxTunedMc,

// dynamic column
track::TPCNClsFound<track::TPCNClsFindable, track::TPCNClsFindableMinusFound>,
Expand Down
16 changes: 9 additions & 7 deletions PWGEM/PhotonMeson/TableProducer/photonconversionbuilder.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,8 @@ using MyTracksIUMC = soa::Join<MyTracksIU, aod::McTrackLabels, aod::mcTPCTuneOnD
struct PhotonConversionBuilder {
Produces<aod::V0PhotonsKF> v0photonskf;
Produces<aod::V0Legs> v0legs;
Produces<aod::V0LegsXYZ> v0legsXYZ;
Produces<aod::V0LegsDeDxMC> v0legsDeDxMC;
// Produces<aod::V0PhotonsKFCov> v0photonskfcov;
// Produces<aod::EMEventsNgPCM> events_ngpcm;

Expand Down Expand Up @@ -367,18 +369,18 @@ struct PhotonConversionBuilder {
template <bool isMC, typename TTrack, typename TShiftedTrack, typename TKFParticle>
void fillTrackTable(TTrack const& track, TShiftedTrack const& shiftedtrack, TKFParticle const& kfp, const float dcaXY, const float dcaZ)
{
float mcTunedTPCSignal = 0.f;
if constexpr (isMC) {
mcTunedTPCSignal = track.mcTunedTPCSignal();
}

v0legs(track.collisionId(), track.globalIndex(), track.sign(),
kfp.GetPx(), kfp.GetPy(), kfp.GetPz(), dcaXY, dcaZ,
track.tpcNClsFindable(), track.tpcNClsFindableMinusFound(), track.tpcNClsFindableMinusCrossedRows(), track.tpcNClsShared(),
track.tpcChi2NCl(), track.tpcInnerParam(), track.tpcSignal(),
track.tpcNSigmaEl(), track.tpcNSigmaPi(),
track.itsClusterSizes(), track.itsChi2NCl(), track.detectorMap(), mcTunedTPCSignal,
shiftedtrack.getX(), shiftedtrack.getY(), shiftedtrack.getZ());
track.itsClusterSizes(), track.itsChi2NCl(), track.detectorMap());

v0legsXYZ(shiftedtrack.getX(), shiftedtrack.getY(), shiftedtrack.getZ());

if constexpr (isMC) {
v0legsDeDxMC(track.mcTunedTPCSignal());
}
}

template <bool isMC, class TBCs, class TCollisions, class TTracks, typename TV0>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -188,8 +188,7 @@ struct skimmerGammaConversion {
theTrack.tpcNClsFindable(), theTrack.tpcNClsFindableMinusFound(), theTrack.tpcNClsFindableMinusCrossedRows(), theTrack.tpcNClsShared(),
theTrack.tpcChi2NCl(), theTrack.tpcInnerParam(), theTrack.tpcSignal(),
theTrack.tpcNSigmaEl(), theTrack.tpcNSigmaPi(),
theTrack.itsClusterSizes(), theTrack.itsChi2NCl(), theTrack.detectorMap(), 0,
theTrack.x(), theTrack.y(), theTrack.z());
theTrack.itsClusterSizes(), theTrack.itsChi2NCl(), theTrack.detectorMap());
}

template <typename TTRACK>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ struct skimmerPrimaryElectronFromDalitzEE {
Preslice<aod::Tracks> perCol = o2::aod::track::collisionId;
Preslice<aod::V0PhotonsKF> perCol_pcm = o2::aod::v0photonkf::collisionId;
Produces<aod::EMPrimaryElectronsFromDalitz> emprimaryelectrons;
Produces<aod::EMPrimaryElectronsDeDxMC> emprimaryelectronsDeDxMC;

// Configurables
Configurable<std::string> ccdburl{"ccdb-url", "http://alice-ccdb.cern.ch", "url of the ccdb repository"};
Expand Down Expand Up @@ -313,18 +314,17 @@ struct skimmerPrimaryElectronFromDalitzEE {
template <bool isMC, typename TCollision, typename TTrack>
void fillTrackTable(TCollision const& collision, TTrack const& track)
{
float mcTunedTPCSignal = 0.f;
if constexpr (isMC) {
mcTunedTPCSignal = track.mcTunedTPCSignal();
}

emprimaryelectrons(collision.globalIndex(), track.globalIndex(), track.sign(),
track.pt(), track.eta(), track.phi(), track.dcaXY(), track.dcaZ(), track.cYY(), track.cZY(), track.cZZ(),
track.tpcNClsFindable(), track.tpcNClsFindableMinusFound(), track.tpcNClsFindableMinusCrossedRows(), track.tpcNClsShared(),
track.tpcChi2NCl(), track.tpcInnerParam(),
track.tpcSignal(), track.tpcNSigmaEl(), track.tpcNSigmaPi(),
track.beta(), track.tofNSigmaEl(),
track.itsClusterSizes(), track.itsChi2NCl(), track.tofChi2(), track.detectorMap(), mcTunedTPCSignal);
track.itsClusterSizes(), track.itsChi2NCl(), track.tofChi2(), track.detectorMap());

if constexpr (isMC) {
emprimaryelectronsDeDxMC(track.mcTunedTPCSignal());
}
}

template <bool isMC, typename TTrack>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,7 @@ struct electronFromDalitzConverter1 {
track.itsClusterSizes(),
track.itsChi2NCl(),
track.tofChi2(),
track.detectorMap(),
0.f);
track.detectorMap());

} // end of track loop
} // end of process
Expand Down
6 changes: 1 addition & 5 deletions PWGEM/PhotonMeson/Tasks/Converters/pcmConverter1.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,7 @@ struct pcmConverter1 {
v0leg.tpcNSigmaPi(),
v0leg.itsClusterSizes(),
v0leg.itsChi2NCl(),
v0leg.detectorMap(),
0.f,
v0leg.x(),
v0leg.y(),
v0leg.z());
v0leg.detectorMap());
} // end of v0leg loop
} // end of process
};
Expand Down
Loading
Loading