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
114 changes: 71 additions & 43 deletions PWGLF/Tasks/Nuspex/NucleiHistTask.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -76,24 +76,24 @@ struct NucleiHistTask {
histTrackcuts_data->GetXaxis()->SetBinLabel(3, "Rap. cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(4, "DCA cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(5, "TPCnCls cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(6, "TPCCrossedRowsOverFindable cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(7, "Chi2 cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(8, "Passed TPC refit cut");
histTrackcuts_data->GetXaxis()->SetBinLabel(6, "TPCCrossedRowsOverFindable cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(7, "Chi2 cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(8, "Passed TPC refit cut");
histTrackcuts_data->GetXaxis()->SetBinLabel(9, "Passed ITS refit cut");
histTrackcuts_data->GetXaxis()->SetBinLabel(10, "ITSnCls cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(11, "Momentum cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(12, "hasITS & hasTPC cut passed");
histTrackcuts_data->GetXaxis()->SetBinLabel(13, "GoldenChi2 cut passed");

// +++++++++++++++++++++ MC ++++++++++++++++++++++++
histPDG->GetXaxis()->SetBinLabel(1, "#pi^{+}");
histPDG->GetXaxis()->SetBinLabel(2, "#pi^{-}");
histPDG->GetXaxis()->SetBinLabel(3, "K^{+}");
histPDG->GetXaxis()->SetBinLabel(4, "K^{-}");
histPDG->GetXaxis()->SetBinLabel(5, "p");
histPDG->GetXaxis()->SetBinLabel(6, "#bar{p}");
histPDG->GetXaxis()->SetBinLabel(7, "d");
histPDG->GetXaxis()->SetBinLabel(8, "#bar{d}");
histPDG->GetXaxis()->SetBinLabel(6, "#bar{p}");
histPDG->GetXaxis()->SetBinLabel(7, "d");
histPDG->GetXaxis()->SetBinLabel(8, "#bar{d}");
histPDG->GetXaxis()->SetBinLabel(9, "t");
histPDG->GetXaxis()->SetBinLabel(10, "#bar{t}");
histPDG->GetXaxis()->SetBinLabel(11, "^{3}He");
Expand All @@ -105,9 +105,9 @@ struct NucleiHistTask {
histTrackcuts_MC->GetXaxis()->SetBinLabel(3, "Rap. cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(4, "DCA cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(5, "TPCnCls cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(6, "TPCCrossedRowsOverFindable cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(7, "Chi2 cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(8, "Passed TPC refit cut");
histTrackcuts_MC->GetXaxis()->SetBinLabel(6, "TPCCrossedRowsOverFindable cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(7, "Chi2 cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(8, "Passed TPC refit cut");
histTrackcuts_MC->GetXaxis()->SetBinLabel(9, "Passed ITS refit cut");
histTrackcuts_MC->GetXaxis()->SetBinLabel(10, "ITSnCls cut passed");
histTrackcuts_MC->GetXaxis()->SetBinLabel(11, "Momentum cut passed");
Expand Down Expand Up @@ -472,8 +472,7 @@ struct NucleiHistTask {
Configurable<int> lastRequiredTrdCluster{"lastRequiredTrdCluster", -1, "Last cluster to required in TRD for track selection. -1 does not require any TRD cluster"};
Configurable<bool> requireGoldenChi2{"requireGoldenChi2", false, "Enable the requirement of GoldenChi2"};
Configurable<bool> event_selection_sel8{"event_selection_sel8", true, "Enable sel8 event selection"};
Configurable<bool> event_selection_MC_sel8{"event_selection_MC_sel8", true, "Enable sel8 event selection in MC processing"};

Configurable<bool> event_selection_MC_sel8{"event_selection_MC_sel8", true, "Enable sel8 event selection in MC processing"};

template <typename CollisionType, typename TracksType>
void fillHistograms(const CollisionType& event, const TracksType& tracks)
Expand Down Expand Up @@ -598,25 +597,35 @@ struct NucleiHistTask {
spectra_reg.fill(HIST("histChi2TPC"), track.pt(), track.tpcChi2NCl());
spectra_reg.fill(HIST("histChi2ITS"), track.pt(), track.itsChi2NCl());

if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z) continue;
if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z)
continue;
histTrackcuts_data->AddBinContent(4);
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC) continue;
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC)
continue;
histTrackcuts_data->AddBinContent(5);
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC) continue;
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC)
continue;
histTrackcuts_data->AddBinContent(6);
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS) continue;
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS)
continue;
histTrackcuts_data->AddBinContent(7);
if (!(track.passedTPCRefit())) continue;
if (!(track.passedTPCRefit()))
continue;
histTrackcuts_data->AddBinContent(8);
if (!(track.passedITSRefit())) continue;
if (!(track.passedITSRefit()))
continue;
histTrackcuts_data->AddBinContent(9);
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS) continue;
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS)
continue;
histTrackcuts_data->AddBinContent(10);
if (track.pt() < p_min || track.pt() > p_max) continue;
if (track.pt() < p_min || track.pt() > p_max)
continue;
histTrackcuts_data->AddBinContent(11);
if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC()))) continue;
if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC())))
continue;
histTrackcuts_data->AddBinContent(12);
if (requireGoldenChi2 && !(track.passedGoldenChi2())) continue;
if (requireGoldenChi2 && !(track.passedGoldenChi2()))
continue;
histTrackcuts_data->AddBinContent(13);

spectra_reg.fill(HIST("histTpcSignalData"), momentum * track.sign(), track.tpcSignal());
Expand Down Expand Up @@ -1201,16 +1210,26 @@ struct NucleiHistTask {
float Chi2perClusterTPC = track.tpcChi2NCl();
float Chi2perClusterITS = track.itsChi2NCl();

if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z) continue;
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC) continue;
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC) continue;
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS) continue;
if (!(track.passedTPCRefit())) continue;
if (!(track.passedITSRefit())) continue;
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS) continue;
if (track.pt() < p_min || track.pt() > p_max) continue;
if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC()))) continue;
if (requireGoldenChi2 && !(track.passedGoldenChi2())) continue;
if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z)
continue;
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC)
continue;
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC)
continue;
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS)
continue;
if (!(track.passedTPCRefit()))
continue;
if (!(track.passedITSRefit()))
continue;
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS)
continue;
if (track.pt() < p_min || track.pt() > p_max)
continue;
if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC())))
continue;
if (requireGoldenChi2 && !(track.passedGoldenChi2()))
continue;

TLorentzVector lorentzVector_pion{};
TLorentzVector lorentzVector_proton{};
Expand Down Expand Up @@ -1473,7 +1492,6 @@ struct NucleiHistTask {
if (!particle.isPhysicalPrimary())
continue;
histTrackcuts_MC->AddBinContent(2);


switch (particle.pdgCode()) {
case +211:
Expand Down Expand Up @@ -1601,26 +1619,36 @@ struct NucleiHistTask {
float Chi2perClusterTPC = track.tpcChi2NCl();
float Chi2perClusterITS = track.itsChi2NCl();

if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z) continue;
if (TMath::Abs(track.dcaXY()) > maxDCA_XY || TMath::Abs(track.dcaZ()) > maxDCA_Z)
continue;
histTrackcuts_MC->AddBinContent(4);
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC) continue;
if (TPCnumberClsFound < minTPCnClsFound || TPC_nCls_Crossed_Rows < minNCrossedRowsTPC)
continue;
histTrackcuts_MC->AddBinContent(5);
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC) continue;
if (RatioCrossedRowsOverFindableTPC < minRatioCrossedRowsTPC || RatioCrossedRowsOverFindableTPC > maxRatioCrossedRowsTPC)
continue;
histTrackcuts_MC->AddBinContent(6);
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS) continue;
if (Chi2perClusterTPC > maxChi2PerClusterTPC || Chi2perClusterTPC < minChi2PerClusterTPC || Chi2perClusterITS > maxChi2PerClusterITS)
continue;
histTrackcuts_MC->AddBinContent(7);
if (!(track.passedTPCRefit())) continue;
if (!(track.passedTPCRefit()))
continue;
histTrackcuts_MC->AddBinContent(8);
if (!(track.passedITSRefit())) continue;
if (!(track.passedITSRefit()))
continue;
histTrackcuts_MC->AddBinContent(9);
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS) continue;
if ((track.itsNClsInnerBarrel()) < minReqClusterITSib || (track.itsNCls()) < minReqClusterITS)
continue;
histTrackcuts_MC->AddBinContent(10);
if (track.pt() < p_min || track.pt() > p_max) continue;
if (track.pt() < p_min || track.pt() > p_max)
continue;
histTrackcuts_MC->AddBinContent(11);

if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC()))) continue;
if ((requireITS && !(track.hasITS())) || (requireTPC && !(track.hasTPC())))
continue;
histTrackcuts_MC->AddBinContent(12);
if (requireGoldenChi2 && !(track.passedGoldenChi2())) continue;
if (requireGoldenChi2 && !(track.passedGoldenChi2()))
continue;
histTrackcuts_MC->AddBinContent(13);

float nSigmaPion = track.tpcNSigmaPi();
Expand Down
Loading