@@ -65,9 +65,19 @@ struct centralityStudy {
6565 Configurable<float > scaleSignalFT0M{" scaleSignalFT0M" , 1 .00f , " scale FT0M signal for convenience" };
6666 Configurable<float > scaleSignalFV0A{" scaleSignalFV0A" , 1 .00f , " scale FV0A signal for convenience" };
6767
68+ // _______________________________________
69+ // upc rejection criteria
6870 // reject low zna/c
69- Configurable<float > minZNACsignal{" minZNACsignal" , 15 .0f , " min zna/c signal" };
70- Configurable<float > maxFT0CforZNACselection{" maxFT0CforZNACselection" , 35000 .0f , " max ft0c signal for minZNACsignal to work" };
71+ struct : ConfigurableGroup {
72+ Configurable<float > minZNACsignal{" minZNACsignal" , -999999 .0f , " min zna/c signal" };
73+ Configurable<float > maxFT0CforZNACselection{" maxFT0CforZNACselection" , -99999 .0f , " max ft0c signal for minZNACsignal to work" };
74+
75+ Configurable<float > minFV0Asignal{" minFV0Asignal" , -999999 .0f , " min fv0a signal" };
76+ Configurable<float > maxFT0CforFV0Aselection{" maxFT0CforFV0Aselection" , -99999 .0f , " max ft0c signal for minFV0Asignal to work" };
77+
78+ Configurable<float > minFDDAsignal{" minFDDAsignal" , -999999 .0f , " min fdda signal" };
79+ Configurable<float > maxFT0CforFDDAselection{" maxFT0CforFDDAselection" , -99999 .0f , " max ft0c signal for minFDDAsignal to work" };
80+ } upcRejection;
7181
7282 // Configurable Axes for 2d plots, etc
7383 ConfigurableAxis axisMultFV0A{" axisMultFV0A" , {1000 , 0 , 100000 }, " FV0A amplitude" };
@@ -244,9 +254,17 @@ struct centralityStudy {
244254 }
245255 histos.fill (HIST (" hCollisionSelection" ), 14 /* Not ITS ROF pileup (strict) */ );
246256
247- if (collision.multFT0C () < maxFT0CforZNACselection &&
248- collision.multZNA () < minZNACsignal &&
249- collision.multZNC () < minZNACsignal) {
257+ if (collision.multFT0C () < upcRejection.maxFT0CforZNACselection &&
258+ collision.multZNA () < upcRejection.minZNACsignal &&
259+ collision.multZNC () < upcRejection.minZNACsignal ) {
260+ return ;
261+ }
262+ if (collision.multFT0C () < upcRejection.maxFT0CforFV0Aselection &&
263+ collision.multFV0A () < upcRejection.minFV0Asignal ) {
264+ return ;
265+ }
266+ if (collision.multFT0C () < upcRejection.maxFT0CforFDDAselection &&
267+ collision.multFDDA () < upcRejection.minFDDAsignal ) {
250268 return ;
251269 }
252270 histos.fill (HIST (" hCollisionSelection" ), 15 /* pass em/upc rejection */ );
@@ -320,11 +338,20 @@ struct centralityStudy {
320338 }
321339 histos.fill (HIST (" hBCSelection" ), 4 ); // FV0OrA
322340
323- if (multbc.multBCFT0C () < maxFT0CforZNACselection &&
324- multbc.multBCZNA () < minZNACsignal &&
325- multbc.multBCZNC () < minZNACsignal) {
341+ if (multbc.multBCFT0C () < upcRejection. maxFT0CforZNACselection &&
342+ multbc.multBCZNA () < upcRejection. minZNACsignal &&
343+ multbc.multBCZNC () < upcRejection. minZNACsignal ) {
326344 return ;
327345 }
346+ if (multbc.multBCFT0C () < upcRejection.maxFT0CforFV0Aselection &&
347+ multbc.multBCFV0A () < upcRejection.minFV0Asignal ) {
348+ return ;
349+ }
350+ if (multbc.multBCFT0C () < upcRejection.maxFT0CforFDDAselection &&
351+ multbc.multBCFDDA () < upcRejection.minFDDAsignal ) {
352+ return ;
353+ }
354+
328355 histos.fill (HIST (" hBCSelection" ), 5 ); // znac
329356
330357 // if we got here, we also finally fill the FT0C histogram, please
0 commit comments