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
250 changes: 124 additions & 126 deletions PWGLF/Tasks/Nuspex/spectraTOF.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@
Configurable<bool> usePDGcode{"usePDGcode", false, "choose if include PDG code for MC closure test"};
Configurable<bool> enableTPCTOFVsMult{"enableTPCTOFVsMult", false, "Produce TPC-TOF plots vs multiplicity"};
Configurable<bool> includeCentralityToTracks{"includeCentralityToTracks", false, "choose if include Centrality to tracks"};
Configurable<int> min_ITS_nClusters{"min_ITS_nClusters", 5, "minimum number of found ITS clusters"};

Check warning on line 144 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.

// Histograms
HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject};
Expand Down Expand Up @@ -440,20 +440,20 @@
histos.add("Data/cent/neg/pt/its_tof", "neg ITS-TOF", kTH3D, {ptAxis, multAxis, occupancyAxis});
}
const AxisSpec nsigmaTPCAxisOccupancy{binsOptions.binsnsigmaTPC, "nsigmaTPC"};
histos.add("nsigmatpc/mc_closure/pos/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/pos/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/pi", "mc_closure dependent pion", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});

histos.add("nsigmatpc/mc_closure/pos/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/pos/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/ka", "mc_closure dependent kaon", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});

histos.add("nsigmatpc/mc_closure/pos/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/pos/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatpc/mc_closure/neg/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/pos/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});
histos.add("nsigmatof/mc_closure/neg/pr", "mc_closure dependent proton", kTHnSparseD, {ptAxis, nsigmaTPCAxisOccupancy, multAxis});

if (doprocessOccupancy) {
histos.add("nsigmatpc/test_occupancy/Mult_vs_Occupancy", "occuppancy vs Multiplicity", kTHnSparseD, {multAxis, occupancyAxis});
Expand Down Expand Up @@ -1189,7 +1189,7 @@
return false;
}
}
return (std::abs(track.dcaXY()) <= (maxDcaXYFactor.value * (0.0105f + 0.0350f / pow(track.pt(), 1.1f))));

Check warning on line 1192 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
}
return track.isGlobalTrack();
}
Expand Down Expand Up @@ -1420,36 +1420,36 @@
aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs>;
using TrackCandidates = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA,
aod::pidEvTimeFlags, aod::TrackSelection, aod::TOFSignal>;
void processMCclosure(CollisionCandidates::iterator const& collisions,
soa::Join<TrackCandidates,
aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr,
aod::pidTOFFullPi, aod::pidTOFFullKa, aod::pidTOFFullPr> const& tracks,
aod::McTrackLabels const& mcTrackLabels, aod::McParticles const& mcParticles)
{
void processMCclosure(CollisionCandidates::iterator const& collisions,
soa::Join<TrackCandidates,
aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr,
aod::pidTOFFullPi, aod::pidTOFFullKa, aod::pidTOFFullPr> const& tracks,
aod::McTrackLabels const& mcTrackLabels, aod::McParticles const& mcParticles)
{
const float multiplicity = getMultiplicity(collisions);
// int trackwoCut = 0; int trackwCut = 0;
// int trackwoCut = 0; int trackwCut = 0;

for (const auto& track : tracks) {
if (!track.has_collision()) {
continue;
}
const auto& collision = track.collision_as<CollisionCandidates>();
if (!isEventSelected<false, false>(collision)) {
if (!track.has_collision()) {
continue;
}
const auto& collision = track.collision_as<CollisionCandidates>();
if (!isEventSelected<false, false>(collision)) {
continue;
}
if (!isTrackSelected<true>(track, collision)) {
if (!isTrackSelected<true>(track, collision)) {
continue;
}
// trackwoCut++;
if (std::abs(track.dcaXY()) > 0.05) { // Skipping tracks that don't pass the standard cuts
return;
}
// trackwoCut++;
if (std::abs(track.dcaXY()) > 0.05) { // Skipping tracks that don't pass the standard cuts
return;
}

// trackwCut++;
const auto& mcLabel = mcTrackLabels.iteratorAt(track.globalIndex());
const auto& mcParticle = mcParticles.iteratorAt(mcLabel.mcParticleId());
int pdgCode = mcParticle.pdgCode();
const auto& nsigmaTPCPi = o2::aod::pidutils::tpcNSigma<2>(track);
// trackwCut++;
const auto& mcLabel = mcTrackLabels.iteratorAt(track.globalIndex());
const auto& mcParticle = mcParticles.iteratorAt(mcLabel.mcParticleId());
int pdgCode = mcParticle.pdgCode();
const auto& nsigmaTPCPi = o2::aod::pidutils::tpcNSigma<2>(track);
const auto& nsigmaTPCKa = o2::aod::pidutils::tpcNSigma<3>(track);
const auto& nsigmaTPCPr = o2::aod::pidutils::tpcNSigma<4>(track);

Expand All @@ -1464,94 +1464,92 @@
bool isTOFPion = track.hasTOF() && std::abs(nsigmaTOFPi) < trkselOptions.cfgCutNsigma;
bool isTOFKaon = track.hasTOF() && std::abs(nsigmaTOFKa) < trkselOptions.cfgCutNsigma;
bool isTOFProton = track.hasTOF() && std::abs(nsigmaTOFPr) < trkselOptions.cfgCutNsigma;
// Precompute rapidity values to avoid redundant calculations
double rapidityPi = std::abs(track.rapidity(PID::getMass(2)));
double rapidityKa = std::abs(track.rapidity(PID::getMass(3)));
double rapidityPr = std::abs(track.rapidity(PID::getMass(4)));
if (track.eta() < trkselOptions.cfgCutEtaMin || track.eta() > trkselOptions.cfgCutEtaMax) {
return;
}
if (mcParticle.isPhysicalPrimary()) {
if (isTPCPion && rapidityPi <= trkselOptions.cfgCutY) {
if(usePDGcode){
if (pdgCode == 211) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pi"), track.pt(), nsigmaTPCPi, multiplicity);
} else if (pdgCode == -211) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/pi"), track.pt(), nsigmaTPCPi, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pi"), track.pt(), nsigmaTPCPi, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/pi"), track.pt(), nsigmaTPCPi, multiplicity);
}
}
if (isTPCKaon && rapidityKa <= trkselOptions.cfgCutY) {
if(usePDGcode){
if (pdgCode == 321) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/ka"), track.pt(), nsigmaTPCKa, multiplicity);
} else if (pdgCode == -321) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/ka"), track.pt(), nsigmaTPCKa, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/ka"), track.pt(), nsigmaTPCKa, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/ka"), track.pt(), nsigmaTPCKa, multiplicity);
}
}
if (isTPCProton && rapidityPr <= trkselOptions.cfgCutY) {
if(usePDGcode){
if (pdgCode == 2212) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pr"), track.pt(), nsigmaTPCPr, multiplicity);
} else if (pdgCode == -2212) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/pr"), track.pt(), nsigmaTPCPr, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pr"), track.pt(), nsigmaTPCPr, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/pr"), track.pt(), nsigmaTPCPr, multiplicity);
}
}

// TOF Selection and Histogram Filling
if (isTOFPion && rapidityPi <= trkselOptions.cfgCutY) {
if (usePDGcode){
if (pdgCode == 211) {
histos.fill(HIST("nsigmatof/mc_closure/pos/pi"), track.pt(), nsigmaTOFPi, multiplicity);
}else if (pdgCode == -211) {
histos.fill(HIST("nsigmatof/mc_closure/neg/pi"), track.pt(), nsigmaTOFPi, multiplicity);
}
}else{
histos.fill(HIST("nsigmatof/mc_closure/pos/pi"), track.pt(), nsigmaTOFPi, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/pi"), track.pt(), nsigmaTOFPi, multiplicity);
}
}
if (isTOFKaon && rapidityKa <= trkselOptions.cfgCutY){
if (usePDGcode){
if (pdgCode == 321) {
histos.fill(HIST("nsigmatof/mc_closure/pos/ka"), track.pt(), nsigmaTOFKa, multiplicity);
} else if (pdgCode == -321) {
histos.fill(HIST("nsigmatof/mc_closure/neg/ka"), track.pt(), nsigmaTOFKa, multiplicity);
}
}else {
histos.fill(HIST("nsigmatof/mc_closure/pos/ka"), track.pt(), nsigmaTOFKa, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/ka"), track.pt(), nsigmaTOFKa, multiplicity);
}
}
if (isTOFProton && rapidityPr <= trkselOptions.cfgCutY) {
if (usePDGcode){
if (pdgCode == 2212) {
histos.fill(HIST("nsigmatof/mc_closure/pos/pr"), track.pt(), nsigmaTOFPr, multiplicity);
} else if (pdgCode == -2212) {
histos.fill(HIST("nsigmatof/mc_closure/neg/pr"), track.pt(), nsigmaTOFPr, multiplicity);
}
}else {
histos.fill(HIST("nsigmatof/mc_closure/pos/pr"), track.pt(), nsigmaTOFPr, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/pr"), track.pt(), nsigmaTOFPr, multiplicity);
}
}
}
}

// Precompute rapidity values to avoid redundant calculations
double rapidityPi = std::abs(track.rapidity(PID::getMass(2)));
double rapidityKa = std::abs(track.rapidity(PID::getMass(3)));
double rapidityPr = std::abs(track.rapidity(PID::getMass(4)));
if (track.eta() < trkselOptions.cfgCutEtaMin || track.eta() > trkselOptions.cfgCutEtaMax) {
return;
}
if (mcParticle.isPhysicalPrimary()) {
if (isTPCPion && rapidityPi <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 211) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pi"), track.pt(), nsigmaTPCPi, multiplicity);
} else if (pdgCode == -211) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/pi"), track.pt(), nsigmaTPCPi, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pi"), track.pt(), nsigmaTPCPi, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/pi"), track.pt(), nsigmaTPCPi, multiplicity);
}
}
if (isTPCKaon && rapidityKa <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 321) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/ka"), track.pt(), nsigmaTPCKa, multiplicity);
} else if (pdgCode == -321) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/ka"), track.pt(), nsigmaTPCKa, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/ka"), track.pt(), nsigmaTPCKa, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/ka"), track.pt(), nsigmaTPCKa, multiplicity);
}
}
if (isTPCProton && rapidityPr <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 2212) {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pr"), track.pt(), nsigmaTPCPr, multiplicity);
} else if (pdgCode == -2212) {
histos.fill(HIST("nsigmatpc/mc_closure/neg/pr"), track.pt(), nsigmaTPCPr, multiplicity);
}
} else {
histos.fill(HIST("nsigmatpc/mc_closure/pos/pr"), track.pt(), nsigmaTPCPr, multiplicity);
histos.fill(HIST("nsigmatpc/mc_closure/neg/pr"), track.pt(), nsigmaTPCPr, multiplicity);
}
}

// TOF Selection and Histogram Filling
if (isTOFPion && rapidityPi <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 211) {
histos.fill(HIST("nsigmatof/mc_closure/pos/pi"), track.pt(), nsigmaTOFPi, multiplicity);
} else if (pdgCode == -211) {
histos.fill(HIST("nsigmatof/mc_closure/neg/pi"), track.pt(), nsigmaTOFPi, multiplicity);
}
} else {
histos.fill(HIST("nsigmatof/mc_closure/pos/pi"), track.pt(), nsigmaTOFPi, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/pi"), track.pt(), nsigmaTOFPi, multiplicity);
}
}
if (isTOFKaon && rapidityKa <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 321) {
histos.fill(HIST("nsigmatof/mc_closure/pos/ka"), track.pt(), nsigmaTOFKa, multiplicity);
} else if (pdgCode == -321) {
histos.fill(HIST("nsigmatof/mc_closure/neg/ka"), track.pt(), nsigmaTOFKa, multiplicity);
}
} else {
histos.fill(HIST("nsigmatof/mc_closure/pos/ka"), track.pt(), nsigmaTOFKa, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/ka"), track.pt(), nsigmaTOFKa, multiplicity);
}
}
if (isTOFProton && rapidityPr <= trkselOptions.cfgCutY) {
if (usePDGcode) {
if (pdgCode == 2212) {
histos.fill(HIST("nsigmatof/mc_closure/pos/pr"), track.pt(), nsigmaTOFPr, multiplicity);
} else if (pdgCode == -2212) {
histos.fill(HIST("nsigmatof/mc_closure/neg/pr"), track.pt(), nsigmaTOFPr, multiplicity);
}
} else {
histos.fill(HIST("nsigmatof/mc_closure/pos/pr"), track.pt(), nsigmaTOFPr, multiplicity);
histos.fill(HIST("nsigmatof/mc_closure/neg/pr"), track.pt(), nsigmaTOFPr, multiplicity);
}
}
}
}
}
PROCESS_SWITCH(tofSpectra, processMCclosure, "MC closure test", true);
PROCESS_SWITCH(tofSpectra, processMCclosure, "MC closure test", true);
void processOccupancy(CollisionCandidates::iterator const& collision,
soa::Join<TrackCandidates,
aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr,
Expand Down Expand Up @@ -1579,7 +1577,7 @@
for (const auto& track : tracks) {
// Track selection criteria
/* if (track.tpcNClsCrossedRows() < minNCrossedRowsTPC || track.tpcChi2NCl() > maxChi2PerClusterTPC || track.tpcChi2NCl() > maxChi2PerClusterTPC ||
track.itsChi2NCl() > maxChi2PerClusterITS || std::abs(track.dcaXY()) > maxDcaXYFactor.value * (0.0105f + 0.0350f / pow(track.pt(), 1.1f)) || std::abs(track.dcaZ()) > maxDcaZ.value || track.eta() < trkselOptions.cfgCutEtaMin || track.eta() > trkselOptions.cfgCutEtaMax || track.tpcCrossedRowsOverFindableCls() < minNCrossedRowsOverFindableClustersTPC || track.tpcNClsFound() < minTPCNClsFound ||

Check warning on line 1580 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[std-prefix]

Use std:: prefix for names from the std namespace.
!(o2::aod::track::ITSrefit) || !(o2::aod::track::TPCrefit)) {
continue;
}*/
Expand Down Expand Up @@ -1864,7 +1862,7 @@

using RecoMCCollisions = soa::Join<aod::Collisions, aod::McCollisionLabels, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::TPCMults, aod::PVMults, aod::MultZeqs, aod::CentFT0Ms>; // RD
template <std::size_t i, typename TrackType, typename ParticleType>
void fillTrackHistograms_MC(TrackType const& track,

Check warning on line 1865 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
ParticleType::iterator const& mcParticle,
RecoMCCollisions::iterator const& collision,
ParticleType const& mcParticles)
Expand Down Expand Up @@ -1954,10 +1952,10 @@
}

if (enableDCAvsmotherHistograms) {
bool IsD0Mother = false;

Check warning on line 1955 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
bool IsCharmMother = false;

Check warning on line 1956 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
bool IsBeautyMother = false;

Check warning on line 1957 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
bool IsNotHFMother = false;

Check warning on line 1958 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
if (mcParticle.has_mothers()) {
const int charmOrigin = RecoDecay::getCharmHadronOrigin(mcParticles, mcParticle, false);
for (const auto& mother : mcParticle.template mothers_as<aod::McParticles>()) {
Expand Down Expand Up @@ -2295,7 +2293,7 @@
}

template <std::size_t i, typename ParticleType>
void fillParticleHistograms_MC(const float multiplicity, ParticleType const& mcParticle)

Check warning on line 2296 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
{
if (!isParticleEnabled<i>()) { // Check if the particle is enabled
return;
Expand All @@ -2321,7 +2319,7 @@
}

template <std::size_t i, typename ParticleType>
void fillParticleHistograms_MCRecoEvs(ParticleType const& mcParticle, RecoMCCollisions::iterator const& collision)

Check warning on line 2322 in PWGLF/Tasks/Nuspex/spectraTOF.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[name/function-variable]

Use lowerCamelCase for names of functions and variables.
{
if (!isParticleEnabled<i>()) { // Check if the particle is enabled
return;
Expand Down Expand Up @@ -2538,12 +2536,12 @@
fillParticleHistograms_MCGenEvs<i>(mcParticle, mcCollision);
});
}
if (mcCollision.isInelGt0()) {
histos.fill(HIST("MC/GenRecoCollisions"), 3.f);
}
if (mcCollision.isInelGt1()) {
histos.fill(HIST("MC/GenRecoCollisions"), 4.f);
}
if (mcCollision.isInelGt0()) {
histos.fill(HIST("MC/GenRecoCollisions"), 3.f);
}
if (mcCollision.isInelGt1()) {
histos.fill(HIST("MC/GenRecoCollisions"), 4.f);
}
if (hasParticleInFT0C && hasParticleInFT0A) {
histos.fill(HIST("MC/GenRecoCollisions"), 5.f);
}
Expand Down
Loading