Skip to content

Commit efc8457

Browse files
committed
Add option to directly fetch centrality calibration histograms
1 parent a336f80 commit efc8457

1 file changed

Lines changed: 39 additions & 37 deletions

File tree

Common/Tasks/centralityStudy.cxx

Lines changed: 39 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ struct centralityStudy {
324324
histos.add("hFT0COccupancyVsNGlobalTracksVsFT0C", "hFT0COccupancyVsNGlobalTracksVsFT0C", kTH3F, {axisFT0COccupancy, axisMultGlobalTracks, axisMultFT0C});
325325
}
326326

327-
if (doprocessCollisionsWithCentrality) {
327+
if (doprocessCollisionsWithCentrality || ccdb.fetchCentralityCalibration) {
328328
// in case requested: do vs centrality debugging
329329
histos.add("hCentrality", "hCentrality", kTH1F, {axisCentrality});
330330
histos.add("hNContribsVsCentrality", "hNContribsVsCentrality", kTH2F, {axisCentrality, axisMultPVContributors});
@@ -436,7 +436,7 @@ struct centralityStudy {
436436
}
437437
}
438438

439-
if (doprocessCollisionsWithCentrality && ccdb.fetchCentralityCalibration) {
439+
if (ccdb.fetchCentralityCalibration) {
440440
LOGF(info, "Acquiring centrality calibration for run %i", mRunNumber);
441441
TList* hCentralityObjects = nullptr;
442442
hCentralityObjects = mCcdb->getForRun<TList>(ccdb.pathCentrality, mRunNumber);
@@ -503,7 +503,7 @@ struct centralityStudy {
503503
centNGlo = collision.centNGlobal();
504504
}
505505
if constexpr (requires { collision.centMFT(); }) {
506-
centMFT = collision.centMFT();
506+
centMFT = collision.centMFT();
507507
}
508508
}
509509

@@ -570,7 +570,7 @@ struct centralityStudy {
570570
histPointers.insert({histPath + "hFDDCVsFT0C", histos.add((histPath + "hFDDCVsFT0C").c_str(), "hFDDCVsFT0C", {kTH2F, {{axisMultFT0C, axisMultFDDC}}})});
571571
}
572572

573-
if (doprocessCollisionsWithCentrality) {
573+
if (doprocessCollisionsWithCentrality || ccdb.fetchCentralityCalibration) {
574574
// in case requested: do vs centrality debugging
575575
histPointers.insert({histPath + "hCentrality", histos.add((histPath + "hCentrality").c_str(), "hCentrality", {kTH1F, {{axisCentrality}}})});
576576
histPointers.insert({histPath + "hNContribsVsCentrality", histos.add((histPath + "hNContribsVsCentrality").c_str(), "hNContribsVsCentrality", {kTH2F, {{axisCentrality, axisMultPVContributors}}})});
@@ -937,47 +937,49 @@ struct centralityStudy {
937937

938938
// if the table has centrality information
939939
// process FT0C centrality plots
940-
histos.fill(HIST("hCentrality"), centFT0C);
941-
histos.fill(HIST("hNContribsVsCentrality"), centFT0C, collision.multPVTotalContributors());
942-
histos.fill(HIST("hNITSTPCTracksVsCentrality"), centFT0C, collision.multNTracksITSTPC());
943-
histos.fill(HIST("hNITSOnlyTracksVsCentrality"), centFT0C, collision.multNTracksITSOnly());
944-
histos.fill(HIST("hNGlobalTracksVsCentrality"), centFT0C, collision.multNTracksGlobal());
945-
histos.fill(HIST("hNMFTTracksVsCentrality"), centFT0C, collision.mftNtracks());
946-
histos.fill(HIST("hPVChi2VsCentrality"), centFT0C, collision.multPVChi2());
947-
if (studies.doRunByRunHistograms) {
948-
getHist(TH1, histPath + "hCentrality")->Fill(centFT0C);
949-
getHist(TH2, histPath + "hNContribsVsCentrality")->Fill(centFT0C, collision.multPVTotalContributors());
950-
getHist(TH2, histPath + "hNITSTPCTracksVsCentrality")->Fill(centFT0C, collision.multNTracksITSTPC());
951-
getHist(TH2, histPath + "hNITSOnlyTracksVsCentrality")->Fill(centFT0C, collision.multNTracksITSOnly());
952-
getHist(TH2, histPath + "hNGlobalTracksVsCentrality")->Fill(centFT0C, collision.multNTracksGlobal());
953-
getHist(TH2, histPath + "hNMFTTracksVsCentrality")->Fill(centFT0C, collision.mftNtracks());
954-
getHist(TH2, histPath + "hPVChi2VsCentrality")->Fill(centFT0C, collision.multPVChi2());
955-
}
956-
if (studies.doOccupancyStudyVsCentrality2d) {
957-
histos.fill(HIST("hNcontribsProfileVsTrackOccupancyVsCentrality"), collision.trackOccupancyInTimeRange(), centFT0C, collision.multPVTotalContributors());
958-
histos.fill(HIST("hNGlobalTracksProfileVsTrackOccupancyVsCentrality"), collision.trackOccupancyInTimeRange(), centFT0C, collision.multNTracksGlobal());
959-
histos.fill(HIST("hNcontribsProfileVsFT0COccupancyVsCentrality"), collision.ft0cOccupancyInTimeRange(), centFT0C, collision.multPVTotalContributors());
960-
histos.fill(HIST("hNGlobalTracksProfileVsFT0COccupancyVsCentrality"), collision.ft0cOccupancyInTimeRange(), centFT0C, collision.multNTracksGlobal());
961-
}
940+
if (doprocessCollisionsWithCentrality || ccdb.fetchCentralityCalibration) {
941+
histos.fill(HIST("hCentrality"), centFT0C);
942+
histos.fill(HIST("hNContribsVsCentrality"), centFT0C, collision.multPVTotalContributors());
943+
histos.fill(HIST("hNITSTPCTracksVsCentrality"), centFT0C, collision.multNTracksITSTPC());
944+
histos.fill(HIST("hNITSOnlyTracksVsCentrality"), centFT0C, collision.multNTracksITSOnly());
945+
histos.fill(HIST("hNGlobalTracksVsCentrality"), centFT0C, collision.multNTracksGlobal());
946+
histos.fill(HIST("hNMFTTracksVsCentrality"), centFT0C, collision.mftNtracks());
947+
histos.fill(HIST("hPVChi2VsCentrality"), centFT0C, collision.multPVChi2());
948+
if (studies.doRunByRunHistograms) {
949+
getHist(TH1, histPath + "hCentrality")->Fill(centFT0C);
950+
getHist(TH2, histPath + "hNContribsVsCentrality")->Fill(centFT0C, collision.multPVTotalContributors());
951+
getHist(TH2, histPath + "hNITSTPCTracksVsCentrality")->Fill(centFT0C, collision.multNTracksITSTPC());
952+
getHist(TH2, histPath + "hNITSOnlyTracksVsCentrality")->Fill(centFT0C, collision.multNTracksITSOnly());
953+
getHist(TH2, histPath + "hNGlobalTracksVsCentrality")->Fill(centFT0C, collision.multNTracksGlobal());
954+
getHist(TH2, histPath + "hNMFTTracksVsCentrality")->Fill(centFT0C, collision.mftNtracks());
955+
getHist(TH2, histPath + "hPVChi2VsCentrality")->Fill(centFT0C, collision.multPVChi2());
956+
}
957+
if (studies.doOccupancyStudyVsCentrality2d) {
958+
histos.fill(HIST("hNcontribsProfileVsTrackOccupancyVsCentrality"), collision.trackOccupancyInTimeRange(), centFT0C, collision.multPVTotalContributors());
959+
histos.fill(HIST("hNGlobalTracksProfileVsTrackOccupancyVsCentrality"), collision.trackOccupancyInTimeRange(), centFT0C, collision.multNTracksGlobal());
960+
histos.fill(HIST("hNcontribsProfileVsFT0COccupancyVsCentrality"), collision.ft0cOccupancyInTimeRange(), centFT0C, collision.multPVTotalContributors());
961+
histos.fill(HIST("hNGlobalTracksProfileVsFT0COccupancyVsCentrality"), collision.ft0cOccupancyInTimeRange(), centFT0C, collision.multNTracksGlobal());
962+
}
962963

963-
if (studies.doOccupancyStudyVsCentrality3d) {
964-
histos.fill(HIST("hTrackOccupancyVsNContribsVsCentrality"), collision.trackOccupancyInTimeRange(), collision.multPVTotalContributors(), centFT0C);
965-
histos.fill(HIST("hTrackOccupancyVsNGlobalTracksVsCentrality"), collision.trackOccupancyInTimeRange(), collision.multNTracksGlobal(), centFT0C);
966-
histos.fill(HIST("hFT0COccupancyVsNContribsVsCentrality"), collision.ft0cOccupancyInTimeRange(), collision.multPVTotalContributors(), centFT0C);
967-
histos.fill(HIST("hFT0COccupancyVsNGlobalTracksVsCentrality"), collision.ft0cOccupancyInTimeRange(), collision.multNTracksGlobal(), centFT0C);
964+
if (studies.doOccupancyStudyVsCentrality3d) {
965+
histos.fill(HIST("hTrackOccupancyVsNContribsVsCentrality"), collision.trackOccupancyInTimeRange(), collision.multPVTotalContributors(), centFT0C);
966+
histos.fill(HIST("hTrackOccupancyVsNGlobalTracksVsCentrality"), collision.trackOccupancyInTimeRange(), collision.multNTracksGlobal(), centFT0C);
967+
histos.fill(HIST("hFT0COccupancyVsNContribsVsCentrality"), collision.ft0cOccupancyInTimeRange(), collision.multPVTotalContributors(), centFT0C);
968+
histos.fill(HIST("hFT0COccupancyVsNGlobalTracksVsCentrality"), collision.ft0cOccupancyInTimeRange(), collision.multNTracksGlobal(), centFT0C);
969+
}
968970
}
969971

970972
if constexpr (requires { collision.has_multBC(); }) {
971973
if (collision.has_multBC()) {
972974
auto multbc = collision.template multBC_as<aod::MultBCs>();
973-
uint64_t bcTimestamp = multbc.timestamp();
975+
const uint64_t bcTimestamp = multbc.timestamp();
974976
const float interactionRate = mRateFetcher.fetch(mCcdb.service, bcTimestamp, mRunNumber, ccdb.irSource.value, ccdb.irCrashOnNull) / 1000.; // kHz
975977
histos.fill(HIST("hInteractionRate"), interactionRate);
976-
if constexpr (requires { collision.FT0C(); }) {
977-
histos.fill(HIST("hInteractionRateVsCentrality"), collision.centFT0C(), interactionRate);
978-
if (studies.doRunByRunHistograms) {
979-
getHist(TH2, histPath + "hInteractionRateVsCentrality")->Fill(collision.centFT0C(), interactionRate);
980-
}
978+
if (doprocessCollisionsWithCentrality || ccdb.fetchCentralityCalibration) {
979+
histos.fill(HIST("hInteractionRateVsCentrality"), centFT0C, interactionRate);
980+
}
981+
if (studies.doRunByRunHistograms) {
982+
getHist(TH2, histPath + "hInteractionRateVsCentrality")->Fill(centFT0C, interactionRate);
981983
}
982984
if (studies.doRunByRunHistograms) {
983985
getHist(TH1, histPath + "hInteractionRate")->Fill(interactionRate);

0 commit comments

Comments
 (0)