Skip to content
Open
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
8 changes: 8 additions & 0 deletions PWGLF/DataModel/LFNucleiTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,12 @@
DECLARE_SOA_COLUMN(RunNumber, runNumber, int);
DECLARE_SOA_COLUMN(CentFV0M, centFV0M, float);
DECLARE_SOA_COLUMN(CentFT0M, centFT0M, float);
DECLARE_SOA_COLUMN(MultNTracksPVeta1, multNTracksPVeta1, int);
DECLARE_SOA_DYNAMIC_COLUMN(IsInelGt0, isInelGt0, // is INEL > 0
[](int multPveta1) -> bool { return multPveta1 > 0; });
DECLARE_SOA_DYNAMIC_COLUMN(IsInelGt1, isInelGt1, // is INEL > 1
[](int multPveta1) -> bool { return multPveta1 > 1; });
DECLARE_SOA_DYNAMIC_COLUMN(Selection_Bit, selection_bit, //! Dummy

Check failure on line 41 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
[](o2::aod::evsel::EventSelectionFlags /*v*/) -> bool { return true; });
} // namespace fullEvent
DECLARE_SOA_TABLE(LfNuclEvents, "AOD", "LFNUCLEvent",
Expand All @@ -44,6 +49,9 @@
collision::PosZ,
fullEvent::CentFV0M,
fullEvent::CentFT0M,
fullEvent::MultNTracksPVeta1,
fullEvent::IsInelGt0<fullEvent::MultNTracksPVeta1>,
fullEvent::IsInelGt1<fullEvent::MultNTracksPVeta1>,
fullEvent::IsEventReject,
fullEvent::RunNumber,
fullEvent::Selection_Bit<>);
Expand All @@ -53,24 +61,24 @@
{
DECLARE_SOA_INDEX_COLUMN(LfNuclEvent, lfNuclEvent);
DECLARE_SOA_COLUMN(Pt, pt, float);
DECLARE_SOA_DYNAMIC_COLUMN(P, p, [](float pt, float eta) -> float { return pt * cosh(eta); });

Check failure on line 64 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
DECLARE_SOA_COLUMN(Eta, eta, float);
DECLARE_SOA_COLUMN(Sign, sign, int16_t);
DECLARE_SOA_COLUMN(Phi, phi, float);
DECLARE_SOA_COLUMN(IsPVContributor, isPVContributor, bool);
DECLARE_SOA_DYNAMIC_COLUMN(Rapidity, rapidity,
[](float pt, float eta, float mass) -> float {
const auto p = pt * cosh(eta);

Check failure on line 71 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
const auto pz = pt * sinh(eta);

Check failure on line 72 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
const auto energy = sqrt(p * p + mass * mass);

Check failure on line 73 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
return 0.5f * log((energy + pz) / (energy - pz));

Check failure on line 74 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
});
// ITS
DECLARE_SOA_COLUMN(ITSClusterSizes, itsClusterSizes, uint32_t); //! ITS cluster sizes per layer

Check failure on line 77 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
// TPC
DECLARE_SOA_COLUMN(TPCNSigmaPi, tpcNSigmaPi, float);

Check failure on line 79 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_COLUMN(TPCNSigmaKa, tpcNSigmaKa, float);

Check failure on line 80 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_COLUMN(TPCNSigmaPr, tpcNSigmaPr, float);

Check failure on line 81 in PWGLF/DataModel/LFNucleiTables.h

View workflow job for this annotation

GitHub Actions / O2 linter

[name/o2-column]

Use UpperCamelCase for names of O2 columns and matching lowerCamelCase names for their getters.
DECLARE_SOA_COLUMN(TPCNSigmaDe, tpcNSigmaDe, float);
DECLARE_SOA_COLUMN(TPCNSigmaTr, tpcNSigmaTr, float);
DECLARE_SOA_COLUMN(TPCNSigmaHe, tpcNSigmaHe, float);
Expand Down
9 changes: 6 additions & 3 deletions PWGLF/TableProducer/Nuspex/LFTreeCreatorNuclei.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,14 @@

#include "PWGLF/DataModel/LFNucleiTables.h"
#include "PWGLF/DataModel/LFParticleIdentification.h"
#include "PWGLF/Utils/inelGt.h"

#include "Common/CCDB/EventSelectionParams.h"
#include "Common/Core/TrackSelection.h"
#include "Common/Core/TrackSelectionDefaults.h"
#include "Common/DataModel/Centrality.h"
#include "Common/DataModel/EventSelection.h"
#include "Common/DataModel/Multiplicity.h"
#include "Common/DataModel/PIDResponseTOF.h"
#include "Common/DataModel/TrackSelectionTables.h"

Expand Down Expand Up @@ -118,7 +120,7 @@ struct LfTreeCreatorNuclei {
(trackSelType.value == 2) ||
(trackSelType.value == 3);
Filter DCAcutFilter = (nabs(aod::track::dcaXY) < cfgCutDCAxy) && (nabs(aod::track::dcaZ) < cfgCutDCAz);
using EventCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::CentFV0As>;
using EventCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::Mults, aod::CentFT0Ms, aod::CentFV0As>;
using TrackCandidates = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::TrackSelection, aod::TrackSelectionExtension,
aod::pidTOFbeta, aod::TOFSignal, aod::pidEvTimeFlags,
aod::pidTPCLfFullPi, aod::pidTOFFullPi,
Expand Down Expand Up @@ -202,6 +204,7 @@ struct LfTreeCreatorNuclei {
collision.posZ(),
collision.centFV0A(),
collision.centFT0M(),
collision.multNTracksPVeta1(),
collision.sel8(),
collision.bc().runNumber());

Expand Down Expand Up @@ -250,15 +253,15 @@ struct LfTreeCreatorNuclei {
track.tpcSignal(),
track.pt(), track.eta(), track.phi(),
track.sign(),
track.itsClusterSizes(),
track.itsNCls(),
track.tpcNClsFindable(),
track.tpcNClsFindableMinusFound(),
track.tpcNClsFindableMinusCrossedRows(),
track.tpcChi2NCl(),
track.itsChi2NCl(),
track.itsClusterMap(),
track.isPVContributor());
track.isPVContributor(),
track.itsClusterSizes());

tableCandidateExtra(
track.tpcNSigmaPi(), track.tpcNSigmaKa(), track.tpcNSigmaPr(),
Expand Down
32 changes: 27 additions & 5 deletions PWGLF/Tasks/Nuspex/LFNucleiBATask.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -497,7 +497,7 @@ struct LFNucleiBATask {
hSkim->GetXaxis()->SetBinLabel(2, "Skimmed events");

if (enableCentrality) {
histos.add<TH2>("event/eventSelection", "eventSelection", HistType::kTH2D, {{8, -0.5, 7.5}, {binsPercentile, "Centrality FT0M"}});
histos.add<TH2>("event/eventSelection", "eventSelection", HistType::kTH2D, {{11, -0.5, 10.5}, {binsPercentile, "Centrality FT0M"}});
auto h2d = histos.get<TH2>(HIST("event/eventSelection"));
if (skimmingOptions.applySkimming)
h2d->GetXaxis()->SetBinLabel(1, "Skimmed events");
Expand All @@ -511,8 +511,11 @@ struct LFNucleiBATask {
h2d->GetXaxis()->SetBinLabel(6, "Sel8 cut");
h2d->GetXaxis()->SetBinLabel(7, "Z-vert Cut");
h2d->GetXaxis()->SetBinLabel(8, "Multiplicity cut");
h2d->GetXaxis()->SetBinLabel(9, "INEL");
h2d->GetXaxis()->SetBinLabel(10, "INEL > 0");
h2d->GetXaxis()->SetBinLabel(11, "INEL > 1");
} else {
histos.add<TH1>("event/eventSelection", "eventSelection", HistType::kTH1D, {{8, -0.5, 7.5}});
histos.add<TH1>("event/eventSelection", "eventSelection", HistType::kTH1D, {{11, -0.5, 10.5}});
auto h1d = histos.get<TH1>(HIST("event/eventSelection"));
if (skimmingOptions.applySkimming)
h1d->GetXaxis()->SetBinLabel(1, "Skimmed events");
Expand All @@ -526,6 +529,9 @@ struct LFNucleiBATask {
h1d->GetXaxis()->SetBinLabel(6, "Sel8 cut");
h1d->GetXaxis()->SetBinLabel(7, "Z-vert Cut");
h1d->GetXaxis()->SetBinLabel(8, "Multiplicity cut");
h1d->GetXaxis()->SetBinLabel(9, "INEL");
h1d->GetXaxis()->SetBinLabel(10, "INEL > 0");
h1d->GetXaxis()->SetBinLabel(11, "INEL > 1");
}

if (enableCentrality)
Expand Down Expand Up @@ -2405,10 +2411,26 @@ struct LFNucleiBATask {
if (enableCentrality && (centFT0M <= cfgMultCutLow || centFT0M > cfgMultCutHigh)) {
return;
}
if (enableCentrality)
if (enableCentrality) {
histos.fill(HIST("event/eventSelection"), 7, centFT0M);
else
histos.fill(HIST("event/eventSelection"), 8, centFT0M);
} else {
histos.fill(HIST("event/eventSelection"), 7);
histos.fill(HIST("event/eventSelection"), 8);
}

if (event.isInelGt0()) {
if (enableCentrality)
histos.fill(HIST("event/eventSelection"), 9, centFT0M);
else
histos.fill(HIST("event/eventSelection"), 9);
}
if (event.isInelGt1()) {
if (enableCentrality)
histos.fill(HIST("event/eventSelection"), 10, centFT0M);
else
histos.fill(HIST("event/eventSelection"), 10);
}

float gamma = 0., massTOF = 0., massTOFhe = 0., massTOFantihe = 0., heTPCmomentum = 0.f, antiheTPCmomentum = 0.f, heP = 0.f, antiheP = 0.f, hePt = 0.f, antihePt = 0.f, antiDPt = 0.f, DPt = 0.f;
bool isTritonTPCpid = false;
Expand Down Expand Up @@ -6090,7 +6112,7 @@ struct LFNucleiBATask {
}
}

using EventCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::CentFV0As, aod::CentFT0Cs>;
using EventCandidates = soa::Join<aod::Collisions, aod::EvSels, aod::Mults, aod::CentFT0Ms, aod::CentFV0As, aod::CentFT0Cs>;
using EventCandidatesMC = soa::Join<EventCandidates, aod::McCollisionLabels>;

using TrackCandidates0 = soa::Join<aod::Tracks, aod::TracksIU, aod::TracksExtra, aod::TracksDCA, aod::TrackSelection, aod::TrackSelectionExtension,
Expand Down
Loading