Skip to content

Commit 28c5ab8

Browse files
hernasabSabrina Hernandez
andauthored
[PWGCF] adjusted processzdc function (#13666)
Co-authored-by: Sabrina Hernandez <sabrina.gabrielle.hernandez@cern.ch>
1 parent eb8d85d commit 28c5ab8

File tree

1 file changed

+72
-39
lines changed

1 file changed

+72
-39
lines changed

PWGCF/Flow/Tasks/flowZdcTask.cxx

Lines changed: 72 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -112,14 +112,15 @@ struct FlowZdcTask {
112112
Configurable<float> minT0CcentCut{"minT0CcentCut", 0.0, "Min T0C Cent. cut"};
113113
Configurable<float> maxT0CcentCut{"maxT0CcentCut", 90.0, "Max T0C Cent. cut"};
114114

115+
using ColEvents = soa::Join<aod::Collisions, aod::EvSels>;
115116
Filter collisionFilter = nabs(aod::collision::posZ) < cfgCutVertex;
116117
Filter trackFilter = ((aod::track::eta > minEta) && (aod::track::eta < maxEta));
117118
using ColEvSels = soa::Join<aod::Collisions, aod::EvSels, o2::aod::CentFT0Cs, aod::TPCMults, o2::aod::BarrelMults, aod::FT0MultZeqs>;
118119
using AodCollisions = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs, aod::Mults>>;
119120
using AodTracks = soa::Filtered<soa::Join<aod::Tracks, aod::TrackSelection, aod::TracksExtra, aod::TracksDCA>>;
120121
Partition<AodTracks> tracksIUWithTPC = (aod::track::tpcNClsFindable > (uint8_t)0);
121-
using TracksSel = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksCovIU, aod::TrackSelection, aod::TracksDCA>;
122122
using BCsRun3 = soa::Join<aod::BCs, aod::Timestamps, aod::BcSels, aod::Run3MatchedToBCSparse>;
123+
using TracksSel = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksCovIU, aod::TrackSelection, aod::TracksDCA>;
123124
using CollisionDataTable = soa::Join<aod::Collisions, aod::EvSels, aod::Mults, aod::CentFT0Cs, aod::CentFT0CVariant1s, aod::CentFT0Ms>;
124125
using TrackDataTable = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::TrackSelection>;
125126
using FilTrackDataTable = soa::Filtered<TrackDataTable>;
@@ -863,45 +864,77 @@ struct FlowZdcTask {
863864
histos.get<TH2>(HIST("ZDC_energy_vs_ZEM"))->Fill(sumZEM, sumZDC);
864865
}
865866

866-
void processZdc(aod::Zdc const& zdc)
867+
void processZdc(
868+
ColEvents const& cols,
869+
BCsRun3 const& /*bcs*/,
870+
aod::Zdcs const& /*zdcs*/)
867871
{
868-
auto znA = zdc.amplitudeZNA() / cfgCollisionEnergy;
869-
auto znC = zdc.amplitudeZNC() / cfgCollisionEnergy;
870-
auto zpA = zdc.amplitudeZPA() / cfgCollisionEnergy;
871-
auto zpC = zdc.amplitudeZPC() / cfgCollisionEnergy;
872-
float sumZNC = ((zdc.energySectorZNC())[0] + (zdc.energySectorZNC())[1] + (zdc.energySectorZNC())[2] + (zdc.energySectorZNC())[3]) / cfgCollisionEnergy;
873-
float sumZNA = ((zdc.energySectorZNA())[0] + (zdc.energySectorZNA())[1] + (zdc.energySectorZNA())[2] + (zdc.energySectorZNA())[3]) / cfgCollisionEnergy;
874-
float sumZPC = ((zdc.energySectorZPC())[0] + (zdc.energySectorZPC())[1] + (zdc.energySectorZPC())[2] + (zdc.energySectorZPC())[3]) / cfgCollisionEnergy;
875-
float sumZPA = ((zdc.energySectorZPA())[0] + (zdc.energySectorZPA())[1] + (zdc.energySectorZPA())[2] + (zdc.energySectorZPA())[3]) / cfgCollisionEnergy;
876-
float commonSumZnc = zdc.energyCommonZNC() / cfgCollisionEnergy;
877-
float commonSumZna = zdc.energyCommonZNA() / cfgCollisionEnergy;
878-
float commonSumZpc = zdc.energyCommonZPC() / cfgCollisionEnergy;
879-
float commonSumZpa = zdc.energyCommonZPA() / cfgCollisionEnergy;
880-
float aZEM1 = zdc.amplitudeZEM1();
881-
float aZEM2 = zdc.amplitudeZEM2();
882-
float sumZEMs = aZEM1 + aZEM2;
883-
if (sumZEMs > zemCut) {
884-
histos.fill(HIST("ampZna"), znA);
885-
histos.fill(HIST("ampZnc"), znC);
886-
histos.fill(HIST("ampZpa"), zpA);
887-
histos.fill(HIST("ampZpc"), zpC);
888-
histos.fill(HIST("ampZEM1"), aZEM1);
889-
histos.fill(HIST("ampZEM2"), aZEM2);
890-
histos.fill(HIST("ZnVsZem"), sumZEMs, znC + znA);
891-
histos.fill(HIST("ZnaVsZnc"), znA, znC);
892-
histos.fill(HIST("ZpaVsZpc"), zpA, zpC);
893-
histos.fill(HIST("ZnaVsZpa"), znA, zpA);
894-
histos.fill(HIST("ZncVsZpc"), znC, zpC);
895-
histos.fill(HIST("ZnccVsZncSum"), sumZNC, commonSumZnc);
896-
histos.fill(HIST("ZnacVsZnaSum"), sumZNA, commonSumZna);
897-
histos.fill(HIST("ZpccVsZpcSum"), sumZPC, commonSumZpc);
898-
histos.fill(HIST("ZpacVsZpaSum"), sumZPA, commonSumZpa);
899-
histos.fill(HIST("ZncVsTdc"), zdc.timeZNC(), znC);
900-
histos.fill(HIST("ZnaVsTdc"), zdc.timeZNA(), znA);
901-
histos.fill(HIST("ZpcVsTdc"), zdc.timeZPC(), zpC);
902-
histos.fill(HIST("ZpaVsTdc"), zdc.timeZPA(), zpA);
903-
histos.fill(HIST("Zem1VsTdc"), zdc.timeZEM1(), aZEM1);
904-
histos.fill(HIST("Zem2VsTdc"), zdc.timeZEM2(), aZEM2);
872+
for (const auto& collision : cols) {
873+
const auto& foundBC = collision.foundBC_as<BCsRun3>();
874+
if (foundBC.has_zdc()) {
875+
const auto& zdc = foundBC.zdc();
876+
auto znA = zdc.amplitudeZNA() / cfgCollisionEnergy;
877+
auto znC = zdc.amplitudeZNC() / cfgCollisionEnergy;
878+
auto zpA = zdc.amplitudeZPA() / cfgCollisionEnergy;
879+
auto zpC = zdc.amplitudeZPC() / cfgCollisionEnergy;
880+
float sumZNC = ((zdc.energySectorZNC())[0] + (zdc.energySectorZNC())[1] + (zdc.energySectorZNC())[2] + (zdc.energySectorZNC())[3]) / cfgCollisionEnergy;
881+
float sumZNA = ((zdc.energySectorZNA())[0] + (zdc.energySectorZNA())[1] + (zdc.energySectorZNA())[2] + (zdc.energySectorZNA())[3]) / cfgCollisionEnergy;
882+
float sumZPC = ((zdc.energySectorZPC())[0] + (zdc.energySectorZPC())[1] + (zdc.energySectorZPC())[2] + (zdc.energySectorZPC())[3]) / cfgCollisionEnergy;
883+
float sumZPA = ((zdc.energySectorZPA())[0] + (zdc.energySectorZPA())[1] + (zdc.energySectorZPA())[2] + (zdc.energySectorZPA())[3]) / cfgCollisionEnergy;
884+
float commonSumZnc = zdc.energyCommonZNC() / cfgCollisionEnergy;
885+
float commonSumZna = zdc.energyCommonZNA() / cfgCollisionEnergy;
886+
float commonSumZpc = zdc.energyCommonZPC() / cfgCollisionEnergy;
887+
float commonSumZpa = zdc.energyCommonZPA() / cfgCollisionEnergy;
888+
float aZEM1 = zdc.amplitudeZEM1();
889+
float aZEM2 = zdc.amplitudeZEM2();
890+
float sumZEMs = aZEM1 + aZEM2;
891+
auto tZNA = zdc.timeZNA();
892+
auto tZNC = zdc.timeZNC();
893+
auto tZPA = zdc.timeZPA();
894+
auto tZPC = zdc.timeZPC();
895+
if (isTDCcut) {
896+
if ((tZNA >= minTdcZn) && (tZNA <= maxTdcZn))
897+
histos.fill(HIST("ampZna"), znA);
898+
if ((tZNC >= minTdcZn) && (tZNC <= minTdcZn))
899+
histos.fill(HIST("ampZnc"), znC);
900+
if ((tZPA >= minTdcZp) && (tZPA <= maxTdcZp))
901+
histos.fill(HIST("ampZpa"), zpA);
902+
if ((tZPC >= minTdcZp) && (tZPC <= maxTdcZp))
903+
histos.fill(HIST("ampZpc"), zpC);
904+
if (((tZNC >= minTdcZn) && (tZNC <= maxTdcZn)) && ((tZNA >= minTdcZn) && (tZNA <= maxTdcZn)))
905+
histos.fill(HIST("ZnVsZem"), sumZEMs, znC + znA);
906+
if (((tZNC >= minTdcZn) && (tZNC <= maxTdcZn)) && ((tZNA >= minTdcZn) && (tZNA <= maxTdcZn)))
907+
histos.fill(HIST("ZnaVsZnc"), znA, znC);
908+
if (((tZPC >= minTdcZp) && (tZPC <= maxTdcZp)) && ((tZPA >= minTdcZp) && (tZPA <= maxTdcZp)))
909+
histos.fill(HIST("ZpaVsZpc"), zpA, zpC);
910+
if ((tZNA >= minTdcZn) && (tZNA <= maxTdcZn))
911+
histos.fill(HIST("ZnaVsZpa"), znA, zpA);
912+
if ((tZNC >= minTdcZn) && (tZNC <= maxTdcZn))
913+
histos.fill(HIST("ZncVsZpc"), znC, zpC);
914+
} else {
915+
histos.fill(HIST("ampZna"), znA);
916+
histos.fill(HIST("ampZnc"), znC);
917+
histos.fill(HIST("ampZpa"), zpA);
918+
histos.fill(HIST("ampZpc"), zpC);
919+
histos.fill(HIST("ZnVsZem"), sumZEMs, znC + znA);
920+
histos.fill(HIST("ZnaVsZnc"), znA, znC);
921+
histos.fill(HIST("ZpaVsZpc"), zpA, zpC);
922+
histos.fill(HIST("ZnaVsZpa"), znA, zpA);
923+
histos.fill(HIST("ZncVsZpc"), znC, zpC);
924+
}
925+
histos.fill(HIST("ampZEM1"), aZEM1);
926+
histos.fill(HIST("ampZEM2"), aZEM2);
927+
histos.fill(HIST("ZnccVsZncSum"), sumZNC, commonSumZnc);
928+
histos.fill(HIST("ZnacVsZnaSum"), sumZNA, commonSumZna);
929+
histos.fill(HIST("ZpccVsZpcSum"), sumZPC, commonSumZpc);
930+
histos.fill(HIST("ZpacVsZpaSum"), sumZPA, commonSumZpa);
931+
histos.fill(HIST("ZncVsTdc"), zdc.timeZNC(), znC);
932+
histos.fill(HIST("ZnaVsTdc"), zdc.timeZNA(), znA);
933+
histos.fill(HIST("ZpcVsTdc"), zdc.timeZPC(), zpC);
934+
histos.fill(HIST("ZpaVsTdc"), zdc.timeZPA(), zpA);
935+
histos.fill(HIST("Zem1VsTdc"), zdc.timeZEM1(), aZEM1);
936+
histos.fill(HIST("Zem2VsTdc"), zdc.timeZEM2(), aZEM2);
937+
}
905938
}
906939
}
907940

0 commit comments

Comments
 (0)