Skip to content

Commit 9b4adc7

Browse files
authored
PWGEM/PhotonMeson: update v0 finder for PCM (#2341)
* PWGEM/PhotonMeson: reduce histogram binnings * PWGEM/PhotonMeson: update createPCM for really TPC only tracks
1 parent 144c7d2 commit 9b4adc7

2 files changed

Lines changed: 34 additions & 15 deletions

File tree

PWGEM/PhotonMeson/Core/HistogramsLibrary.cxx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ void o2::aod::emphotonhistograms::DefineHistograms(THashList* list, const char*
3636
{
3737
if (TString(histClass) == "Event") {
3838
list->Add(new TH1F("hCollisionCounter", "hCollisionCounter", 5, 0.5f, 5.5f));
39-
list->Add(new TH1F("hZvtx_before", "vertex z; Zvtx (cm)", 1000, -50, +50));
40-
list->Add(new TH1F("hZvtx_after", "vertex z; Zvtx (cm)", 1000, -50, +50));
39+
list->Add(new TH1F("hZvtx_before", "vertex z; Zvtx (cm)", 100, -50, +50));
40+
list->Add(new TH1F("hZvtx_after", "vertex z; Zvtx (cm)", 100, -50, +50));
4141
}
4242
if (TString(histClass) == "Track") {
4343
list->Add(new TH1F("hPt", "pT", 1000, 0.0f, 10));
@@ -62,12 +62,12 @@ void o2::aod::emphotonhistograms::DefineHistograms(THashList* list, const char*
6262
list->Add(new TH1F("hPCA", "distance between 2 legs; PCA (cm)", 100, 0.0f, 10.0f));
6363
list->Add(new TH2F("hAPplot", "AP plot;#alpha;q_{T} (GeV/c)", 200, -1.0f, +1.0f, 250, 0.0f, 0.25f));
6464
list->Add(new TH2F("hGammaPsiPair", "#psi_{pair} for photon conversion;#psi_{pair} (rad.);m_{ee} (GeV/c^{2})", 300, -TMath::PiOver2(), TMath::PiOver2(), 100, 0.0f, 0.1f));
65-
list->Add(new TH2F("hMassGamma", "hMassGamma;R_{xy} (cm);m_{ee} (GeV/c^{2})", 2000, 0.0f, 200.0f, 100, 0.0f, 0.1f));
66-
list->Add(new TH2F("hMassGamma_recalc", "recalc. KF hMassGamma;R_{xy} (cm);m_{ee} (GeV/c^{2})", 2000, 0.0f, 200.0f, 100, 0.0f, 0.1f));
67-
list->Add(new TH2F("hGammaRxy", "conversion point in XY;V_{x} (cm);V_{y} (cm)", 1000, -250.0f, 250.0f, 1000, -250.0f, 250.0f));
68-
list->Add(new TH2F("hGammaRxy_recalc", "recalc. KF conversion point in XY;V_{x} (cm);V_{y} (cm)", 1000, -250.0f, 250.0f, 1000, -250.0f, 250.0f));
69-
list->Add(new TH2F("hKFChi2vsR_recalc", "recalc. KF conversion point in XY;R_{xy} (cm);KF chi2/NDF", 250, 0.0f, 250.0f, 5000, 0.f, 5000.0f));
70-
list->Add(new TH2F("hKFChi2vsZ_recalc", "recalc. KF conversion point in Z;Z (cm);KF chi2/NDF", 500, -250.0f, 250.0f, 5000, 0.f, 5000.0f));
65+
list->Add(new TH2F("hMassGamma", "hMassGamma;R_{xy} (cm);m_{ee} (GeV/c^{2})", 200, 0.0f, 100.0f, 100, 0.0f, 0.1f));
66+
list->Add(new TH2F("hMassGamma_recalc", "recalc. KF hMassGamma;R_{xy} (cm);m_{ee} (GeV/c^{2})", 200, 0.0f, 100.0f, 100, 0.0f, 0.1f));
67+
list->Add(new TH2F("hGammaRxy", "conversion point in XY;V_{x} (cm);V_{y} (cm)", 400, -100.0f, 100.0f, 400, -100.0f, 100.0f));
68+
list->Add(new TH2F("hGammaRxy_recalc", "recalc. KF conversion point in XY;V_{x} (cm);V_{y} (cm)", 400, -100.0f, 100.0f, 400, -100.0f, 100.0f));
69+
list->Add(new TH2F("hKFChi2vsR_recalc", "recalc. KF conversion point in XY;R_{xy} (cm);KF chi2/NDF", 250, 0.0f, 250.0f, 500, 0.f, 5000.0f));
70+
list->Add(new TH2F("hKFChi2vsZ_recalc", "recalc. KF conversion point in Z;Z (cm);KF chi2/NDF", 500, -250.0f, 250.0f, 500, 0.f, 5000.0f));
7171
}
7272
}
7373
void o2::aod::emphotonhistograms::AddHistClass(THashList* list, const char* histClass)

PWGEM/PhotonMeson/TableProducer/createPCM.cxx

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ struct createPCM {
7676
Configurable<float> maxeta{"maxeta", 0.9, "eta acceptance for single track"};
7777
Configurable<int> mincrossedrows{"mincrossedrows", 10, "min crossed rows"};
7878
Configurable<float> maxchi2tpc{"maxchi2tpc", 4.0, "max chi2/NclsTPC"};
79+
Configurable<bool> useTPConly{"useTPConly", false, "Use truly TPC only tracks for V0 finder"};
7980

8081
int mRunNumber;
8182
float d_bz;
@@ -178,13 +179,6 @@ struct createPCM {
178179
array<float, 3> pvec0 = {0.};
179180
array<float, 3> pvec1 = {0.};
180181

181-
if (ele.tpcNClsCrossedRows() < mincrossedrows) {
182-
return;
183-
}
184-
if (pos.tpcNClsCrossedRows() < mincrossedrows) {
185-
return;
186-
}
187-
188182
auto pTrack = getTrackParCov(pos); // positive
189183
auto nTrack = getTrackParCov(ele); // negative
190184

@@ -244,6 +238,22 @@ struct createPCM {
244238
auto posTracks_coll = posTracks->sliceByCached(o2::aod::track::collisionId, collision.globalIndex(), cache);
245239

246240
for (auto& [ele, pos] : combinations(CombinationsFullIndexPolicy(negTracks_coll, posTracks_coll))) {
241+
if (ele.tpcNClsCrossedRows() < mincrossedrows) {
242+
continue;
243+
}
244+
if (pos.tpcNClsCrossedRows() < mincrossedrows) {
245+
continue;
246+
}
247+
248+
if (useTPConly) {
249+
if ((ele.hasITS() || ele.hasTOF() || ele.hasTRD())) {
250+
continue;
251+
}
252+
if ((pos.hasITS() || pos.hasTOF() || pos.hasTRD())) {
253+
continue;
254+
}
255+
}
256+
247257
fillV0Table(collision, ele, pos);
248258
}
249259
} // end of collision loop
@@ -285,6 +295,15 @@ struct createPCM {
285295
continue;
286296
}
287297

298+
if (useTPConly) {
299+
if ((ele.hasITS() || ele.hasTOF() || ele.hasTRD())) {
300+
continue;
301+
}
302+
if ((pos.hasITS() || pos.hasTOF() || pos.hasTRD())) {
303+
continue;
304+
}
305+
}
306+
288307
if (ele.sign() < 0) {
289308
fillV0Table(collision, ele, pos);
290309
} else {

0 commit comments

Comments
 (0)