@@ -60,6 +60,7 @@ struct MCGeneratorStudies {
6060 Configurable<bool > mRequireNoSameBunchPileup {" mRequireNoSameBunchPileup" , true , " require no same bunch pileup in event cut" };
6161 Configurable<bool > mRequireGoodZvtxFT0vsPV {" mRequireGoodZvtxFT0vsPV" , true , " require good Zvtx between FT0 vs. PV in event cut" };
6262 Configurable<bool > mRequireEMCReadoutInMB {" mRequireEMCReadoutInMB" , true , " require the EMC to be read out in an MB collision (kTVXinEMC)" };
63+ Configurable<bool > mRequireEMCReadoutInL0 {" mRequireEMCReadoutInL0" , false , " require the EMC to be read out by L0 trigger" };
6364
6465 void init (InitContext const &)
6566 {
@@ -159,7 +160,7 @@ struct MCGeneratorStudies {
159160 continue ;
160161 else if (mSelectOnlyChargedParticles && TDatabasePDG::Instance ()->GetParticle (mcParticle.pdgCode ())->Charge ())
161162 continue ;
162- if (fabs (mcParticle.y ()) > mRapidityCut )
163+ if (std::abs (mcParticle.y ()) > mRapidityCut )
163164 continue ;
164165 if (!mcParticle.isPhysicalPrimary () && !mcParticle.producedByGenerator ())
165166 continue ;
@@ -186,7 +187,7 @@ struct MCGeneratorStudies {
186187 continue ;
187188 else if (mSelectOnlyChargedParticles && TDatabasePDG::Instance ()->GetParticle (mcParticle.pdgCode ())->Charge ())
188189 continue ;
189- if (fabs (mcParticle.y ()) > mRapidityCut )
190+ if (std::abs (mcParticle.y ()) > mRapidityCut )
190191 continue ;
191192 if (!mcParticle.isPhysicalPrimary () && !mcParticle.producedByGenerator ())
192193 continue ;
@@ -198,7 +199,7 @@ struct MCGeneratorStudies {
198199 mHistManager .fill (HIST (" Yield_Accepted" ), mcParticle.pt ());
199200 if (!mRequireTVX || collision.selection_bit (o2::aod::evsel::kIsTriggerTVX )) {
200201 mHistManager .fill (HIST (" Yield_T" ), mcParticle.pt ());
201- if (abs (collision.posZ ()) < mVertexCut ) {
202+ if (std:: abs (collision.posZ ()) < mVertexCut ) {
202203 mHistManager .fill (HIST (" Yield_TZ" ), mcParticle.pt ());
203204 if (!mRequireSel8 || collision.sel8 ()) {
204205 mHistManager .fill (HIST (" Yield_TZS" ), mcParticle.pt ());
@@ -207,9 +208,11 @@ struct MCGeneratorStudies {
207208 if (!mRequireNoSameBunchPileup || collision.selection_bit (o2::aod::evsel::kNoSameBunchPileup )) {
208209 mHistManager .fill (HIST (" Yield_TZSGU" ), mcParticle.pt ());
209210 if (!mRequireEMCReadoutInMB || (mRequireEMCCellContent ? collision.isemcreadout () : collision.alias_bit (kTVXinEMC ))) {
210- mHistManager .fill (HIST (" Yield_TZSGUE" ), mcParticle.pt ());
211- if (isAccepted (mcParticle, mcParticles))
212- mHistManager .fill (HIST (" Yield_TZSGUE_Accepted" ), mcParticle.pt ());
211+ if (!mRequireEMCReadoutInL0 || (collision.alias_bit (kEMC7 ) || collision.alias_bit (kDMC7 ))) {
212+ mHistManager .fill (HIST (" Yield_TZSGUE" ), mcParticle.pt ());
213+ if (isAccepted (mcParticle, mcParticles))
214+ mHistManager .fill (HIST (" Yield_TZSGUE_Accepted" ), mcParticle.pt ());
215+ }
213216 }
214217 }
215218 }
@@ -271,7 +274,7 @@ struct MCGeneratorStudies {
271274 fRegistry ->fill (HIST (" hEMCollisionCounter" ), 7.0 );
272275 if (collision.sel8 ())
273276 fRegistry ->fill (HIST (" hEMCollisionCounter" ), 8.0 );
274- if (abs (collision.posZ ()) < 10.0 )
277+ if (std:: abs (collision.posZ ()) < 10.0 )
275278 fRegistry ->fill (HIST (" hEMCollisionCounter" ), 9.0 );
276279 if (collision.alias_bit (kTVXinEMC ))
277280 fRegistry ->fill (HIST (" hEMCollisionCounter" ), 10.0 );
@@ -284,16 +287,19 @@ struct MCGeneratorStudies {
284287 fRegistry ->fill (HIST (" hCollisionCounter" ), 1 );
285288 if (!mRequireTVX || collision.selection_bit (o2::aod::evsel::kIsTriggerTVX )) {
286289 fRegistry ->fill (HIST (" hCollisionCounter" ), 2 );
287- if (abs (collision.posZ ()) < mVertexCut ) {
290+ if (std:: abs (collision.posZ ()) < mVertexCut ) {
288291 fRegistry ->fill (HIST (" hCollisionCounter" ), 3 );
289292 if (!mRequireSel8 || collision.sel8 ()) {
290293 fRegistry ->fill (HIST (" hCollisionCounter" ), 4 );
291294 if (!mRequireGoodZvtxFT0vsPV || collision.selection_bit (o2::aod::evsel::kIsGoodZvtxFT0vsPV )) {
292295 fRegistry ->fill (HIST (" hCollisionCounter" ), 5 );
293296 if (!mRequireNoSameBunchPileup || collision.selection_bit (o2::aod::evsel::kNoSameBunchPileup )) {
294297 fRegistry ->fill (HIST (" hCollisionCounter" ), 6 );
295- if (!mRequireEMCReadoutInMB || (mRequireEMCCellContent ? collision.isemcreadout () : collision.alias_bit (kTVXinEMC )))
296- fRegistry ->fill (HIST (" hCollisionCounter" ), 7 );
298+ if (!mRequireEMCReadoutInMB || (mRequireEMCCellContent ? collision.isemcreadout () : collision.alias_bit (kTVXinEMC ))) {
299+ if (!mRequireEMCReadoutInL0 || (collision.alias_bit (kEMC7 ) || collision.alias_bit (kDMC7 ))) {
300+ fRegistry ->fill (HIST (" hCollisionCounter" ), 7 );
301+ }
302+ }
297303 }
298304 }
299305 }
0 commit comments