@@ -316,6 +316,10 @@ struct DetectorOccupancyQaTask {
316316 histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hEta_neg" , " ;#eta;weighted occupancy" , kTH2D , {axisEta, confAxisOccupForKine});
317317 histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_pos" , " ;#varphi;n tracks" , kTH3D , {axisPhi, confAxisOccupForKine, confAxisPtBinsForPhiStudy});
318318 histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_neg" , " ;#varphi;n tracks" , kTH3D , {axisPhi, confAxisOccupForKine, confAxisPtBinsForPhiStudy});
319+ histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_posInitialQA" , " ;#varphi;n tracks" , kTH1D , {{3 * 810 , -TMath::TwoPi (), 2 * TMath::TwoPi (), " #varphi" }});
320+ histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_posModifiedQA" , " ;#varphi;n tracks" , kTH1D , {{3 * 810 , -TMath::TwoPi (), 2 * TMath::TwoPi (), " #varphi" }});
321+ histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_negInitialQA" , " ;#varphi;n tracks" , kTH1D , {{3 * 810 , -TMath::TwoPi (), 2 * TMath::TwoPi (), " #varphi" }});
322+ histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_negModifiedQA" , " ;#varphi;n tracks" , kTH1D , {{3 * 810 , -TMath::TwoPi (), 2 * TMath::TwoPi (), " #varphi" }});
319323
320324 histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPt_pos" , " ;p_{T};weighted occupancy" , kTH2D , {axisLogPt, confAxisOccupForKine});
321325 histos.add (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPt_neg" , " ;p_{T};weighted occupancy" , kTH2D , {axisLogPt, confAxisOccupForKine});
@@ -1221,15 +1225,17 @@ struct DetectorOccupancyQaTask {
12211225 // continue;
12221226
12231227 bool isGoodGlobal = (track.isGlobalTrack () && track.tpcNClsFound () >= confCutMinTPCcls);
1228+ bool hasTPCspecCuts = (track.hasTPC () && track.tpcNClsFound () >= confCutMinTPCcls && track.tpcNClsCrossedRows () > 80 && track.tpcChi2NCl () < 4 );
12241229
12251230 // ### kine distr vs centr vs occup
12261231 float sign = track.sign ();
12271232 float pt = track.pt ();
12281233 float eta = track.eta ();
12291234 float phi = track.phi ();
1235+ float phiInitial = phi;
12301236
12311237 if (confUsePhiAtTPCinnerR) {
1232- phi + = asin (0.8 /* inner TPC radius*/ / 2 * 0.3 * sign * 0.5 / pt);
1238+ phi - = asin (0.8 /* inner TPC radius*/ / 2 * 0.3 * sign * 0.5 / pt);
12331239 if (phi < 0 )
12341240 phi += TMath::TwoPi ();
12351241 else if (phi > TMath::TwoPi ())
@@ -1279,7 +1285,7 @@ struct DetectorOccupancyQaTask {
12791285 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hPt_pos" ), pt, occupancy);
12801286 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hEta_pos" ), eta, occupancy);
12811287 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hPhi_pos" ), phi, occupancy, pt);
1282- if (isGoodGlobal ) {
1288+ if (hasTPCspecCuts ) {
12831289 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hPt_pos" ), pt, occupancy);
12841290 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hEta_pos" ), eta, occupancy);
12851291 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hPhi_pos" ), phi, occupancy, pt);
@@ -1289,7 +1295,7 @@ struct DetectorOccupancyQaTask {
12891295 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hPt_neg" ), pt, occupancy);
12901296 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hEta_neg" ), eta, occupancy);
12911297 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/PV_hPhi_neg" ), phi, occupancy, pt);
1292- if (track. hasTPC () ) {
1298+ if (hasTPCspecCuts ) {
12931299 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hPt_neg" ), pt, occupancy);
12941300 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hEta_neg" ), eta, occupancy);
12951301 histos.fill (HIST (" track_distr_nITStrThisEv_10_200/kine_vs_weighted_occup/hPhi_neg" ), phi, occupancy, pt);
@@ -1333,20 +1339,28 @@ struct DetectorOccupancyQaTask {
13331339 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPt_pos" ), pt, occupancy);
13341340 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hEta_pos" ), eta, occupancy);
13351341 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPhi_pos" ), phi, occupancy, pt);
1336- if (isGoodGlobal ) {
1342+ if (hasTPCspecCuts ) {
13371343 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPt_pos" ), pt, occupancy);
13381344 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hEta_pos" ), eta, occupancy);
13391345 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_pos" ), phi, occupancy, pt);
1346+ if (pt > 0.7 && pt < 1.0 ) {
1347+ histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_posInitialQA" ), phiInitial);
1348+ histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_posModifiedQA" ), phi);
1349+ }
13401350 }
13411351 } else // negative tracks
13421352 {
13431353 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPt_neg" ), pt, occupancy);
13441354 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hEta_neg" ), eta, occupancy);
13451355 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/PV_hPhi_neg" ), phi, occupancy, pt);
1346- if (track. hasTPC () ) {
1356+ if (hasTPCspecCuts ) {
13471357 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPt_neg" ), pt, occupancy);
13481358 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hEta_neg" ), eta, occupancy);
13491359 histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_neg" ), phi, occupancy, pt);
1360+ if (pt > 0.7 && pt < 1.0 ) {
1361+ histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_negInitialQA" ), phiInitial);
1362+ histos.fill (HIST (" track_distr_nITStrThisEv_above_2000/kine_vs_weighted_occup/hPhi_negModifiedQA" ), phi);
1363+ }
13501364 }
13511365 }
13521366 // end of July 2025: for data vs MC kine distr comparison
0 commit comments