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
34 changes: 22 additions & 12 deletions PWGHF/TableProducer/candidateCreator2Prong.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@

#include "PWGHF/DataModel/CandidateReconstructionTables.h"
#include "PWGHF/Utils/utilsBfieldCCDB.h"
#include "PWGHF/Utils/utilsEvSelHf.h"

using namespace o2;
using namespace o2::analysis;
Expand All @@ -55,6 +56,10 @@ struct HfCandidateCreator2Prong {
// centrality
Configurable<float> centralityMin{"centralityMin", 0., "Minimum centrality"};
Configurable<float> centralityMax{"centralityMax", 100., "Maximum centrality"};
// event selection
Configurable<bool> useSel8Trigger{"useSel8Trigger", true, "apply the sel8 event selection"};
Configurable<float> maxPvPosZ{"maxPvPosZ", 10.f, "max. PV posZ (cm)"};
Configurable<bool> useTimeFrameBorderCut{"useTimeFrameBorderCut", true, "apply TF border cut"};
// vertexing
Configurable<bool> constrainKfToPv{"constrainKfToPv", true, "constraint KFParticle to PV"};
Configurable<bool> propagateToPCA{"propagateToPCA", true, "create tracks version propagated to PCA"};
Expand Down Expand Up @@ -161,6 +166,11 @@ struct HfCandidateCreator2Prong {
}
}

/// event selection: sel8, PV posZ, TF border cut
if (!isHfCollisionSelected(collision, useSel8Trigger, maxPvPosZ, useTimeFrameBorderCut)) {
continue;
}

auto track0 = rowTrackIndexProng2.template prong0_as<TTracks>();
auto track1 = rowTrackIndexProng2.template prong1_as<TTracks>();
auto trackParVarPos1 = getTrackParCov(track0);
Expand Down Expand Up @@ -427,7 +437,7 @@ struct HfCandidateCreator2Prong {
///////////////////////////////////

/// @brief process function using DCA fitter w/ PV refit and w/o centrality selections
void processPvRefitWithDCAFitterN(aod::Collisions const& collisions,
void processPvRefitWithDCAFitterN(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -437,7 +447,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithDCAFitterN, "Run candidate creator using DCA fitter w/ PV refit and w/o centrality selections", false);

/// @brief process function using DCA fitter w/o PV refit and w/o centrality selections
void processNoPvRefitWithDCAFitterN(aod::Collisions const& collisions,
void processNoPvRefitWithDCAFitterN(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -447,7 +457,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processNoPvRefitWithDCAFitterN, "Run candidate creator using DCA fitter w/o PV refit and w/o centrality selections", true);

/// @brief process function using KFParticle package w/ PV refit and w/o centrality selections
void processPvRefitWithKFParticle(aod::Collisions const& collisions,
void processPvRefitWithKFParticle(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -457,7 +467,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithKFParticle, "Run candidate creator using KFParticle package w/ PV refit and w/o centrality selections", false);

/// @brief process function using KFParticle package w/o PV refit and w/o centrality selections
void processNoPvRefitWithKFParticle(aod::Collisions const& collisions,
void processNoPvRefitWithKFParticle(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -473,7 +483,7 @@ struct HfCandidateCreator2Prong {
/////////////////////////////////////////////

/// @brief process function using DCA fitter w/ PV refit and w/ centrality selection on FT0C
void processPvRefitWithDCAFitterNCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processPvRefitWithDCAFitterNCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -483,7 +493,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithDCAFitterNCentFT0C, "Run candidate creator using DCA fitter w/ PV refit and w/ centrality selection on FT0C", false);

/// @brief process function using DCA fitter w/o PV refit and w/ centrality selection FT0C
void processNoPvRefitWithDCAFitterNCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processNoPvRefitWithDCAFitterNCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -493,7 +503,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processNoPvRefitWithDCAFitterNCentFT0C, "Run candidate creator using DCA fitter w/o PV refit and w/ centrality selection FT0C", false);

/// @brief process function using KFParticle package w/ PV refit and w/ centrality selection on FT0C
void processPvRefitWithKFParticleCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processPvRefitWithKFParticleCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -503,7 +513,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithKFParticleCentFT0C, "Run candidate creator using KFParticle package w/ PV refit and w/ centrality selection on FT0C", false);

/// @brief process function using KFParticle package w/o PV refit and w/o centrality selections
void processNoPvRefitWithKFParticleCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processNoPvRefitWithKFParticleCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -519,7 +529,7 @@ struct HfCandidateCreator2Prong {
/////////////////////////////////////////////

/// @brief process function using DCA fitter w/ PV refit and w/ centrality selection on FT0M
void processPvRefitWithDCAFitterNCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processPvRefitWithDCAFitterNCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -529,7 +539,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithDCAFitterNCentFT0M, "Run candidate creator using DCA fitter w/ PV refit and w/ centrality selection on FT0M", false);

/// @brief process function using DCA fitter w/o PV refit and w/ centrality selection FT0M
void processNoPvRefitWithDCAFitterNCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processNoPvRefitWithDCAFitterNCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -539,7 +549,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processNoPvRefitWithDCAFitterNCentFT0M, "Run candidate creator using DCA fitter w/o PV refit and w/ centrality selection FT0M", false);

/// @brief process function using KFParticle package w/ PV refit and w/ centrality selection on FT0M
void processPvRefitWithKFParticleCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processPvRefitWithKFParticleCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
soa::Join<aod::Hf2Prongs, aod::HfPvRefit2Prong> const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -549,7 +559,7 @@ struct HfCandidateCreator2Prong {
PROCESS_SWITCH(HfCandidateCreator2Prong, processPvRefitWithKFParticleCentFT0M, "Run candidate creator using KFParticle package w/ PV refit and w/ centrality selection on FT0M", false);

/// @brief process function using KFParticle package w/o PV refit and w/o centrality selections
void processNoPvRefitWithKFParticleCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processNoPvRefitWithKFParticleCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
aod::Hf2Prongs const& rowsTrackIndexProng2,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand Down
22 changes: 16 additions & 6 deletions PWGHF/TableProducer/candidateCreator3Prong.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@

#include "PWGHF/DataModel/CandidateReconstructionTables.h"
#include "PWGHF/Utils/utilsBfieldCCDB.h"
#include "PWGHF/Utils/utilsEvSelHf.h"

using namespace o2;
using namespace o2::analysis;
Expand All @@ -44,6 +45,10 @@ struct HfCandidateCreator3Prong {
// centrality
Configurable<float> centralityMin{"centralityMin", 0., "Minimum centrality"};
Configurable<float> centralityMax{"centralityMax", 100., "Maximum centrality"};
// event selection
Configurable<bool> useSel8Trigger{"useSel8Trigger", true, "apply the sel8 event selection"};
Configurable<float> maxPvPosZ{"maxPvPosZ", 10.f, "max. PV posZ (cm)"};
Configurable<bool> useTimeFrameBorderCut{"useTimeFrameBorderCut", true, "apply TF border cut"};
// vertexing
Configurable<bool> propagateToPCA{"propagateToPCA", true, "create tracks version propagated to PCA"};
Configurable<bool> useAbsDCA{"useAbsDCA", false, "Minimise abs. distance rather than chi2"};
Expand Down Expand Up @@ -154,6 +159,11 @@ struct HfCandidateCreator3Prong {
}
}

/// event selection: sel8, PV posZ, TF border cut
if (!isHfCollisionSelected(collision, useSel8Trigger, maxPvPosZ, useTimeFrameBorderCut)) {
continue;
}

auto track0 = rowTrackIndexProng3.template prong0_as<aod::TracksWCovExtra>();
auto track1 = rowTrackIndexProng3.template prong1_as<aod::TracksWCovExtra>();
auto track2 = rowTrackIndexProng3.template prong2_as<aod::TracksWCovExtra>();
Expand Down Expand Up @@ -284,7 +294,7 @@ struct HfCandidateCreator3Prong {
///////////////////////////////////

/// @brief process function w/ PV refit and w/o centrality selections
void processPvRefit(aod::Collisions const& collisions,
void processPvRefit(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
FilteredPvRefitHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -294,7 +304,7 @@ struct HfCandidateCreator3Prong {
PROCESS_SWITCH(HfCandidateCreator3Prong, processPvRefit, "Run candidate creator with PV refit and w/o centrality selections", false);

/// @brief process function w/o PV refit and w/o centrality selections
void processNoPvRefit(aod::Collisions const& collisions,
void processNoPvRefit(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
FilteredHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -310,7 +320,7 @@ struct HfCandidateCreator3Prong {
/////////////////////////////////////////////

/// @brief process function w/ PV refit and w/ centrality selection on FT0C
void processPvRefitCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processPvRefitCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
FilteredPvRefitHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -320,7 +330,7 @@ struct HfCandidateCreator3Prong {
PROCESS_SWITCH(HfCandidateCreator3Prong, processPvRefitCentFT0C, "Run candidate creator with PV refit and w/ centrality selection on FT0C", false);

/// @brief process function w/o PV refit and w/ centrality selection on FT0C
void processNoPvRefitCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processNoPvRefitCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
FilteredHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -336,7 +346,7 @@ struct HfCandidateCreator3Prong {
/////////////////////////////////////////////

/// @brief process function w/ PV refit and w/ centrality selection on FT0M
void processPvRefitCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processPvRefitCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
FilteredPvRefitHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand All @@ -346,7 +356,7 @@ struct HfCandidateCreator3Prong {
PROCESS_SWITCH(HfCandidateCreator3Prong, processPvRefitCentFT0M, "Run candidate creator with PV refit and w/ centrality selection on FT0M", false);

/// @brief process function w/o PV refit and w/ centrality selection on FT0M
void processNoPvRefitCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processNoPvRefitCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
FilteredHf3Prongs const& rowsTrackIndexProng3,
aod::TracksWCovExtra const& tracks,
aod::BCsWithTimestamps const& bcWithTimeStamps)
Expand Down
16 changes: 13 additions & 3 deletions PWGHF/TableProducer/candidateCreatorCascade.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@

#include "PWGHF/DataModel/CandidateReconstructionTables.h"
#include "PWGHF/Utils/utilsBfieldCCDB.h"
#include "PWGHF/Utils/utilsEvSelHf.h"

using namespace o2;
using namespace o2::analysis;
Expand All @@ -42,6 +43,10 @@ struct HfCandidateCreatorCascade {
// centrality
Configurable<float> centralityMin{"centralityMin", 0., "Minimum centrality"};
Configurable<float> centralityMax{"centralityMax", 100., "Maximum centrality"};
// event selection
Configurable<bool> useSel8Trigger{"useSel8Trigger", true, "apply the sel8 event selection"};
Configurable<float> maxPvPosZ{"maxPvPosZ", 10.f, "max. PV posZ (cm)"};
Configurable<bool> useTimeFrameBorderCut{"useTimeFrameBorderCut", true, "apply TF border cut"};
// vertexing
// Configurable<double> bz{"bz", 5., "magnetic field"};
Configurable<bool> propagateToPCA{"propagateToPCA", true, "create tracks version propagated to PCA"};
Expand Down Expand Up @@ -133,6 +138,11 @@ struct HfCandidateCreatorCascade {
}
}

/// event selection: sel8, PV posZ, TF border cut
if (!isHfCollisionSelected(collision, useSel8Trigger, maxPvPosZ, useTimeFrameBorderCut)) {
continue;
}

const auto& bach = casc.prong0_as<aod::TracksWCov>();
LOGF(debug, "V0 %d in HF cascade %d.", casc.v0Id(), casc.globalIndex());
if (!casc.has_v0()) {
Expand Down Expand Up @@ -297,7 +307,7 @@ struct HfCandidateCreatorCascade {
}

/// @brief process function w/o centrality selections
void processNoCent(aod::Collisions const& collisions,
void processNoCent(soa::Join<aod::Collisions, aod::EvSels> const& collisions,
aod::HfCascades const& rowsTrackIndexCasc,
aod::V0sLinked const& v0sLinked,
aod::V0Datas const& v0Data,
Expand All @@ -310,7 +320,7 @@ struct HfCandidateCreatorCascade {
PROCESS_SWITCH(HfCandidateCreatorCascade, processNoCent, " Run candidate creator w/o centrality selections", true);

/// @brief process function w/ centrality selection on FT0C
void processCentFT0C(soa::Join<aod::Collisions, aod::CentFT0Cs> const& collisions,
void processCentFT0C(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs> const& collisions,
aod::HfCascades const& rowsTrackIndexCasc,
aod::V0sLinked const& v0sLinked,
aod::V0Datas const& v0Data,
Expand All @@ -323,7 +333,7 @@ struct HfCandidateCreatorCascade {
PROCESS_SWITCH(HfCandidateCreatorCascade, processCentFT0C, " Run candidate creator w/ centrality selection on FT0C", false);

/// @brief process function w/ centrality selection on FT0M
void processCentFT0M(soa::Join<aod::Collisions, aod::CentFT0Ms> const& collisions,
void processCentFT0M(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms> const& collisions,
aod::HfCascades const& rowsTrackIndexCasc,
aod::V0sLinked const& v0sLinked,
aod::V0Datas const& v0Data,
Expand Down
Loading