@@ -463,9 +463,8 @@ struct JetSpectraCharged {
463463 }
464464
465465 template <typename TJets>
466- void fillJetHistograms (TJets const & jet, float centrality, float weight = 1.0 )
466+ void fillJetHistograms (TJets const & jet, float centrality, float weight = 1.0 , float pTHat = 999.0 )
467467 {
468- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
469468 if (jet.pt () > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
470469 return ;
471470 }
@@ -487,9 +486,8 @@ struct JetSpectraCharged {
487486 }
488487
489488 template <typename TJets>
490- void fillJetAreaSubHistograms (TJets const & jet, float centrality, float rho, float weight = 1.0 )
489+ void fillJetAreaSubHistograms (TJets const & jet, float centrality, float rho, float weight = 1.0 , float pTHat = 999.0 )
491490 {
492- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
493491 if (jet.pt () > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
494492 return ;
495493 }
@@ -516,9 +514,8 @@ struct JetSpectraCharged {
516514 }
517515
518516 template <typename TJets>
519- void fillMCPHistograms (TJets const & jet, float weight = 1.0 )
517+ void fillMCPHistograms (TJets const & jet, float weight = 1.0 , float pTHat = 999.0 )
520518 {
521- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
522519 if (jet.pt () > pTHatMaxMCP * pTHat || pTHat < pTHatAbsoluteMin) {
523520 return ;
524521 }
@@ -538,9 +535,8 @@ struct JetSpectraCharged {
538535 }
539536
540537 template <typename TJets>
541- void fillMCPAreaSubHistograms (TJets const & jet, float rho = 0.0 , float weight = 1.0 )
538+ void fillMCPAreaSubHistograms (TJets const & jet, float rho = 0.0 , float weight = 1.0 , float pTHat = 999.0 )
542539 {
543- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
544540 if (jet.pt () > pTHatMaxMCP * pTHat || pTHat < pTHatAbsoluteMin) {
545541 return ;
546542 }
@@ -559,9 +555,8 @@ struct JetSpectraCharged {
559555 }
560556
561557 template <typename TJets>
562- void fillEventWiseConstituentSubtractedHistograms (TJets const & jet, float centrality, float weight = 1.0 )
558+ void fillEventWiseConstituentSubtractedHistograms (TJets const & jet, float centrality, float weight = 1.0 , float pTHat = 999.0 )
563559 {
564- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
565560 if (jet.pt () > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
566561 return ;
567562 }
@@ -572,9 +567,8 @@ struct JetSpectraCharged {
572567 }
573568
574569 template <typename TBase, typename TTag>
575- void fillMatchedHistograms (TBase const & jetMCD, float weight = 1.0 )
570+ void fillMatchedHistograms (TBase const & jetMCD, float weight = 1.0 , float pTHat = 999.0 )
576571 {
577- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
578572 if (jetMCD.pt () > pTHatMaxMCD * pTHat || pTHat < pTHatAbsoluteMin) {
579573 return ;
580574 }
@@ -665,15 +659,14 @@ struct JetSpectraCharged {
665659 }
666660
667661 template <typename TBase, typename TTag>
668- void fillGeoMatchedAreaSubHistograms (TBase const & jetMCD, float rho, float mcrho = 0.0 , float weight = 1.0 )
662+ void fillGeoMatchedAreaSubHistograms (TBase const & jetMCD, float rho, float mcrho = 0.0 , float weight = 1.0 , float pTHat = 999.0 )
669663 {
670- float pTHat = 10 . / (std::pow (weight, 1.0 / pTHatExponent));
671664 if (jetMCD.pt () > pTHatMaxMCD * pTHat) {
672665 return ;
673666 }
674667 if (jetMCD.has_matchedJetGeo ()) {
675668 for (const auto & jetMCP : jetMCD.template matchedJetGeo_as <std::decay_t <TTag>>()) {
676- if (jetMCP.pt () > pTHatMaxMCD * pTHat) {
669+ if (jetMCP.pt () > pTHatMaxMCP * pTHat) {
677670 continue ;
678671 }
679672 if (jetMCD.r () == round (selectedJetsRadius * 100 .0f )) {
@@ -848,17 +841,18 @@ struct JetSpectraCharged {
848841 }
849842 PROCESS_SWITCH (JetSpectraCharged, processSpectraAreaSubMCD, " jet spectra with rho-area subtraction for MCD" , false );
850843
851- void processSpectraMCDWeighted (soa::Filtered<aod::JetCollisions >::iterator const & collision,
844+ void processSpectraMCDWeighted (soa::Filtered<aod::JetCollisionsMCD >::iterator const & collision,
852845 soa::Join<aod::ChargedMCDetectorLevelJets, aod::ChargedMCDetectorLevelJetConstituents> const & jets,
853- aod::JetTracks const &)
846+ aod::JetTracks const &,
847+ aod::JetMcCollisions const &)
854848 {
855849 bool fillHistograms = false ;
856850 bool isWeighted = true ;
857851 float eventWeight = collision.weight ();
858852 if (!applyCollisionCuts (collision, fillHistograms, isWeighted, eventWeight)) {
859853 return ;
860854 }
861-
855+ float pTHat = collision. has_mcCollision () && collision. mcCollision (). ptHard () < 999 . 0f ? collision. mcCollision (). ptHard () : 10 . / ( std::pow (eventWeight, 1.0 / pTHatExponent));
862856 float centrality = -1.0 ;
863857 checkCentFT0M ? centrality = collision.centFT0M () : centrality = collision.centFT0C ();
864858
@@ -869,22 +863,23 @@ struct JetSpectraCharged {
869863 if (!isAcceptedJet<aod::JetTracks>(jet)) {
870864 continue ;
871865 }
872- fillJetHistograms (jet, centrality, eventWeight);
866+ fillJetHistograms (jet, centrality, eventWeight, pTHat );
873867 }
874868 }
875869 PROCESS_SWITCH (JetSpectraCharged, processSpectraMCDWeighted, " jet finder QA mcd with weighted events" , false );
876870
877- void processSpectraAreaSubMCDWeighted (soa::Filtered<soa::Join<aod::JetCollisions , aod::BkgChargedRhos>>::iterator const & collision,
871+ void processSpectraAreaSubMCDWeighted (soa::Filtered<soa::Join<aod::JetCollisionsMCD , aod::BkgChargedRhos>>::iterator const & collision,
878872 soa::Join<aod::ChargedMCDetectorLevelJets, aod::ChargedMCDetectorLevelJetConstituents> const & jets,
879- aod::JetTracks const &)
873+ aod::JetTracks const &,
874+ aod::JetMcCollisions const &)
880875 {
881876 bool fillHistograms = false ;
882877 bool isWeighted = true ;
883878 float eventWeight = collision.weight ();
884879 if (!applyCollisionCuts (collision, fillHistograms, isWeighted, eventWeight)) {
885880 return ;
886881 }
887-
882+ float pTHat = collision. has_mcCollision () && collision. mcCollision (). ptHard () < 999 . 0f ? collision. mcCollision (). ptHard () : 10 . / ( std::pow (eventWeight, 1.0 / pTHatExponent));
888883 float centrality = -1.0 ;
889884 checkCentFT0M ? centrality = collision.centFT0M () : centrality = collision.centFT0C ();
890885
@@ -895,7 +890,7 @@ struct JetSpectraCharged {
895890 if (!isAcceptedJet<aod::JetTracks>(jet)) {
896891 continue ;
897892 }
898- fillJetAreaSubHistograms (jet, centrality, collision.rho (), eventWeight);
893+ fillJetAreaSubHistograms (jet, centrality, collision.rho (), eventWeight, pTHat );
899894 }
900895 }
901896 PROCESS_SWITCH (JetSpectraCharged, processSpectraAreaSubMCDWeighted, " jet spectra with rho-area subtraction for MCD" , false );
@@ -1127,22 +1122,21 @@ struct JetSpectraCharged {
11271122 if (!applyMCCollisionCuts (mccollision, collisions, fillHistograms, isWeighted, eventWeight)) {
11281123 return ;
11291124 }
1130-
1125+ float pTHat = mccollision. ptHard () < 999 . 0f ? mccollision. ptHard () : 10 . / ( std::pow (eventWeight, 1.0 / pTHatExponent));
11311126 for (auto const & jet : jets) {
11321127 if (!jetfindingutilities::isInEtaAcceptance (jet, jetEtaMin, jetEtaMax, trackEtaMin, trackEtaMax)) {
11331128 continue ;
11341129 }
11351130 if (!isAcceptedJet<aod::JetParticles>(jet, mcLevelIsParticleLevel)) {
11361131 continue ;
11371132 }
1138- double pTHat = 10 . / (std::pow (eventWeight, 1.0 / pTHatExponent));
11391133 int Nmax = 21 ;
11401134 for (int N = 1 ; N < Nmax; N++) {
11411135 if (jet.pt () < N * 0.25 * pTHat && jet.r () == round (selectedJetsRadius * 100 .0f )) {
11421136 registry.fill (HIST (" h2_jet_ptcut_part" ), jet.pt (), N * 0.25 , eventWeight);
11431137 }
11441138 }
1145- fillMCPHistograms (jet, eventWeight);
1139+ fillMCPHistograms (jet, eventWeight, pTHat );
11461140 }
11471141 }
11481142 PROCESS_SWITCH (JetSpectraCharged, processSpectraMCPWeighted, " jet spectra for MC particle level weighted" , false );
@@ -1160,6 +1154,7 @@ struct JetSpectraCharged {
11601154 if (!applyMCCollisionCuts (mccollision, collisions, fillHistograms, isWeighted, eventWeight)) {
11611155 return ;
11621156 }
1157+ float pTHat = mccollision.ptHard () < 999 .0f ? mccollision.ptHard () : 10 . / (std::pow (eventWeight, 1.0 / pTHatExponent));
11631158 registry.fill (HIST (" h_mccollisions_rho" ), mccollision.rho (), eventWeight);
11641159
11651160 for (auto const & jet : jets) {
@@ -1169,7 +1164,7 @@ struct JetSpectraCharged {
11691164 if (!isAcceptedJet<aod::JetParticles>(jet, mcLevelIsParticleLevel)) {
11701165 continue ;
11711166 }
1172- fillMCPAreaSubHistograms (jet, mccollision.rho (), eventWeight);
1167+ fillMCPAreaSubHistograms (jet, mccollision.rho (), eventWeight, pTHat );
11731168 }
11741169 }
11751170 PROCESS_SWITCH (JetSpectraCharged, processSpectraAreaSubMCPWeighted, " jet spectra with area-based subtraction for MC particle level" , false );
@@ -1238,23 +1233,24 @@ struct JetSpectraCharged {
12381233 }
12391234 PROCESS_SWITCH (JetSpectraCharged, processJetsMatched, " matched mcp and mcd jets" , false );
12401235
1241- void processJetsMatchedWeighted (soa::Filtered<aod::JetCollisions >::iterator const & collision,
1236+ void processJetsMatchedWeighted (soa::Filtered<aod::JetCollisionsMCD >::iterator const & collision,
12421237 ChargedMCDMatchedJets const & mcdjets,
12431238 ChargedMCPMatchedJets const &,
1244- aod::JetTracks const &, aod::JetParticles const &)
1239+ aod::JetTracks const &, aod::JetParticles const &,
1240+ aod::JetMcCollisions const &)
12451241 {
12461242 bool fillHistograms = false ;
12471243 bool isWeighted = true ;
12481244 float eventWeight = collision.weight ();
12491245 if (!applyCollisionCuts (collision, fillHistograms, isWeighted, eventWeight)) {
12501246 return ;
12511247 }
1252-
1248+ float pTHat = collision. has_mcCollision () && collision. mcCollision (). ptHard () < 999 . 0f ? collision. mcCollision (). ptHard () : 10 . / ( std::pow (eventWeight, 1.0 / pTHatExponent));
12531249 for (const auto & mcdjet : mcdjets) {
12541250 if (!isAcceptedJet<aod::JetTracks>(mcdjet)) {
12551251 continue ;
12561252 }
1257- fillMatchedHistograms<ChargedMCDMatchedJets::iterator, ChargedMCPMatchedJets>(mcdjet, eventWeight);
1253+ fillMatchedHistograms<ChargedMCDMatchedJets::iterator, ChargedMCPMatchedJets>(mcdjet, eventWeight, pTHat );
12581254 }
12591255 }
12601256 PROCESS_SWITCH (JetSpectraCharged, processJetsMatchedWeighted, " matched mcp and mcd jets with weighted events" , false );
@@ -1292,14 +1288,15 @@ struct JetSpectraCharged {
12921288 if (!applyCollisionCuts (collision, fillHistograms, isWeighted, eventWeight)) {
12931289 return ;
12941290 }
1291+ float pTHat = collision.has_mcCollision () && collision.mcCollision ().ptHard () < 999 .0f ? collision.mcCollision ().ptHard () : 10 . / (std::pow (eventWeight, 1.0 / pTHatExponent));
12951292
12961293 double mcrho = collision.has_mcCollision () ? collision.mcCollision_as <JetBkgRhoMcCollisions>().rho () : -1 ;
12971294
12981295 for (const auto & mcdjet : mcdjets) {
12991296 if (!isAcceptedJet<aod::JetTracks>(mcdjet)) {
13001297 continue ;
13011298 }
1302- fillGeoMatchedAreaSubHistograms<ChargedMCDMatchedJets::iterator, ChargedMCPMatchedJets>(mcdjet, collision.rho (), mcrho, eventWeight);
1299+ fillGeoMatchedAreaSubHistograms<ChargedMCDMatchedJets::iterator, ChargedMCPMatchedJets>(mcdjet, collision.rho (), mcrho, eventWeight, pTHat );
13031300 }
13041301 }
13051302 PROCESS_SWITCH (JetSpectraCharged, processJetsMatchedAreaSubWeighted, " matched mcp and mcd jets after area-based pt subtraction with weighted events" , false );
0 commit comments