@@ -244,6 +244,7 @@ struct centralityStudy {
244244 histos.add (" hNGlobalTracks" , " hNGlobalTracks" , kTH1D , {axisMultUltraFineGlobalTracks});
245245 histos.add (" hNMFTTracks" , " hNMFTTracks" , kTH1D , {axisMultUltraFineMFTTracks});
246246 histos.add (" hNPVContributors" , " hNPVContributors" , kTH1D , {axisMultUltraFinePVContributors});
247+ histos.add (" hInteractionRate" , " hInteractionRate" , kTH1D , {axisInteractionRate});
247248
248249 histos.add (" hFT0CvsPVz_Collisions" , " hFT0CvsPVz_Collisions" , kTProfile , {axisPVz});
249250 histos.add (" hFT0AvsPVz_Collisions" , " hFT0AvsPVz_Collisions" , kTProfile , {axisPVz});
@@ -332,6 +333,8 @@ struct centralityStudy {
332333 histos.add (" hFT0A_BCs" , " hFT0A_BCs" , kTH1D , {axisMultUltraFineFT0A});
333334 histos.add (" hFT0M_BCs" , " hFT0M_BCs" , kTH1D , {axisMultUltraFineFT0M});
334335 histos.add (" hFV0A_BCs" , " hFV0A_BCs" , kTH1D , {axisMultUltraFineFV0A});
336+ histos.add (" hInteractionRate_BCs" , " hInteractionRate_BCs" , kTH1D , {axisInteractionRate});
337+
335338 histos.add (" hFV0AT0C_BCs" , " hFV0AT0C_BCs" , kTH1D , {axisMultUltraFineFV0AT0C});
336339 histos.add (" hScaledFT0M_BCs" , " hScaledFT0M_BCs" , kTH1D , {axisMultUltraFineScaledFT0M});
337340 histos.add (" hScaledFV0AT0C_BCs" , " hScaledFV0AT0C_BCs" , kTH1D , {axisMultUltraFineScaledFV0AT0C});
@@ -494,6 +497,7 @@ struct centralityStudy {
494497 histPointers.insert ({histPath + " hPVzProfileCoVsTime" , histos.add ((histPath + " hPVzProfileCoVsTime" ).c_str (), " hPVzProfileCoVsTime" , {kTProfile , {{axisDeltaTimestamp}}})});
495498 histPointers.insert ({histPath + " hPVzProfileBcVsTime" , histos.add ((histPath + " hPVzProfileBcVsTime" ).c_str (), " hPVzProfileBcVsTime" , {kTProfile , {{axisDeltaTimestamp}}})});
496499 histPointers.insert ({histPath + " hIRProfileVsTime" , histos.add ((histPath + " hIRProfileVsTime" ).c_str (), " hIRProfileVsTime" , {kTProfile , {{axisDeltaTimestamp}}})});
500+ histPointers.insert ({histPath + " hInteractionRate" , histos.add ((histPath + " hInteractionRate" ).c_str (), " hInteractionRate" , {kTH1D , {{axisInteractionRate}}})});
497501 }
498502 }
499503
@@ -861,24 +865,26 @@ struct centralityStudy {
861865
862866 if constexpr (requires { collision.has_multBC (); }) {
863867 if (collision.has_multBC ()) {
864- initRun (collision);
865868 auto multbc = collision.template multBC_as <aod::MultBCs>();
866869 uint64_t bcTimestamp = multbc.timestamp ();
867- const float hoursAfterStartOfRun = static_cast <float >(bcTimestamp - startOfRunTimestamp) / 3600000.0 ;
868870 const float interactionRate = mRateFetcher .fetch (ccdb.service , bcTimestamp, mRunNumber , irSource.value , irCrashOnNull) / 1000 .; // kHz
869-
870- if (studies.doTimeStudies && studies.doRunByRunHistograms ) {
871- getHist (TH2, histPath + " hFT0AVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0A ());
872- getHist (TH2, histPath + " hFT0CVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0C ());
873- getHist (TH2, histPath + " hFT0MVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0M ());
874- getHist (TH2, histPath + " hFV0AVsTime" )->Fill (hoursAfterStartOfRun, collision.multFV0A ());
875- getHist (TH2, histPath + " hFV0AOuterVsTime" )->Fill (hoursAfterStartOfRun, collision.multFV0AOuter ());
876- getHist (TH2, histPath + " hMFTTracksVsTime" )->Fill (hoursAfterStartOfRun, collision.mftNtracks ());
877- getHist (TH2, histPath + " hNGlobalVsTime" )->Fill (hoursAfterStartOfRun, collision.multNTracksGlobal ());
878- getHist (TH2, histPath + " hNTPVContributorsVsTime" )->Fill (hoursAfterStartOfRun, collision.multPVTotalContributors ());
879- getHist (TProfile, histPath + " hPVzProfileCoVsTime" )->Fill (hoursAfterStartOfRun, collision.multPVz ());
880- getHist (TProfile, histPath + " hPVzProfileBcVsTime" )->Fill (hoursAfterStartOfRun, multbc.multFT0PosZ ());
881- getHist (TProfile, histPath + " hIRProfileVsTime" )->Fill (hoursAfterStartOfRun, interactionRate);
871+ histos.fill (HIST (" hInteractionRate" ), interactionRate);
872+ if (studies.doRunByRunHistograms ) {
873+ getHist (TH1, histPath + " hInteractionRate" )->Fill (interactionRate);
874+ if (studies.doTimeStudies ) {
875+ const float hoursAfterStartOfRun = static_cast <float >(bcTimestamp - startOfRunTimestamp) / 3600000.0 ;
876+ getHist (TH2, histPath + " hFT0AVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0A ());
877+ getHist (TH2, histPath + " hFT0CVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0C ());
878+ getHist (TH2, histPath + " hFT0MVsTime" )->Fill (hoursAfterStartOfRun, collision.multFT0M ());
879+ getHist (TH2, histPath + " hFV0AVsTime" )->Fill (hoursAfterStartOfRun, collision.multFV0A ());
880+ getHist (TH2, histPath + " hFV0AOuterVsTime" )->Fill (hoursAfterStartOfRun, collision.multFV0AOuter ());
881+ getHist (TH2, histPath + " hMFTTracksVsTime" )->Fill (hoursAfterStartOfRun, collision.mftNtracks ());
882+ getHist (TH2, histPath + " hNGlobalVsTime" )->Fill (hoursAfterStartOfRun, collision.multNTracksGlobal ());
883+ getHist (TH2, histPath + " hNTPVContributorsVsTime" )->Fill (hoursAfterStartOfRun, collision.multPVTotalContributors ());
884+ getHist (TProfile, histPath + " hPVzProfileCoVsTime" )->Fill (hoursAfterStartOfRun, collision.multPVz ());
885+ getHist (TProfile, histPath + " hPVzProfileBcVsTime" )->Fill (hoursAfterStartOfRun, multbc.multFT0PosZ ());
886+ getHist (TProfile, histPath + " hIRProfileVsTime" )->Fill (hoursAfterStartOfRun, interactionRate);
887+ }
882888 }
883889 }
884890 }
@@ -1007,6 +1013,10 @@ struct centralityStudy {
10071013 histos.fill (HIST (" hFV0A_BCs" ), multbc.multFV0A () * scale.factorFV0A );
10081014 histos.fill (HIST (" hFV0AT0C_BCs" ), (multbc.multFV0A () + multbc.multFT0C ()) * scale.factorFV0AT0C );
10091015
1016+ uint64_t bcTimestamp = multbc.timestamp ();
1017+ const float interactionRate = mRateFetcher .fetch (ccdb.service , bcTimestamp, mRunNumber , irSource.value , irCrashOnNull) / 1000 .; // kHz
1018+ histos.fill (HIST (" hInteractionRate_BCs" ), interactionRate);
1019+
10101020 if (studies.do2DPlots ) {
10111021 histos.fill (HIST (" hFT0AVsFT0C_BCs" ), multbc.multFT0C () * scale.factorFT0C , multbc.multFT0A () * scale.factorFT0A );
10121022 histos.fill (HIST (" hFV0AVsFT0C_BCs" ), multbc.multFT0C () * scale.factorFT0C , multbc.multFV0A () * scale.factorFV0A );
0 commit comments