@@ -144,7 +144,7 @@ struct JetHadronRecoil {
144144
145145 registry.add (" hZvtxSelected" , " Z vertex position;Z_{vtx};entries" , {HistType::kTH1F , {{80 , -20 , 20 }}}, doSumw);
146146
147- if (doprocessData || doprocessDataWithRhoSubtraction || doprocessMCD || doprocessMCDWithRhoSubtraction || doprocessMCDWeighted || doprocessMCDWeightedWithRhoSubtraction || doprocessMCP || doprocessMCPWeighted) {
147+ if (doprocessData || doprocessDataWithRhoSubtraction || doprocessMCD || doprocessMCDWithRhoSubtraction || doprocessMCDWeighted || doprocessMCDWeightedWithRhoSubtraction || doprocessMCP || doprocessMCPWeighted || doprocessMCPOnTheFly || doprocessMCPOnTheFlyWeighted ) {
148148 registry.add (" hNtrig" , " number of triggers;trigger type;entries" , {HistType::kTH1F , {{2 , 0 , 2 }}}, doSumw);
149149 registry.add (" hSignalTriggersPtHard" , " Signal triggers vs PtHard" , {HistType::kTH1F , {pThatAxis}}, doSumw);
150150 registry.add (" hReferenceTriggersPtHard" , " Reference triggers vs PtHard" , {HistType::kTH1F , {pThatAxis}}, doSumw);
@@ -187,7 +187,7 @@ struct JetHadronRecoil {
187187 registry.add (" hPtTrackMatchedToCollisions" , " Track p_{T};p_{T};entries" , {HistType::kTH1F , {{200 , 0 , 200 }}}, doSumw);
188188 }
189189
190- if (doprocessMCP || doprocessMCPWeighted) {
190+ if (doprocessMCP || doprocessMCPWeighted || doprocessMCPOnTheFly || doprocessMCPOnTheFlyWeighted ) {
191191 registry.add (" hPartvsJets" , " comparing leading particles and jets;p_{T,part};p_{T,jet};#hat{p}" , {HistType::kTH3F , {{200 , 0 , 200 }, {500 , -100 , 400 }, {195 , 5 , 200 }}}, doSumw);
192192 registry.add (" hPtPart" , " Particle p_{T};p_{T};entries" , {HistType::kTH1F , {{200 , 0 , 200 }}}, doSumw);
193193 registry.add (" hEtaPart" , " Particle #eta;#eta;entries" , {HistType::kTH1F , {{100 , -1.0 , 1.0 }}}, doSumw);
@@ -914,6 +914,36 @@ struct JetHadronRecoil {
914914 }
915915 PROCESS_SWITCH (JetHadronRecoil, processMCPWeighted, " process MC particle level with event weights" , false );
916916
917+ void processMCPOnTheFly (aod::JetMcCollision const & mccollision,
918+ soa::Filtered<soa::Join<aod::ChargedMCParticleLevelJets, aod::ChargedMCParticleLevelJetConstituents>> const & jets,
919+ soa::Filtered<aod::JetParticles> const & particles)
920+ {
921+ if (std::abs (mccollision.posZ ()) > vertexZCut) {
922+ return ;
923+ }
924+ if (mccollision.ptHard () < pTHatMinEvent) {
925+ return ;
926+ }
927+ registry.fill (HIST (" hZvtxSelected" ), mccollision.posZ ());
928+ fillMCPHistograms (jets, particles, 1.0 , mccollision.ptHard ());
929+ }
930+ PROCESS_SWITCH (JetHadronRecoil, processMCPOnTheFly, " process MC particle level for on-the-fly simulations" , false );
931+
932+ void processMCPOnTheFlyWeighted (aod::JetMcCollision const & mccollision,
933+ soa::Filtered<soa::Join<aod::ChargedMCParticleLevelJets, aod::ChargedMCParticleLevelJetConstituents>> const & jets,
934+ soa::Filtered<aod::JetParticles> const & particles)
935+ {
936+ if (std::abs (mccollision.posZ ()) > vertexZCut) {
937+ return ;
938+ }
939+ if (mccollision.ptHard () < pTHatMinEvent) {
940+ return ;
941+ }
942+ registry.fill (HIST (" hZvtxSelected" ), mccollision.posZ (), mccollision.weight ());
943+ fillMCPHistograms (jets, particles, mccollision.weight (), mccollision.ptHard ());
944+ }
945+ PROCESS_SWITCH (JetHadronRecoil, processMCPOnTheFlyWeighted, " process MC particle level for on-the-fly simulations with event weights" , false );
946+
917947 void processJetsMCPMCDMatched (aod::JetMcCollisions::iterator const & mccollision,
918948 soa::SmallGroups<aod::JetCollisionsMCD> const & collisions,
919949 soa::Filtered<soa::Join<aod::ChargedMCDetectorLevelJets, aod::ChargedMCDetectorLevelJetConstituents, aod::ChargedMCDetectorLevelJetsMatchedToChargedMCParticleLevelJets>> const & mcdjets,
0 commit comments