Skip to content

Commit a51a775

Browse files
authored
Solve repeat count for trigger
1 parent ee88a3c commit a51a775

File tree

1 file changed

+58
-66
lines changed

1 file changed

+58
-66
lines changed

PWGHF/TableProducer/treeCreatorOmegacSt.cxx

Lines changed: 58 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,16 @@
1717
/// \author Ruiqi Yin
1818

1919
#include "PWGHF/DataModel/TrackIndexSkimmingTables.h"
20-
#include "PWGHF/Utils/utilsEvSelHf.h"
2120
#include "PWGHF/Utils/utilsTrkCandHf.h"
21+
#include "PWGHF/Utils/utilsEvSelHf.h"
2222
#include "PWGLF/DataModel/LFStrangenessTables.h"
2323

2424
#include "Common/Core/RecoDecay.h"
2525
#include "Common/Core/Zorro.h"
2626
#include "Common/Core/ZorroSummary.h"
2727
#include "Common/Core/trackUtilities.h"
28-
#include "Common/DataModel/Centrality.h"
2928
#include "Common/DataModel/CollisionAssociationTables.h"
29+
#include "Common/DataModel/Centrality.h"
3030
#include "Common/DataModel/EventSelection.h"
3131
#include "Common/DataModel/PIDResponseTOF.h"
3232
#include "Common/DataModel/PIDResponseTPC.h"
@@ -278,13 +278,13 @@ struct HfTreeCreatorOmegacSt {
278278
// whether to require TOF in addition to TPC
279279
Configurable<bool> useTofPid{"useTofPid", false, "Require TOF PID together with TPC PID when true; otherwise use TPC only"};
280280

281-
// pT cut for CharmBaryon
281+
//pT cut for CharmBaryon
282282
Configurable<float> minPtCharmedBaryon{"minPtCharmedBaryon", 0.f, "Minimum pT for the charmed baryon"};
283283
Configurable<float> maxPtCharmedBaryon{"maxPtCharmedBaryon", 50.f, "Maximum pT for the charmed baryon"};
284284

285285
// CPA cuts (defaults: >= 0.9)
286286
Configurable<float> minCpaCharmedBaryon{"minCpaCharmedBaryon", 0.9f, "Minimum CPA for charmed baryon"};
287-
Configurable<float> minCpaXYCharmedBaryon{"minCpaXYCharmedBaryon", 0.9f, "Minimum CPA XY for charmed baryon"}; // remove maybe???
287+
Configurable<float> minCpaXYCharmedBaryon{"minCpaXYCharmedBaryon", 0.9f, "Minimum CPA XY for charmed baryon"};//remove maybe???
288288
Configurable<float> minCpaCasc{"minCpaCasc", 0.9f, "Minimum CPA for cascade"};
289289
Configurable<float> minCpaXYCasc{"minCpaXYCasc", 0.9f, "Minimum CPA XY for cascade"};
290290

@@ -494,24 +494,15 @@ struct HfTreeCreatorOmegacSt {
494494
const auto matCorr = static_cast<o2::base::Propagator::MatCorrType>(materialCorrectionType.value);
495495

496496
for (const auto& collision : collisions) {
497-
// Event selection & centrality using HF helper
498-
float centrality{-1.f};
499-
const auto rejectionMask = hfEvSel.getHfCollisionRejectionMask<true, CentEstimator, aod::BCsWithTimestamps>(collision, centrality, ccdb, registry);
500-
if (rejectionMask != 0) {
501-
continue; // reject collisions failing HF event selection
502-
}
503-
// record event-level monitoring (centrality, vertex, etc.)
504-
hfEvSel.fillHistograms(collision, rejectionMask, centrality);
505-
const auto bc = collision.template bc_as<aod::BCsWithTimestamps>();
506-
if (runNumber != bc.runNumber()) {
507-
if (skimmedProcessing) {
508-
if (runNumber == 0) {
509-
zorroSummary.setObject(zorro.getZorroSummary());
510-
}
511-
zorro.initCCDB(ccdb.service, bc.runNumber(), bc.timestamp(), cfgTriggersOfInterest.value);
512-
zorro.populateHistRegistry(registry, bc.runNumber());
497+
// Event selection & centrality using HF helper
498+
float centrality{-1.f};
499+
const auto rejectionMask = hfEvSel.getHfCollisionRejectionMask<true, CentEstimator, aod::BCsWithTimestamps>(collision, centrality, ccdb, registry);
500+
if (rejectionMask != 0) {
501+
continue; // reject collisions failing HF event selection
513502
}
514-
runNumber = bc.runNumber();
503+
hfEvSel.fillHistograms(collision, rejectionMask, centrality);
504+
const auto bc = collision.template bc_as<aod::BCsWithTimestamps>();
505+
515506
auto timestamp = bc.timestamp();
516507

517508
if (auto* grpo = ccdb->getForTimeStamp<o2::parameters::GRPObject>(grpPath, timestamp)) {
@@ -524,7 +515,7 @@ struct HfTreeCreatorOmegacSt {
524515
LOG(fatal) << "Got nullptr from CCDB for path " << grpMagPath << " of object GRPMagField and " << grpPath << " of object GRPObject for timestamp " << timestamp;
525516
}
526517
df2.setBz(bz);
527-
}
518+
528519
uint32_t toiMask = 0;
529520
if (skimmedProcessing) {
530521
bool const sel = zorro.isSelected(bc.globalBC());
@@ -696,7 +687,7 @@ struct HfTreeCreatorOmegacSt {
696687
(track.tpcNClsCrossedRows() >= TpcNclsFindableFraction * track.tpcNClsFindable()) &&
697688
(track.tpcChi2NCl() <= TpcChi2NclMax) &&
698689
(track.itsChi2NCl() <= ItsChi2NclMax)) {
699-
// TPC and TOF PID for pion/kaon from chambaryon
690+
//TPC and TOF PID for pion/kaon from chambaryon
700691
const bool passTPCpid = (std::abs(track.tpcNSigmaPi()) < maxNSigmaPion) || (std::abs(track.tpcNSigmaKa()) < maxNSigmaKaon);
701692
const float tofPiAbs = std::abs(track.tofNSigmaPi());
702693
const float tofKaAbs = std::abs(track.tofNSigmaKa());
@@ -799,10 +790,10 @@ struct HfTreeCreatorOmegacSt {
799790
//--- do the MC Rec match
800791
if (mcParticles) {
801792
auto arrayDaughters = std::array{
802-
trackId.template track_as<TracksExtMc>(), // bachelor <- charm baryon
803-
casc.template bachelor_as<TracksExtMc>(), // bachelor <- cascade
804-
v0.template posTrack_as<TracksExtMc>(), // p <- lambda
805-
v0.template negTrack_as<TracksExtMc>()}; // pi <- lambda
793+
trackId.template track_as<TracksExtMc>(), // bachelor <- charm baryon
794+
casc.template bachelor_as<TracksExtMc>(), // bachelor <- cascade
795+
v0.template posTrack_as<TracksExtMc>(), // p <- lambda
796+
v0.template negTrack_as<TracksExtMc>()}; // pi <- lambda
806797

807798
auto arrayDaughtersCasc = std::array{
808799
casc.template bachelor_as<TracksExtMc>(), // bachelor <- cascade
@@ -896,7 +887,7 @@ struct HfTreeCreatorOmegacSt {
896887
bachelor.tpcNSigmaKa(),
897888
bachelor.tofNSigmaKa(),
898889
momenta[0][0], // cascade momentum
899-
momenta[0][1],
890+
momenta[0][1],
900891
momenta[0][2],
901892
static_cast<bool>(trackCasc.sign() > 0),
902893
momenta[1][0], // pion/kaon momentum
@@ -950,45 +941,46 @@ struct HfTreeCreatorOmegacSt {
950941
}
951942
}
952943
}
944+
945+
// No centrality selection
946+
void processDataNocent(Collisions const& collisions,
947+
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
948+
aod::TrackAssoc const& trackIndices,
949+
aod::Cascades const&,
950+
aod::V0s const&,
951+
TracksExt const&,
952+
aod::BCsWithTimestamps const&)
953+
{
954+
fillTable<CentralityEstimator::None, TracksExt>(collisions, trackedCascades, trackIndices);
955+
}
956+
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataNocent, "Process data (No centrality)", true);
957+
958+
// FT0C centrality selection
959+
void processDataFT0C(CollisionsFT0C const& collisions,
960+
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
961+
aod::TrackAssoc const& trackIndices,
962+
aod::Cascades const&,
963+
aod::V0s const&,
964+
TracksExt const&,
965+
aod::BCsWithTimestamps const&)
966+
{
967+
fillTable<CentralityEstimator::FT0C, TracksExt>(collisions, trackedCascades, trackIndices);
968+
}
969+
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataFT0C, "Process data (FT0C centrality)", false);
970+
971+
// FT0M centrality selection
972+
void processDataFT0M(CollisionsFT0M const& collisions,
973+
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
974+
aod::TrackAssoc const& trackIndices,
975+
aod::Cascades const&,
976+
aod::V0s const&,
977+
TracksExt const&,
978+
aod::BCsWithTimestamps const&)
979+
{
980+
fillTable<CentralityEstimator::FT0M, TracksExt>(collisions, trackedCascades, trackIndices);
981+
}
982+
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataFT0M, "Process data (FT0M centrality)", false);
953983

954-
// No centrality selection
955-
void processDataNocent(Collisions const& collisions,
956-
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
957-
aod::TrackAssoc const& trackIndices,
958-
aod::Cascades const&,
959-
aod::V0s const&,
960-
TracksExt const&,
961-
aod::BCsWithTimestamps const&)
962-
{
963-
fillTable<CentralityEstimator::None, TracksExt>(collisions, trackedCascades, trackIndices);
964-
}
965-
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataNocent, "Process data (No centrality)", true);
966-
967-
// FT0C centrality selection
968-
void processDataFT0C(CollisionsFT0C const& collisions,
969-
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
970-
aod::TrackAssoc const& trackIndices,
971-
aod::Cascades const&,
972-
aod::V0s const&,
973-
TracksExt const&,
974-
aod::BCsWithTimestamps const&)
975-
{
976-
fillTable<CentralityEstimator::FT0C, TracksExt>(collisions, trackedCascades, trackIndices);
977-
}
978-
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataFT0C, "Process data (FT0C centrality)", false);
979-
980-
// FT0M centrality selection
981-
void processDataFT0M(CollisionsFT0M const& collisions,
982-
soa::SmallGroups<aod::AssignedTrackedCascades> const& trackedCascades,
983-
aod::TrackAssoc const& trackIndices,
984-
aod::Cascades const&,
985-
aod::V0s const&,
986-
TracksExt const&,
987-
aod::BCsWithTimestamps const&)
988-
{
989-
fillTable<CentralityEstimator::FT0M, TracksExt>(collisions, trackedCascades, trackIndices);
990-
}
991-
PROCESS_SWITCH(HfTreeCreatorOmegacSt, processDataFT0M, "Process data (FT0M centrality)", false);
992984

993985
// MC reco: No centrality selection
994986
void processMcRecNocent(Collisions const& collisions,

0 commit comments

Comments
 (0)