Skip to content

Commit 14073b2

Browse files
authored
Update NucleitpcPbPb.cxx
1 parent 1b1edc7 commit 14073b2

File tree

1 file changed

+29
-15
lines changed

1 file changed

+29
-15
lines changed

PWGLF/Tasks/Nuspex/NucleitpcPbPb.cxx

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ using namespace o2;
4242
using namespace o2::framework;
4343
using namespace o2::framework::expressions;
4444
using CollisionsFull = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0Ms, aod::CentFV0As>;
45-
using TracksFull = soa::Join<aod::TracksIU, aod::TracksExtra, aod::TracksCovIU, o2::aod::TracksDCA, aod::pidTPCPi, aod::pidTPCPr, aod::pidTPCDe, aod::pidTPCTr, aod::pidTPCHe, aod::pidTPCAl, aod::pidTOFmass>;
45+
using TracksFull = soa::Join<aod::TracksIU, aod::TracksExtra, aod::TracksCovIU, o2::aod::TracksDCA, aod::TrackSelectionExtension, aod::pidTPCPi, aod::pidTPCPr, aod::pidTPCDe, aod::pidTPCTr, aod::pidTPCHe, aod::pidTPCAl, aod::pidTOFmass>;
4646
//---------------------------------------------------------------------------------------------------------------------------------
4747
namespace
4848
{
@@ -97,12 +97,16 @@ struct NucleitpcPbPb {
9797
Configurable<bool> cfgRigidityCorrection{"cfgRigidityCorrection", false, "apply rigidity correction"};
9898
Configurable<float> cfgCutEta{"cfgCutEta", 0.9f, "Eta range for tracks"};
9999
Configurable<bool> cfgUsePVcontributors{"cfgUsePVcontributors", true, "use tracks that are PV contibutors"};
100+
Configurable<bool> cfgITSrequire{"cfgITSrequire", true, "Additional cut on ITS require"};
101+
Configurable<bool> cfgTPCrequire{"cfgTPCrequire", true, "Additional cut on TPC require"};
102+
Configurable<bool> cfgPassedITSRefit{"cfgPassedITSRefit", true, "Require ITS refit"};
103+
Configurable<bool> cfgPassedTPCRefit{"cfgPassedTPCRefit", true, "Require TPC refit"};
100104
Configurable<LabeledArray<double>> cfgBetheBlochParams{"cfgBetheBlochParams", {betheBlochDefault[0], nParticles, nBetheParams, particleNames, betheBlochParNames}, "TPC Bethe-Bloch parameterisation for light nuclei"};
101105
Configurable<LabeledArray<double>> cfgTrackPIDsettings{"cfgTrackPIDsettings", {trackPIDsettings[0], nParticles, nTrkSettings, particleNames, trackPIDsettingsNames}, "track selection and PID criteria"};
102106
Configurable<bool> cfgFillDeDxWithoutCut{"cfgFillDeDxWithoutCut", false, "Fill without cut beth bloch"};
103107
Configurable<bool> cfgFillDeDxWithCut{"cfgFillDeDxWithCut", false, "Fill with cut beth bloch"};
104-
Configurable<bool> cfgFillnsigma{"cfgFillnsigma", false, "Fill n-sigma histograms"};
105-
Configurable<bool> cfgFillmass{"cfgFillmass", true, "Fill mass histograms"};
108+
Configurable<bool> cfgFillnsigma{"cfgFillnsigma", true, "Fill n-sigma histograms"};
109+
Configurable<bool> cfgFillmass{"cfgFillmass", false, "Fill mass histograms"};
106110
Configurable<float> centcut{"centcut", 80.0f, "centrality cut"};
107111
Configurable<float> cfgCutRapidity{"cfgCutRapidity", 0.5f, "Rapidity range"};
108112
Configurable<float> cfgZvertex{"cfgZvertex", 10, "Min Z Vertex"};
@@ -193,23 +197,21 @@ struct NucleitpcPbPb {
193197
for (const auto& trackId : tracksByColl) {
194198
const auto& track = tracks.rawIteratorAt(trackId.trackId());
195199
filldedx(track, nParticles);
200+
if (!track.isPVContributor() && cfgUsePVcontributors)
201+
continue;
202+
if (!track.hasITS() && cfgITSrequire)
203+
continue;
204+
if (!track.hasTPC() && cfgTPCrequire)
205+
continue;
206+
if (!track.passedITSRefit() && cfgPassedITSRefit)
207+
continue;
208+
if (!track.passedTPCRefit() && cfgPassedTPCRefit)
209+
continue;
196210
if (std::abs(track.eta()) > cfgCutEta)
197211
continue;
198-
histos.fill(HIST("histeta"), track.eta());
199212
for (size_t i = 0; i < primaryParticles.size(); i++) {
200213
if (std::abs(getRapidity(track, i)) > cfgCutRapidity)
201214
continue;
202-
bool insideDCAxy = (std::abs(track.dcaXY()) <= (cfgTrackPIDsettings->get(i, "maxDcaXY") * (0.0105f + 0.0350f / std::pow(track.pt(), 1.1f))));
203-
if (!(insideDCAxy) || std::abs(track.dcaZ()) > cfgTrackPIDsettings->get(i, "maxDcaZ"))
204-
continue;
205-
if (track.sign() > 0) {
206-
histos.fill(HIST("histDcaZVsPtData_particle"), track.pt(), track.dcaZ());
207-
histos.fill(HIST("histDcaXYVsPtData_particle"), track.pt(), track.dcaXY());
208-
}
209-
if (track.sign() < 0) {
210-
histos.fill(HIST("histDcaZVsPtData_antiparticle"), track.pt(), track.dcaZ());
211-
histos.fill(HIST("histDcaXYVsPtData_antiparticle"), track.pt(), track.dcaXY());
212-
}
213215
if (track.tpcNClsFound() < cfgTrackPIDsettings->get(i, "minTPCnCls"))
214216
continue;
215217
if (track.tpcChi2NCl() > cfgTrackPIDsettings->get(i, "maxTPCchi2"))
@@ -231,7 +233,19 @@ struct NucleitpcPbPb {
231233
continue;
232234
if (cfgTrackPIDsettings->get(i, "TOFrequiredabove") >= 0 && getRigidity(track) > cfgTrackPIDsettings->get(i, "TOFrequiredabove") && (track.mass() < cfgTrackPIDsettings->get(i, "minTOFmass") || track.mass() > cfgTrackPIDsettings->get(i, "maxTOFmass")))
233235
continue;
236+
bool insideDCAxy = (std::abs(track.dcaXY()) <= (cfgTrackPIDsettings->get(i, "maxDcaXY") * (0.0105f + 0.0350f / std::pow(track.pt(), 1.1f))));
237+
if (!(insideDCAxy) || std::abs(track.dcaZ()) > cfgTrackPIDsettings->get(i, "maxDcaZ"))
238+
continue;
239+
if (track.sign() > 0) {
240+
histos.fill(HIST("histDcaZVsPtData_particle"), track.pt(), track.dcaZ());
241+
histos.fill(HIST("histDcaXYVsPtData_particle"), track.pt(), track.dcaXY());
242+
}
243+
if (track.sign() < 0) {
244+
histos.fill(HIST("histDcaZVsPtData_antiparticle"), track.pt(), track.dcaZ());
245+
histos.fill(HIST("histDcaXYVsPtData_antiparticle"), track.pt(), track.dcaXY());
246+
}
234247
}
248+
histos.fill(HIST("histeta"), track.eta());
235249
} // track loop
236250
}
237251
//----------------------------------------------------------------------------------------------------------------

0 commit comments

Comments
 (0)