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
21 changes: 10 additions & 11 deletions PWGLF/DataModel/v0qaanalysis.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
Expand All @@ -10,7 +10,7 @@
// or submit itself to any jurisdiction.
///
/// \brief QA task for V0 analysis using derived data
/// \author Francesca Ercolessi (francesca.ercolessi@cern.ch)

Check warning on line 13 in PWGLF/DataModel/v0qaanalysis.h

View workflow job for this annotation

GitHub Actions / O2 linter

[doc/file]

Documentation for \file is missing, incorrect or misplaced.

#ifndef PWGLF_DATAMODEL_V0QAANALYSIS_H_
#define PWGLF_DATAMODEL_V0QAANALYSIS_H_
Expand All @@ -21,12 +21,14 @@
namespace myv0candidates
{

DECLARE_SOA_COLUMN(V0Pt, v0pt, float);

Check warning on line 24 in PWGLF/DataModel/v0qaanalysis.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(V0MotherPt, v0motherpt, float);

Check warning on line 25 in PWGLF/DataModel/v0qaanalysis.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(V0MCRap, v0mcrap, float);

Check warning on line 26 in PWGLF/DataModel/v0qaanalysis.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(RapLambda, raplambda, float);

Check warning on line 27 in PWGLF/DataModel/v0qaanalysis.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(RapK0Short, rapk0short, float);

Check warning on line 28 in PWGLF/DataModel/v0qaanalysis.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(MassLambda, masslambda, float);

Check warning on line 29 in PWGLF/DataModel/v0qaanalysis.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(MassAntiLambda, massantilambda, float);

Check warning on line 30 in PWGLF/DataModel/v0qaanalysis.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(MassK0Short, massk0short, float);

Check warning on line 31 in PWGLF/DataModel/v0qaanalysis.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(V0Radius, v0radius, float);
DECLARE_SOA_COLUMN(V0CosPA, v0cospa, float);
DECLARE_SOA_COLUMN(V0DCAPosToPV, v0dcapostopv, float);
Expand All @@ -34,8 +36,6 @@
DECLARE_SOA_COLUMN(V0DCAV0Daughters, v0dcav0daughters, float);
DECLARE_SOA_COLUMN(V0PosEta, v0poseta, float);
DECLARE_SOA_COLUMN(V0NegEta, v0negeta, float);
DECLARE_SOA_COLUMN(V0PosPhi, v0posphi, float);
DECLARE_SOA_COLUMN(V0NegPhi, v0negphi, float);
DECLARE_SOA_COLUMN(V0PosITSHits, v0positshits, float);
DECLARE_SOA_COLUMN(V0NegITSHits, v0negitshits, float);
DECLARE_SOA_COLUMN(CtauLambda, ctaulambda, float);
Expand All @@ -52,44 +52,43 @@
DECLARE_SOA_COLUMN(PosHasTOF, poshastof, float);
DECLARE_SOA_COLUMN(NegHasTOF, neghastof, float);
DECLARE_SOA_COLUMN(PDGCode, pdgcode, int);
DECLARE_SOA_COLUMN(PDGCodeMother, pdgcodemother, int);
DECLARE_SOA_COLUMN(IsDauK0Short, isdauk0short, bool);
DECLARE_SOA_COLUMN(IsDauLambda, isdaulambda, bool);
DECLARE_SOA_COLUMN(IsDauAntiLambda, isdauantilambda, bool);
DECLARE_SOA_COLUMN(IsPhysicalPrimary, isphysprimary, bool);
DECLARE_SOA_COLUMN(MultFT0M, multft0m, float);
DECLARE_SOA_COLUMN(MultFV0A, multfv0a, float);
DECLARE_SOA_COLUMN(MultNGlobals, multnglobals, float);
DECLARE_SOA_COLUMN(EvFlag, evflag, int);
DECLARE_SOA_COLUMN(Alpha, alpha, float);
DECLARE_SOA_COLUMN(QtArm, qtarm, float);
DECLARE_SOA_COLUMN(V0PosTPCCrossedRows, v0postpcCrossedRows, float);
DECLARE_SOA_COLUMN(V0PosTPCCRFindCls, v0postpcCRFindCls, float);
DECLARE_SOA_COLUMN(V0PosTPCNClsShared, v0postpcNClsShared, float);
DECLARE_SOA_COLUMN(V0PosITSChi2NCl, v0positsChi2NCl, float);
DECLARE_SOA_COLUMN(V0PosTPCChi2NCl, v0postpcChi2NCl, float);
DECLARE_SOA_COLUMN(V0NegTPCCrossedRows, v0negtpcCrossedRows, float);
DECLARE_SOA_COLUMN(V0NegTPCCRFindCls, v0negtpcCRFindCls, float);
DECLARE_SOA_COLUMN(V0NegTPCNClsShared, v0negtpcNClsShared, float);
DECLARE_SOA_COLUMN(V0NegITSChi2NCl, v0negitsChi2NCl, float);
DECLARE_SOA_COLUMN(V0NegTPCChi2NCl, v0negtpcChi2NCl, float);

} // namespace myv0candidates

DECLARE_SOA_TABLE(MyV0Candidates, "AOD", "MYV0CANDIDATES",
myv0candidates::V0Pt, myv0candidates::RapLambda, myv0candidates::RapK0Short,
myv0candidates::V0Pt, myv0candidates::V0MotherPt, myv0candidates::V0MCRap, myv0candidates::RapLambda, myv0candidates::RapK0Short,
myv0candidates::MassLambda, myv0candidates::MassAntiLambda, myv0candidates::MassK0Short,
myv0candidates::V0Radius, myv0candidates::V0CosPA, myv0candidates::V0DCAPosToPV,
myv0candidates::V0DCANegToPV, myv0candidates::V0DCAV0Daughters,
myv0candidates::V0PosEta, myv0candidates::V0NegEta, myv0candidates::V0PosPhi, myv0candidates::V0NegPhi,
myv0candidates::V0PosEta, myv0candidates::V0NegEta,
myv0candidates::V0PosITSHits, myv0candidates::V0NegITSHits, myv0candidates::CtauLambda, myv0candidates::CtauAntiLambda, myv0candidates::CtauK0Short,
myv0candidates::NTPCSigmaNegPr, myv0candidates::NTPCSigmaPosPr, myv0candidates::NTPCSigmaNegPi, myv0candidates::NTPCSigmaPosPi,
myv0candidates::NTOFSigmaNegPr, myv0candidates::NTOFSigmaPosPr, myv0candidates::NTOFSigmaNegPi, myv0candidates::NTOFSigmaPosPi,
myv0candidates::PosHasTOF, myv0candidates::NegHasTOF,
myv0candidates::PDGCode, myv0candidates::IsDauK0Short, myv0candidates::IsDauLambda, myv0candidates::IsDauAntiLambda, myv0candidates::IsPhysicalPrimary,
myv0candidates::MultFT0M, myv0candidates::MultFV0A,
myv0candidates::PDGCode, myv0candidates::PDGCodeMother, myv0candidates::IsDauK0Short, myv0candidates::IsDauLambda, myv0candidates::IsDauAntiLambda, myv0candidates::IsPhysicalPrimary,
myv0candidates::MultFT0M, myv0candidates::MultNGlobals,
myv0candidates::EvFlag, myv0candidates::Alpha, myv0candidates::QtArm,
myv0candidates::V0PosTPCCrossedRows, myv0candidates::V0PosTPCCRFindCls, myv0candidates::V0PosTPCNClsShared,
myv0candidates::V0PosTPCCrossedRows, myv0candidates::V0PosTPCNClsShared,
myv0candidates::V0PosITSChi2NCl, myv0candidates::V0PosTPCChi2NCl,
myv0candidates::V0NegTPCCrossedRows, myv0candidates::V0NegTPCCRFindCls, myv0candidates::V0NegTPCNClsShared,
myv0candidates::V0NegTPCCrossedRows, myv0candidates::V0NegTPCNClsShared,
myv0candidates::V0NegITSChi2NCl, myv0candidates::V0NegTPCChi2NCl);

} // namespace o2::aod
Expand Down
71 changes: 50 additions & 21 deletions PWGLF/TableProducer/Strangeness/v0qaanalysis.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ void customize(std::vector<o2::framework::ConfigParamSpec>& workflowOptions)

using DauTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::pidTPCPi, aod::pidTPCKa, aod::pidTPCPr, aod::pidTOFPi, aod::pidTOFPr>;
using DauTracksMC = soa::Join<DauTracks, aod::McTrackLabels>;
using V0Collisions = soa::Join<aod::Collisions, aod::EvSels, aod::PVMults, aod::CentFT0Ms, aod::CentFV0As>;
using V0Collisions = soa::Join<aod::Collisions, aod::EvSels, aod::PVMults, aod::CentFT0Ms, aod::CentNGlobals>;

struct LfV0qaanalysis {

Expand Down Expand Up @@ -81,7 +81,7 @@ struct LfV0qaanalysis {
registry.get<TH1>(HIST("hNEvents"))->GetXaxis()->SetBinLabel(9, "Applied selection");

registry.add("hCentFT0M", "hCentFT0M", {HistType::kTH1F, {{1000, 0.f, 100.f}}});
registry.add("hCentFV0A", "hCentFV0A", {HistType::kTH1F, {{1000, 0.f, 100.f}}});
registry.add("hCentNGlobals", "hCentNGlobals", {HistType::kTH1F, {{1000, 0.f, 100.f}}});
if (isMC) {
registry.add("hCentFT0M_RecoColl_MC", "hCentFT0M_RecoColl_MC", {HistType::kTH1F, {{1000, 0.f, 100.f}}});
registry.add("hCentFT0M_RecoColl_MC_INELgt0", "hCentFT0M_RecoColl_MC_INELgt0", {HistType::kTH1F, {{1000, 0.f, 100.f}}});
Expand Down Expand Up @@ -110,6 +110,8 @@ struct LfV0qaanalysis {
registry.add("Generated_MCGenRecoColl_INEL_K0Short", "Generated_MCGenRecoColl_INEL_K0Short", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INEL_Lambda", "Generated_MCGenRecoColl_INEL_Lambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INEL_AntiLambda", "Generated_MCGenRecoColl_INEL_AntiLambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INEL_XiMinus", "Generated_MCGenRecoColl_INEL_XiMinus", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INEL_XiPlus", "Generated_MCGenRecoColl_INEL_XiPlus", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INEL_K0Short", "Generated_MCRecoColl_INEL_K0Short", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INEL_Lambda", "Generated_MCRecoColl_INEL_Lambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INEL_AntiLambda", "Generated_MCRecoColl_INEL_AntiLambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
Expand All @@ -122,6 +124,8 @@ struct LfV0qaanalysis {
registry.add("Generated_MCGenRecoColl_INELgt0_K0Short", "Generated_MCGenRecoColl_INELgt0_K0Short", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INELgt0_Lambda", "Generated_MCGenRecoColl_INELgt0_Lambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INELgt0_AntiLambda", "Generated_MCGenRecoColl_INELgt0_AntiLambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INELgt0_XiMinus", "Generated_MCGenRecoColl_INELgt0_XiMinus", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCGenRecoColl_INELgt0_XiPlus", "Generated_MCGenRecoColl_INELgt0_XiPlus", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INELgt0_K0Short", "Generated_MCRecoColl_INELgt0_K0Short", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INELgt0_Lambda", "Generated_MCRecoColl_INELgt0_Lambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
registry.add("Generated_MCRecoColl_INELgt0_AntiLambda", "Generated_MCRecoColl_INELgt0_AntiLambda", {HistType::kTH2F, {{250, 0.f, 25.f}, {1000, 0.f, 100.f}}});
Expand Down Expand Up @@ -169,7 +173,7 @@ struct LfV0qaanalysis {
return false;
}
registry.fill(HIST("hNEvents"), 2.5);
if (TMath::Abs(collision.posZ()) > cutzvertex) {
if (std::abs(collision.posZ()) > cutzvertex) {
return false;
}
registry.fill(HIST("hNEvents"), 3.5);
Expand Down Expand Up @@ -207,7 +211,7 @@ struct LfV0qaanalysis {
}
registry.fill(HIST("hNEvents"), 8.5);
registry.fill(HIST("hCentFT0M"), collision.centFT0M());
registry.fill(HIST("hCentFV0A"), collision.centFV0A());
registry.fill(HIST("hCentNGlobals"), collision.centNGlobal());

for (auto& v0 : V0s) { // loop over V0s

Expand All @@ -230,6 +234,9 @@ struct LfV0qaanalysis {
}

int lPDG = 0;
float ptMotherMC = 0.;
float pdgMotherMC = 0.;
float yMC = 0.;
bool isPhysicalPrimary = isMC;
bool isDauK0Short = false, isDauLambda = false, isDauAntiLambda = false;

Expand All @@ -239,27 +246,26 @@ struct LfV0qaanalysis {

if (v0.v0radius() > v0radius &&
v0.v0cosPA() > v0cospa &&
TMath::Abs(v0.posTrack_as<DauTracks>().eta()) < etadau &&
TMath::Abs(v0.negTrack_as<DauTracks>().eta()) < etadau) {
std::abs(v0.posTrack_as<DauTracks>().eta()) < etadau &&
std::abs(v0.negTrack_as<DauTracks>().eta()) < etadau) {

// Fill table
myv0s(v0.pt(), v0.yLambda(), v0.yK0Short(),
myv0s(v0.pt(), ptMotherMC, yMC, v0.yLambda(), v0.yK0Short(),
v0.mLambda(), v0.mAntiLambda(), v0.mK0Short(),
v0.v0radius(), v0.v0cosPA(),
v0.dcapostopv(), v0.dcanegtopv(), v0.dcaV0daughters(),
v0.posTrack_as<DauTracks>().eta(), v0.negTrack_as<DauTracks>().eta(),
v0.posTrack_as<DauTracks>().phi(), v0.negTrack_as<DauTracks>().phi(),
posITSNhits, negITSNhits, ctauLambda, ctauAntiLambda, ctauK0s,
v0.negTrack_as<DauTracks>().tpcNSigmaPr(), v0.posTrack_as<DauTracks>().tpcNSigmaPr(),
v0.negTrack_as<DauTracks>().tpcNSigmaPi(), v0.posTrack_as<DauTracks>().tpcNSigmaPi(),
v0.negTrack_as<DauTracks>().tofNSigmaPr(), v0.posTrack_as<DauTracks>().tofNSigmaPr(),
v0.negTrack_as<DauTracks>().tofNSigmaPi(), v0.posTrack_as<DauTracks>().tofNSigmaPi(),
v0.posTrack_as<DauTracks>().hasTOF(), v0.negTrack_as<DauTracks>().hasTOF(), lPDG, isDauK0Short, isDauLambda, isDauAntiLambda, isPhysicalPrimary,
collision.centFT0M(), collision.centFV0A(), evFlag, v0.alpha(), v0.qtarm(),
v0.posTrack_as<DauTracks>().tpcNClsCrossedRows(), v0.posTrack_as<DauTracks>().tpcCrossedRowsOverFindableCls(),
v0.posTrack_as<DauTracks>().hasTOF(), v0.negTrack_as<DauTracks>().hasTOF(), lPDG, pdgMotherMC, isDauK0Short, isDauLambda, isDauAntiLambda, isPhysicalPrimary,
collision.centFT0M(), collision.centNGlobal(), evFlag, v0.alpha(), v0.qtarm(),
v0.posTrack_as<DauTracks>().tpcNClsCrossedRows(),
v0.posTrack_as<DauTracks>().tpcNClsShared(), v0.posTrack_as<DauTracks>().itsChi2NCl(),
v0.posTrack_as<DauTracks>().tpcChi2NCl(),
v0.negTrack_as<DauTracks>().tpcNClsCrossedRows(), v0.negTrack_as<DauTracks>().tpcCrossedRowsOverFindableCls(),
v0.negTrack_as<DauTracks>().tpcNClsCrossedRows(),
v0.negTrack_as<DauTracks>().tpcNClsShared(), v0.negTrack_as<DauTracks>().itsChi2NCl(),
v0.negTrack_as<DauTracks>().tpcChi2NCl());
}
Expand Down Expand Up @@ -344,7 +350,7 @@ struct LfV0qaanalysis {
int lPDG = 0;
bool isDauK0Short = false, isDauLambda = false, isDauAntiLambda = false;
bool isprimary = false;
if (TMath::Abs(v0mcparticle.pdgCode()) == 310 || TMath::Abs(v0mcparticle.pdgCode()) == 3122) {
if (std::abs(v0mcparticle.pdgCode()) == 310 || std::abs(v0mcparticle.pdgCode()) == 3122) {
lPDG = v0mcparticle.pdgCode();
isprimary = v0mcparticle.isPhysicalPrimary();
}
Expand All @@ -362,6 +368,18 @@ struct LfV0qaanalysis {
}
}

float ptMotherMC = 0.;
float pdgMother = 0.;

if (std::abs(v0mcparticle.pdgCode()) == 3122 && v0mcparticle.has_mothers()) {
for (auto& mcparticleMother0 : v0mcparticle.mothers_as<aod::McParticles>()) {
if (std::abs(mcparticleMother0.pdgCode()) == 3312 || std::abs(mcparticleMother0.pdgCode()) == 3322) {
ptMotherMC = mcparticleMother0.pt();
pdgMother = mcparticleMother0.pdgCode();
}
}
}

const int posITSNhits = v0.posTrack_as<DauTracksMC>().itsNCls();
const int negITSNhits = v0.negTrack_as<DauTracksMC>().itsNCls();

Expand All @@ -371,28 +389,27 @@ struct LfV0qaanalysis {

if (v0.v0radius() > v0radius &&
v0.v0cosPA() > v0cospa &&
TMath::Abs(v0.posTrack_as<DauTracksMC>().eta()) < etadau &&
TMath::Abs(v0.negTrack_as<DauTracksMC>().eta()) < etadau // &&
std::abs(v0.posTrack_as<DauTracksMC>().eta()) < etadau &&
std::abs(v0.negTrack_as<DauTracksMC>().eta()) < etadau // &&
) {

// Fill table
myv0s(v0.pt(), v0.yLambda(), v0.yK0Short(),
myv0s(v0.pt(), ptMotherMC, v0mcparticle.y(), v0.yLambda(), v0.yK0Short(),
v0.mLambda(), v0.mAntiLambda(), v0.mK0Short(),
v0.v0radius(), v0.v0cosPA(),
v0.dcapostopv(), v0.dcanegtopv(), v0.dcaV0daughters(),
v0.posTrack_as<DauTracksMC>().eta(), v0.negTrack_as<DauTracksMC>().eta(),
v0.posTrack_as<DauTracksMC>().phi(), v0.negTrack_as<DauTracksMC>().phi(),
posITSNhits, negITSNhits, ctauLambda, ctauAntiLambda, ctauK0s,
v0.negTrack_as<DauTracksMC>().tpcNSigmaPr(), v0.posTrack_as<DauTracksMC>().tpcNSigmaPr(),
v0.negTrack_as<DauTracksMC>().tpcNSigmaPi(), v0.posTrack_as<DauTracksMC>().tpcNSigmaPi(),
v0.negTrack_as<DauTracksMC>().tofNSigmaPr(), v0.posTrack_as<DauTracksMC>().tofNSigmaPr(),
v0.negTrack_as<DauTracksMC>().tofNSigmaPi(), v0.posTrack_as<DauTracksMC>().tofNSigmaPi(),
v0.posTrack_as<DauTracksMC>().hasTOF(), v0.negTrack_as<DauTracksMC>().hasTOF(), lPDG, isDauK0Short, isDauLambda, isDauAntiLambda, isprimary,
v0.posTrack_as<DauTracksMC>().hasTOF(), v0.negTrack_as<DauTracksMC>().hasTOF(), lPDG, pdgMother, isDauK0Short, isDauLambda, isDauAntiLambda, isprimary,
mcCollision.centFT0M(), cent, evFlag, v0.alpha(), v0.qtarm(),
v0.posTrack_as<DauTracksMC>().tpcNClsCrossedRows(), v0.posTrack_as<DauTracksMC>().tpcCrossedRowsOverFindableCls(),
v0.posTrack_as<DauTracksMC>().tpcNClsCrossedRows(),
v0.posTrack_as<DauTracksMC>().tpcNClsShared(), v0.posTrack_as<DauTracksMC>().itsChi2NCl(),
v0.posTrack_as<DauTracksMC>().tpcChi2NCl(),
v0.negTrack_as<DauTracksMC>().tpcNClsCrossedRows(), v0.negTrack_as<DauTracksMC>().tpcCrossedRowsOverFindableCls(),
v0.negTrack_as<DauTracksMC>().tpcNClsCrossedRows(),
v0.negTrack_as<DauTracksMC>().tpcNClsShared(), v0.negTrack_as<DauTracksMC>().itsChi2NCl(),
v0.negTrack_as<DauTracksMC>().tpcChi2NCl());
}
Expand Down Expand Up @@ -443,7 +460,7 @@ struct LfV0qaanalysis {

registry.fill(HIST("hNEventsMCGen"), 0.5);

if (TMath::Abs(mcCollision.posZ()) > MCcutzvertex) {
if (std::abs(mcCollision.posZ()) > MCcutzvertex) {
return;
}
registry.fill(HIST("hNEventsMCGen"), 1.5);
Expand Down Expand Up @@ -599,6 +616,18 @@ struct LfV0qaanalysis {
registry.fill(HIST("Generated_MCGenRecoColl_INELgt0_AntiLambda"), mcParticle.pt(), mcCollision.centFT0M()); // AntiLambda
}
}
if (mcParticle.pdgCode() == 3312) {
registry.fill(HIST("Generated_MCGenRecoColl_INEL_XiMinus"), mcParticle.pt(), mcCollision.centFT0M()); // XiMinus
if (recoCollIndex_INELgt0 > 0) {
registry.fill(HIST("Generated_MCGenRecoColl_INELgt0_XiMinus"), mcParticle.pt(), mcCollision.centFT0M()); // XiMinus
}
}
if (mcParticle.pdgCode() == -3312) {
registry.fill(HIST("Generated_MCGenRecoColl_INEL_XiPlus"), mcParticle.pt(), mcCollision.centFT0M()); // XiPlus
if (recoCollIndex_INELgt0 > 0) {
registry.fill(HIST("Generated_MCGenRecoColl_INELgt0_XiPlus"), mcParticle.pt(), mcCollision.centFT0M()); // XiPlus
}
}
}
}
PROCESS_SWITCH(LfV0qaanalysis, processMCGen, "Process MC", false);
Expand Down
Loading
Loading