Skip to content
Merged
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
137 changes: 66 additions & 71 deletions PWGLF/TableProducer/Nuspex/ebyeMaker.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@
ConfigurableAxis massLambdaAxis{"massLambdaAxis", {400, o2::constants::physics::MassLambda0 - 0.03f, o2::constants::physics::MassLambda0 + 0.03f}, "binning for the lambda invariant-mass"};

// binning of PID QA histograms
ConfigurableAxis momAxis{"momAxisFine", {5.e2, 0.f, 5.f}, "momentum axis binning"};

Check failure on line 202 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
ConfigurableAxis tpcAxis{"tpcAxis", {4.e2, 0.f, 4.e3f}, "tpc signal axis binning"};

Configurable<float> zVtxMax{"zVtxMax", 10.0f, "maximum z position of the primary vertex"};
Expand Down Expand Up @@ -228,13 +228,13 @@
Configurable<float> lambdaPtMax{"lambdaPtMax", 4.f, "maximum (anti)lambda pT (GeV/c)"};

Configurable<float> trackNcrossedRows{"trackNcrossedRows", 70, "Minimum number of crossed TPC rows"};
Configurable<float> trackNclusItsCut{"trackNclusITScut", 2, "Minimum number of ITS clusters"};

Check failure on line 231 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> trackNclusTpcCut{"trackNclusTPCcut", 60, "Minimum number of TPC clusters"};

Check failure on line 232 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> trackChi2Cut{"trackChi2Cut", 4.f, "Maximum chi2/ncls in TPC"};

Configurable<float> v0trackNcrossedRows{"v0trackNcrossedRows", 100, "Minimum number of crossed TPC rows for V0 daughter"};
Configurable<float> v0trackNclusItsCut{"v0trackNclusITScut", 0, "Minimum number of ITS clusters for V0 daughter"};

Check failure on line 236 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> v0trackNclusTpcCut{"v0trackNclusTPCcut", 100, "Minimum number of TPC clusters for V0 daughter"};

Check failure on line 237 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> v0trackNsharedClusTpc{"v0trackNsharedClusTpc", 5, "Maximum number of shared TPC clusters for V0 daughter"};
Configurable<bool> v0requireITSrefit{"v0requireITSrefit", false, "require ITS refit for V0 daughter"};
Configurable<float> vetoMassK0Short{"vetoMassK0Short", 0.01f, "veto for V0 compatible with K0s mass"};
Expand All @@ -246,10 +246,10 @@
Configurable<float> antipNsigmaTpcCutLow{"antipNsigmaTpcCutLow", -4.f, "TPC PID cut low"};
Configurable<float> antipNsigmaTpcCutUp{"antipNsigmaTpcCutUp", 4.f, "TPC PID cut up"};

Configurable<float> v0settingDcaV0Dau{"v0setting_dcav0dau", 0.5f, "DCA V0 Daughters"};

Check failure on line 249 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> v0settingDcaV0Pv{"v0setting_dcav0pv", 1.f, "DCA V0 to Pv"};

Check failure on line 250 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> v0settingDcaDaughToPv{"v0setting_dcadaughtopv", 0.1f, "DCA Pos To PV"};

Check failure on line 251 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<double> v0settingCosPa{"v0setting_cospa", 0.99f, "V0 CosPA"};

Check failure on line 252 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/configurable]

Use lowerCamelCase for names of configurables and use the same name for the struct member as for the JSON string. (Declare the type and names on the same line.)
Configurable<float> v0settingRadius{"v0setting_radius", 5.f, "v0radius"};
Configurable<float> v0settingLifetime{"v0setting_lifetime", 40.f, "v0 lifetime cut"};
Configurable<float> v0settingNSigmaTpc{"v0setting_nsigmatpc", 4.f, "nsigmatpc"};
Expand All @@ -257,7 +257,6 @@

Configurable<LabeledArray<float>> cfgTrackSels{"cfgTrackSels", {kTrackSels, 1, 12, particleName, trackSelsNames}, "Track selections"};
Configurable<LabeledArray<float>> cfgDcaSelsParam{"cfgDcaSelsParam", {kDcaSelsParam[0], 3, 3, dcaSelsNames, dcaParNames}, "DCA threshold settings"};
Configurable<bool> fillMini{"fillMini", false, "fill mini tables"};

std::array<float, kNpart> ptMin;
std::array<float, kNpart> ptTof;
Expand Down Expand Up @@ -568,7 +567,7 @@
for (const auto& track : tracks) {
if (track.trackType() == o2::aod::track::TrackTypeEnum::Run2Tracklet && std::abs(track.eta()) < etaMax && !(doprocessRun3 || doprocessMcRun3)) { // tracklet
nTrackletsColl++;
} else if (std::abs(track.eta()) < etaMax && track.itsNCls() > 3 && (doprocessRun3 || doprocessMcRun3)) { // ITS only + global tracks

Check failure on line 570 in PWGLF/TableProducer/Nuspex/ebyeMaker.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[magic-number]

Avoid magic numbers in expressions. Assign the value to a clearly named variable or constant.
nTrackletsColl++;
}
if (!selectTrack(track)) {
Expand Down Expand Up @@ -987,38 +986,36 @@
histos.fill(HIST("QA/V0MvsCL0"), centralityCl0, centrality);
histos.fill(HIST("QA/trackletsVsV0M"), centrality, multTracklets);

if (fillMini) {
miniCollTable(static_cast<int8_t>(collision.posZ() * 10), 0x0, nTrackletsColl, centrality, nTracksColl);
for (auto& candidateTrack : candidateTracks[0]) { // o2-linter: disable=const-ref-in-for-loop (not a const ref)
auto tk = tracks.rawIteratorAt(candidateTrack.globalIndex);
fillTableMiniTrack<false>(candidateTrack, tk);
}
} else {
collisionEbyeTable(centrality, collision.posZ());
for (const auto& candidateV0 : candidateV0s) {
lambdaEbyeTable(
miniCollTable(static_cast<int8_t>(collision.posZ() * 10), 0x0, nTrackletsColl, centrality, nTracksColl);
for (auto& candidateTrack : candidateTracks[0]) { // o2-linter: disable=const-ref-in-for-loop (not a const ref)
auto tk = tracks.rawIteratorAt(candidateTrack.globalIndex);
fillTableMiniTrack<false>(candidateTrack, tk);
}

collisionEbyeTable(centrality, collision.posZ());
for (const auto& candidateV0 : candidateV0s) {
lambdaEbyeTable(
collisionEbyeTable.lastIndex(),
candidateV0.pt,
candidateV0.eta,
candidateV0.mass,
candidateV0.dcav0pv,
candidateV0.dcav0daugh,
candidateV0.cpa,
candidateV0.globalIndexNeg,
candidateV0.globalIndexPos);
}
for (int iP{0}; iP < kNpart; ++iP) {
for (const auto& candidateTrack : candidateTracks[iP]) { // deuterons + protons
nucleiEbyeTable(
collisionEbyeTable.lastIndex(),
candidateV0.pt,
candidateV0.eta,
candidateV0.mass,
candidateV0.dcav0pv,
candidateV0.dcav0daugh,
candidateV0.cpa,
candidateV0.globalIndexNeg,
candidateV0.globalIndexPos);
}
for (int iP{0}; iP < kNpart; ++iP) {
for (const auto& candidateTrack : candidateTracks[iP]) { // deuterons + protons
nucleiEbyeTable(
collisionEbyeTable.lastIndex(),
candidateTrack.pt,
candidateTrack.eta,
candidateTrack.mass,
candidateTrack.dcapv,
candidateTrack.tpcncls,
candidateTrack.tpcnsigma,
candidateTrack.tofmass);
}
candidateTrack.pt,
candidateTrack.eta,
candidateTrack.mass,
candidateTrack.dcapv,
candidateTrack.tpcncls,
candidateTrack.tpcnsigma,
candidateTrack.tofmass);
}
}
}
Expand Down Expand Up @@ -1129,46 +1126,44 @@
fillMcEvent(collision, tracks, v0TableThisCollision, centrality, mcParticles, mcLab);
fillMcGen(mcParticles, mcLab, collision.mcCollisionId());

if (fillMini) {
miniCollTable(static_cast<int8_t>(collision.posZ() * 10), nChPartGen, nTrackletsColl, centrality, nTracksColl);
for (auto& candidateTrack : candidateTracks[0]) { // o2-linter: disable=const-ref-in-for-loop (not a const ref)
auto tk = candidateTrack.isreco ? tracks.rawIteratorAt(candidateTrack.globalIndex) : tracks.rawIteratorAt(0);
fillTableMiniTrack<true>(candidateTrack, tk);
}
} else {
collisionEbyeTable(centrality, collision.posZ());
for (const auto& candidateV0 : candidateV0s) {
mcLambdaEbyeTable(
miniCollTable(static_cast<int8_t>(collision.posZ() * 10), nChPartGen, nTrackletsColl, centrality, nTracksColl);
for (auto& candidateTrack : candidateTracks[0]) { // o2-linter: disable=const-ref-in-for-loop (not a const ref)
auto tk = candidateTrack.isreco ? tracks.rawIteratorAt(candidateTrack.globalIndex) : tracks.rawIteratorAt(0);
fillTableMiniTrack<true>(candidateTrack, tk);
}

collisionEbyeTable(centrality, collision.posZ());
for (const auto& candidateV0 : candidateV0s) {
mcLambdaEbyeTable(
collisionEbyeTable.lastIndex(),
candidateV0.pt,
candidateV0.eta,
candidateV0.mass,
candidateV0.dcav0pv,
candidateV0.dcav0daugh,
candidateV0.cpa,
candidateV0.globalIndexNeg,
candidateV0.globalIndexPos,
candidateV0.genpt,
candidateV0.geneta,
candidateV0.pdgcode,
candidateV0.isreco);
}
for (int iP{0}; iP < kNpart; ++iP) {
for (const auto& candidateTrack : candidateTracks[iP]) { // deuterons + protons
mcNucleiEbyeTable(
collisionEbyeTable.lastIndex(),
candidateV0.pt,
candidateV0.eta,
candidateV0.mass,
candidateV0.dcav0pv,
candidateV0.dcav0daugh,
candidateV0.cpa,
candidateV0.globalIndexNeg,
candidateV0.globalIndexPos,
candidateV0.genpt,
candidateV0.geneta,
candidateV0.pdgcode,
candidateV0.isreco);
}
for (int iP{0}; iP < kNpart; ++iP) {
for (const auto& candidateTrack : candidateTracks[iP]) { // deuterons + protons
mcNucleiEbyeTable(
collisionEbyeTable.lastIndex(),
candidateTrack.pt,
candidateTrack.eta,
candidateTrack.mass,
candidateTrack.dcapv,
candidateTrack.tpcncls,
candidateTrack.tpcnsigma,
candidateTrack.tofmass,
candidateTrack.genpt,
candidateTrack.geneta,
candidateTrack.pdgcode,
candidateTrack.isreco);
}
candidateTrack.pt,
candidateTrack.eta,
candidateTrack.mass,
candidateTrack.dcapv,
candidateTrack.tpcncls,
candidateTrack.tpcnsigma,
candidateTrack.tofmass,
candidateTrack.genpt,
candidateTrack.geneta,
candidateTrack.pdgcode,
candidateTrack.isreco);
}
}
}
Expand Down
Loading