18 #include <TClonesArray.h>
23 #include <AliVCluster.h>
24 #include <AliVParticle.h>
33 #include "AliAnalysisManager.h"
34 #include "AliVEventHandler.h"
35 #include "AliAnalysisDataContainer.h"
46 using namespace NS_AliAnalysisTaskEmcalJetCDF;
87 TString histname =
"", groupname =
"", fullgroupname =
"";
91 while ( (jetCont = static_cast<AliJetContainer*>(next())) )
93 groupname = jetCont->GetName();
95 Double_t jet_pt_min = jetCont->GetMinPt();
96 Double_t jet_pt_max = jetCont->GetMaxPt();
102 groupname = groupname +
"_" +
"ptbin" +
"_" + jetstrmin +
"_" + jetstrmax;
106 histname = TString::Format(
"%s/histo1_%d", groupname.Data(),
fCentBin);
109 histname = TString::Format(
"%s/histo2_%d", groupname.Data(),
fCentBin);
112 histname = TString::Format(
"%s/histo3_%d", groupname.Data(),
fCentBin);
115 histname = TString::Format(
"%s/histo4_%d", groupname.Data(),
fCentBin);
118 histname = TString::Format(
"%s/histo4c_%d", groupname.Data(),
fCentBin);
121 histname = TString::Format(
"%s/histo5_%d", groupname.Data(),
fCentBin);
124 histname = TString::Format(
"%s/histo6_%d", groupname.Data(),
fCentBin);
127 histname = TString::Format(
"%s/histo6c_%d", groupname.Data(),
fCentBin);
130 histname = TString::Format(
"%s/histo7_%d", groupname.Data(),
fCentBin);
133 histname = TString::Format(
"%s/histo7all_%d", groupname.Data(),
fCentBin);
136 histname = TString::Format(
"%s/histo8_%d", groupname.Data(),
fCentBin);
139 histname = TString::Format(
"%s/histo8_all_%d", groupname.Data(),
fCentBin);
142 histname = TString::Format(
"%s/histo8_p_%d", groupname.Data(),
fCentBin);
145 histname = TString::Format(
"%s/histo8_all_p_%d", groupname.Data(),
fCentBin);
148 histname = TString::Format(
"%s/histo8_pt_%d", groupname.Data(),
fCentBin);
151 histname = TString::Format(
"%s/histo8_all_pt_%d", groupname.Data(),
fCentBin);
154 histname = TString::Format(
"%s/histo8xi_%d", groupname.Data(),
fCentBin);
157 histname = TString::Format(
"%s/histo8xi_all_%d", groupname.Data(),
fCentBin);
160 histname = TString::Format(
"%s/histo8xi_p_%d", groupname.Data(),
fCentBin);
163 histname = TString::Format(
"%s/histo8xi_all_p_%d", groupname.Data(),
fCentBin);
166 histname = TString::Format(
"%s/histo8xi_pt_%d", groupname.Data(),
fCentBin);
169 histname = TString::Format(
"%s/histo8xi_all_pt_%d", groupname.Data(),
fCentBin);
172 histname = TString::Format(
"%s/histo15_%d", groupname.Data(),
fCentBin);
175 histname = TString::Format(
"%s/histo15_n70_%d", groupname.Data(),
fCentBin);
178 histname = TString::Format(
"%s/histo15_n75_%d", groupname.Data(),
fCentBin);
181 histname = TString::Format(
"%s/histo15_n80_%d", groupname.Data(),
fCentBin);
184 histname = TString::Format(
"%s/histo15_n85_%d", groupname.Data(),
fCentBin);
187 histname = TString::Format(
"%s/histo15_n90_%d", groupname.Data(),
fCentBin);
190 histname = TString::Format(
"%s/histo15_pt70_%d", groupname.Data(),
fCentBin);
193 histname = TString::Format(
"%s/histo15_pt75_%d", groupname.Data(),
fCentBin);
196 histname = TString::Format(
"%s/histo15_pt80_%d", groupname.Data(),
fCentBin);
199 histname = TString::Format(
"%s/histo15_pt85_%d", groupname.Data(),
fCentBin);
202 histname = TString::Format(
"%s/histo15_pt90_%d", groupname.Data(),
fCentBin);
205 histname = TString::Format(
"%s/histo15all_%d", groupname.Data(),
fCentBin);
208 histname = TString::Format(
"%s/histo15all_n70_%d", groupname.Data(),
fCentBin);
211 histname = TString::Format(
"%s/histo15all_n75_%d", groupname.Data(),
fCentBin);
214 histname = TString::Format(
"%s/histo15all_n80_%d", groupname.Data(),
fCentBin);
217 histname = TString::Format(
"%s/histo15all_n85_%d", groupname.Data(),
fCentBin);
220 histname = TString::Format(
"%s/histo15all_n90_%d", groupname.Data(),
fCentBin);
223 histname = TString::Format(
"%s/histo15all_pt70_%d", groupname.Data(),
fCentBin);
226 histname = TString::Format(
"%s/histo15all_pt75_%d", groupname.Data(),
fCentBin);
229 histname = TString::Format(
"%s/histo15all_pt80_%d", groupname.Data(),
fCentBin);
232 histname = TString::Format(
"%s/histo15all_pt85_%d", groupname.Data(),
fCentBin);
235 histname = TString::Format(
"%s/histo15all_pt90_%d", groupname.Data(),
fCentBin);
238 histname = TString::Format(
"%s/histo20_%d", groupname.Data(),
fCentBin);
241 histname = TString::Format(
"%s/histo20_n70_%d", groupname.Data(),
fCentBin);
244 histname = TString::Format(
"%s/histo20_n75_%d", groupname.Data(),
fCentBin);
247 histname = TString::Format(
"%s/histo20_n80_%d", groupname.Data(),
fCentBin);
250 histname = TString::Format(
"%s/histo20_n85_%d", groupname.Data(),
fCentBin);
253 histname = TString::Format(
"%s/histo20_n90_%d", groupname.Data(),
fCentBin);
256 histname = TString::Format(
"%s/histo20_pt70_%d", groupname.Data(),
fCentBin);
259 histname = TString::Format(
"%s/histo20_pt75_%d", groupname.Data(),
fCentBin);
262 histname = TString::Format(
"%s/histo20_pt80_%d", groupname.Data(),
fCentBin);
265 histname = TString::Format(
"%s/histo20_pt85_%d", groupname.Data(),
fCentBin);
268 histname = TString::Format(
"%s/histo20_pt90_%d", groupname.Data(),
fCentBin);
271 histname = TString::Format(
"%s/histo20all_%d", groupname.Data(),
fCentBin);
274 histname = TString::Format(
"%s/histo20all_n70_%d", groupname.Data(),
fCentBin);
277 histname = TString::Format(
"%s/histo20all_n75_%d", groupname.Data(),
fCentBin);
280 histname = TString::Format(
"%s/histo20all_n80_%d", groupname.Data(),
fCentBin);
283 histname = TString::Format(
"%s/histo20all_n85_%d", groupname.Data(),
fCentBin);
286 histname = TString::Format(
"%s/histo20all_n90_%d", groupname.Data(),
fCentBin);
289 histname = TString::Format(
"%s/histo20all_pt70_%d", groupname.Data(),
fCentBin);
292 histname = TString::Format(
"%s/histo20all_pt75_%d", groupname.Data(),
fCentBin);
295 histname = TString::Format(
"%s/histo20all_pt80_%d", groupname.Data(),
fCentBin);
298 histname = TString::Format(
"%s/histo20all_pt85_%d", groupname.Data(),
fCentBin);
301 histname = TString::Format(
"%s/histo20all_pt90_%d", groupname.Data(),
fCentBin);
304 histname = TString::Format(
"%s/histo_g_%d", groupname.Data(),
fCentBin);
307 histname = TString::Format(
"%s/histo_g_n70_%d", groupname.Data(),
fCentBin);
310 histname = TString::Format(
"%s/histo_g_n75_%d", groupname.Data(),
fCentBin);
313 histname = TString::Format(
"%s/histo_g_n80_%d", groupname.Data(),
fCentBin);
316 histname = TString::Format(
"%s/histo_g_n85_%d", groupname.Data(),
fCentBin);
319 histname = TString::Format(
"%s/histo_g_n90_%d", groupname.Data(),
fCentBin);
322 histname = TString::Format(
"%s/histo_g_pt70_%d", groupname.Data(),
fCentBin);
325 histname = TString::Format(
"%s/histo_g_pt75_%d", groupname.Data(),
fCentBin);
328 histname = TString::Format(
"%s/histo_g_pt80_%d", groupname.Data(),
fCentBin);
331 histname = TString::Format(
"%s/histo_g_pt85_%d", groupname.Data(),
fCentBin);
334 histname = TString::Format(
"%s/histo_g_pt90_%d", groupname.Data(),
fCentBin);
337 histname = TString::Format(
"%s/histo_ptd_%d", groupname.Data(),
fCentBin);
340 histname = TString::Format(
"%s/histo_ptd_n70_%d", groupname.Data(),
fCentBin);
343 histname = TString::Format(
"%s/histo_ptd_n75_%d", groupname.Data(),
fCentBin);
346 histname = TString::Format(
"%s/histo_ptd_n80_%d", groupname.Data(),
fCentBin);
349 histname = TString::Format(
"%s/histo_ptd_n85_%d", groupname.Data(),
fCentBin);
352 histname = TString::Format(
"%s/histo_ptd_n90_%d", groupname.Data(),
fCentBin);
355 histname = TString::Format(
"%s/histo_ptd_pt70_%d", groupname.Data(),
fCentBin);
358 histname = TString::Format(
"%s/histo_ptd_pt75_%d", groupname.Data(),
fCentBin);
361 histname = TString::Format(
"%s/histo_ptd_pt80_%d", groupname.Data(),
fCentBin);
364 histname = TString::Format(
"%s/histo_ptd_pt85_%d", groupname.Data(),
fCentBin);
367 histname = TString::Format(
"%s/histo_ptd_pt90_%d", groupname.Data(),
fCentBin);
376 if (!fTracksCont) { std::cout <<
"********* JET CONTAINER WITHOUT TRACKS CONTAINER *********" << std::endl;
continue; }
377 TClonesArray* fTracksContArray = fTracksCont->GetArray();
385 Int_t fNaccClus = -1;
389 if ( ( fNJets_accepted < 1 ) || ( fNaccPart < 1 ) )
391 if ( fDebug > 1 ) { std::cout <<
"accepted (fNJets || fNPart) == 0" << std::endl; }
396 { std::cout <<
"fNJets = " << fNJets_accepted <<
" ; fNPart = " << fNaccPart << std::endl; }
398 AliVParticle* track = NULL;
401 fH5->Fill ( fNJets_accepted );
435 { std::cout <<
"+++++++++++++++++>>>>>>>>> Leading jet found" << std::endl; jet1->
Print(); }
437 { Printf (
"Jet1 not found (did not survive cuts?)\n" ); }
443 std::vector< int > jet1_sorted_idxvec;
448 Int_t track_idx = -999;
457 Double_t jet1_pt85 = 0.85 * jet1_pt;
463 Double_t jet1_pt75 = 0.75 * jet1_pt;
468 fH6->Fill ( jet1_npart );
469 fH6c->Fill ( jet1_nconst );
470 fH7->Fill ( jet1_pt, jet1_nconst );
472 counter_part = 0; counter_pt = 0.;
477 for (std::size_t i = 0; i < jet1_npart; i++ )
479 track_idx = jet1_sorted_idxvec.at (i);
481 track = jet1->
TrackAt ( track_idx, fTracksContArray );
482 if (!track) { std::cout <<
"Parsing tracks of jet1 :: track not defined but it should!!!" << std::endl;
continue; }
487 fH8->Fill ( jet1->
GetZ ( track ) );
488 fH8xi->Fill ( jet1->
GetXi ( track ) );
492 fH8xi_p->Fill (
Xi (z_p) );
495 fH8_pt->Fill ( z_pt );
496 fH8xi_pt->Fill (
Xi (z_pt) );
498 fH15->Fill ( dpart, track_pt );
500 fH20->Fill ( dpart );
503 if ( counter_part <= jet1_n70 )
505 fH15_n70->Fill ( dpart, track_pt );
506 fH20_n70->Fill ( dpart );
509 if ( counter_part <= jet1_n75 )
511 fH15_n75->Fill ( dpart, track_pt );
512 fH20_n75->Fill ( dpart );
515 if ( counter_part <= jet1_n80 )
517 fH15_n80->Fill ( dpart, track_pt );
518 fH20_n80->Fill ( dpart );
521 if ( counter_part <= jet1_n85 )
523 fH15_n85->Fill ( dpart, track_pt );
524 fH20_n85->Fill ( dpart );
527 if ( counter_part <= jet1_n90 )
529 fH15_n90->Fill ( dpart, track_pt );
530 fH20_n90->Fill ( dpart );
534 if ( counter_pt <= jet1_pt70 )
536 fH15_pt70->Fill ( dpart, track_pt );
537 fH20_pt70->Fill ( dpart );
540 if ( counter_pt <= jet1_pt75 )
542 fH15_pt75->Fill ( dpart, track_pt );
543 fH20_pt75->Fill ( dpart );
546 if ( counter_pt <= jet1_pt80 )
548 fH15_pt80->Fill ( dpart, track_pt );
549 fH20_pt80->Fill ( dpart );
552 if ( counter_pt <= jet1_pt85 )
554 fH15_pt85->Fill ( dpart, track_pt );
555 fH20_pt85->Fill ( dpart );
558 if ( counter_pt <= jet1_pt90 )
560 fH15_pt90->Fill ( dpart, track_pt );
561 fH20_pt90->Fill ( dpart );
564 ++counter_part; counter_pt += track_pt;
566 jet1_sorted_idxvec.clear();
570 track = NULL; jet1 = NULL;
581 std::vector< int > jet_sorted_idxvec ;
584 for(
auto jet : jetCont->
accepted())
586 if (!jet) {
continue; }
587 Int_t track_idx = -999;
588 jet_pt = 0. ; jet_npart = 0; jet_nconst = 0;
591 jet_sorted_idxvec.clear();
598 g_tot = 0.; sum_part_pt_tot = 0.; sum_part_pt2_tot = 0.;
600 g_n90 = 0.; sum_part_pt_n90 = 0.; sum_part_pt2_n90 = 0.;
601 g_n85 = 0.; sum_part_pt_n85 = 0.; sum_part_pt2_n85 = 0.;
602 g_n80 = 0.; sum_part_pt_n80 = 0.; sum_part_pt2_n80 = 0.;
603 g_n75 = 0.; sum_part_pt_n75 = 0.; sum_part_pt2_n75 = 0.;
604 g_n70 = 0.; sum_part_pt_n70 = 0.; sum_part_pt2_n70 = 0.;
606 g_pt90 = 0.; sum_part_pt_pt90 = 0.; sum_part_pt2_pt90 = 0.;
607 g_pt85 = 0.; sum_part_pt_pt85 = 0.; sum_part_pt2_pt85 = 0.;
608 g_pt80 = 0.; sum_part_pt_pt80 = 0.; sum_part_pt2_pt80 = 0.;
609 g_pt75 = 0.; sum_part_pt_pt75 = 0.; sum_part_pt2_pt75 = 0.;
610 g_pt70 = 0.; sum_part_pt_pt70 = 0.; sum_part_pt2_pt70 = 0.;
612 jet_n90 = (
UShort_t ) ( 0.9 * jet_npart );
613 jet_pt90 = 0.9 * jet_pt;
615 jet_n85 = (
UShort_t ) ( 0.85 * jet_npart );
616 jet_pt85 = 0.85 * jet_pt;
618 jet_n80 = (
UShort_t ) ( 0.8 * jet_npart );
619 jet_pt80 = 0.8 * jet_pt;
621 jet_n75 = (
UShort_t ) ( 0.75 * jet_npart );
622 jet_pt75 = 0.75 * jet_pt;
624 jet_n70 = (
UShort_t ) ( 0.7 * jet_npart );
625 jet_pt70 = 0.7 * jet_pt;
627 fH1->Fill ( jet_pt );
628 fH2->Fill ( jet->
Eta() );
629 fH3->Fill ( jet->
Phi() );
630 fH4->Fill ( jet_npart );
631 fH4c->Fill ( jet_nconst );
632 fH7all->Fill ( jet_pt, jet_nconst );
634 counter_part = 0; counter_pt = 0.;
636 for (std::size_t i = 0; i < jet_npart; i++ )
638 track_idx = jet_sorted_idxvec.at (i);
640 track = jet->
TrackAt ( track_idx, fTracksContArray );
641 if (!track) { std::cout <<
"Parsing tracks of jets :: track not defined but it should!!!" << std::endl;
continue; }
646 fH8_all->Fill ( jet->
GetZ ( track ) );
647 fH8xi_all->Fill ( jet->
GetXi ( track ) );
650 fH8_all_p->Fill ( z_p );
651 fH8xi_all_p->Fill (
Xi (z_p) );
654 fH8_all_pt->Fill ( z_pt );
655 fH8xi_all_pt->Fill (
Xi (z_pt) );
657 fH15all->Fill ( dpart, track_pt );
658 fH20all->Fill ( dpart );
661 g_tot += (track_pt * dpart)/jet_pt;
662 sum_part_pt_tot += track_pt;
663 sum_part_pt2_tot += TMath::Power( track_pt, 2 );
666 if ( counter_part <= jet_n90 )
668 fH15all_n90->Fill ( dpart, track_pt );
669 fH20all_n90->Fill ( dpart );
672 g_n90 += (track_pt * dpart)/jet_pt;
673 sum_part_pt_n90 += track_pt;
674 sum_part_pt2_n90 += TMath::Power( track_pt, 2 );
677 if ( counter_pt <= jet_pt90 )
679 fH15all_pt90->Fill ( dpart, track_pt );
680 fH20all_pt90->Fill ( dpart );
683 g_pt90 += (track_pt * dpart)/jet_pt;
684 sum_part_pt_pt90 += track_pt;
685 sum_part_pt2_pt90 += TMath::Power( track_pt, 2 );
689 if ( counter_part <= jet_n85 )
691 fH15all_n85->Fill ( dpart, track_pt );
692 fH20all_n85->Fill ( dpart );
695 g_n85 += (track_pt * dpart)/jet_pt;
696 sum_part_pt_n85 += track_pt;
697 sum_part_pt2_n85 += TMath::Power( track_pt, 2 );
700 if ( counter_pt <= jet_pt85 )
702 fH15all_pt85->Fill ( dpart, track_pt );
703 fH20all_pt85->Fill ( dpart );
706 g_pt85 += (track_pt * dpart)/jet_pt;
707 sum_part_pt_pt85 += track_pt;
708 sum_part_pt2_pt85 += TMath::Power( track_pt, 2 );
712 if ( counter_part <= jet_n80 )
714 fH15all_n80->Fill ( dpart, track_pt );
715 fH20all_n80->Fill ( dpart );
718 g_n80 += (track_pt * dpart)/jet_pt;
719 sum_part_pt_n80 += track_pt;
720 sum_part_pt2_n80 += TMath::Power( track_pt, 2 );
723 if ( counter_pt <= jet_pt80 )
725 fH15all_pt80->Fill ( dpart, track_pt );
726 fH20all_pt80->Fill ( dpart );
729 g_pt80 += (track_pt * dpart)/jet_pt;
730 sum_part_pt_pt80 += track_pt;
731 sum_part_pt2_pt80 += TMath::Power( track_pt, 2 );
735 if ( counter_part <= jet_n75 )
737 fH15all_n75->Fill ( dpart, track_pt );
738 fH20all_n75->Fill ( dpart );
741 g_n75 += (track_pt * dpart)/jet_pt;
742 sum_part_pt_n75 += track_pt;
743 sum_part_pt2_n75 += TMath::Power( track_pt, 2 );
746 if ( counter_pt <= jet_pt75 )
748 fH15all_pt75->Fill ( dpart, track_pt );
749 fH20all_pt75->Fill ( dpart );
752 g_pt75 += (track_pt * dpart)/jet_pt;
753 sum_part_pt_pt75 += track_pt;
754 sum_part_pt2_pt75 += TMath::Power( track_pt, 2 );
758 if ( counter_part <= jet_n70 )
760 fH15all_n70->Fill ( dpart, track_pt );
761 fH20all_n70->Fill ( dpart );
764 g_n70 += (track_pt * dpart)/jet_pt;
765 sum_part_pt_n70 += track_pt;
766 sum_part_pt2_n70 += TMath::Power( track_pt, 2 );
769 if ( counter_pt <= jet_pt70 )
771 fH15all_pt70->Fill ( dpart, track_pt );
772 fH20all_pt70->Fill ( dpart );
775 g_pt70 += (track_pt * dpart)/jet_pt;
776 sum_part_pt_pt70 += track_pt;
777 sum_part_pt2_pt70 += TMath::Power( track_pt, 2 );
779 ++counter_part; counter_pt += track_pt;
783 fHg_n70->Fill ( g_n70 ); fHg_pt70->Fill ( g_pt70 );
784 fHg_n75->Fill ( g_n75 ); fHg_pt75->Fill ( g_pt75 );
785 fHg_n80->Fill ( g_n80 ); fHg_pt80->Fill ( g_pt80 );
786 fHg_n85->Fill ( g_n85 ); fHg_pt85->Fill ( g_pt85 );
787 fHg_n90->Fill ( g_n90 ); fHg_pt90->Fill ( g_pt90 );
789 fHptd->Fill( TMath::Sqrt(sum_part_pt2_tot)/sum_part_pt_tot );
791 fHptd_n70->Fill( TMath::Sqrt(sum_part_pt2_n70)/sum_part_pt_n70 );
792 fHptd_n75->Fill( TMath::Sqrt(sum_part_pt2_n75)/sum_part_pt_n75 );
793 fHptd_n80->Fill( TMath::Sqrt(sum_part_pt2_n80)/sum_part_pt_n80 );
794 fHptd_n85->Fill( TMath::Sqrt(sum_part_pt2_n85)/sum_part_pt_n85 );
795 fHptd_n90->Fill( TMath::Sqrt(sum_part_pt2_n90)/sum_part_pt_n90 );
797 fHptd_pt70->Fill( TMath::Sqrt(sum_part_pt2_pt70)/sum_part_pt_pt70 );
798 fHptd_pt75->Fill( TMath::Sqrt(sum_part_pt2_pt75)/sum_part_pt_pt75 );
799 fHptd_pt80->Fill( TMath::Sqrt(sum_part_pt2_pt80)/sum_part_pt_pt80 );
800 fHptd_pt85->Fill( TMath::Sqrt(sum_part_pt2_pt85)/sum_part_pt_pt85 );
801 fHptd_pt90->Fill( TMath::Sqrt(sum_part_pt2_pt90)/sum_part_pt_pt90 );
806 jet = NULL; track = NULL;
821 TString histname =
"", histtitle =
"", groupname =
"", fullgroupname =
"";
824 while ((jetCont = static_cast<AliJetContainer*>(next())))
826 groupname = jetCont->GetName();
828 Double_t jet_pt_min = jetCont->GetMinPt();
829 Double_t jet_pt_max = jetCont->GetMaxPt();
831 TString jetstrmin = TString::Itoa((
Int_t)jet_pt_min,10);
832 TString jetstrmax = TString::Itoa((
Int_t)jet_pt_max,10);
835 groupname = groupname +
"_" +
"ptbin" +
"_" + jetstrmin +
"_" + jetstrmax;
842 Double_t h1_high = h1_low + h1_binwidth * h1_nbin;
843 histname = TString::Format(
"%s/histo1_%d", groupname.Data(), cent);
844 histtitle = TString::Format(
"%s;#it{p}_{T,jet} (GeV/#it{c}) (accepted);Jets", histname.Data());
849 Double_t h2_high = h2_low + h2_binwidth * h2_nbin;
850 histname = TString::Format(
"%s/histo2_%d", groupname.Data(), cent);
851 histtitle = TString::Format(
"%s;#it{#eta}_{jet};Jets", histname.Data());
856 Double_t h3_high = h3_low + h3_binwidth * h3_nbin;
857 histname = TString::Format(
"%s/histo3_%d", groupname.Data(), cent);
858 histtitle = TString::Format(
"%s;#it{#phi}_{jet};Jets", histname.Data());
863 Double_t h4_high = h4_low + h4_binwidth * h4_nbin;
864 histname = TString::Format(
"%s/histo4_%d", groupname.Data(), cent);
865 histtitle = TString::Format(
"%s;N_{tracks}(jet);Jets", histname.Data());
868 histname = TString::Format(
"%s/histo4c_%d", groupname.Data(), cent);
869 histtitle = TString::Format(
"%s;N_{tracks}(jet);Jets", histname.Data());
872 histname = TString::Format(
"%s/histo6_%d", groupname.Data(), cent);
873 histtitle = TString::Format(
"%s;N_{tracks}(jet1);Jets", histname.Data());
876 histname = TString::Format(
"%s/histo6c_%d", groupname.Data(), cent);
877 histtitle = TString::Format(
"%s;N_{tracks}(jet1);Jets", histname.Data());
883 Double_t h5_high = h5_low + h5_binwidth * h5_nbin;
884 histname = TString::Format(
"%s/histo5_%d", groupname.Data(), cent);
885 histtitle = TString::Format(
"%s;N_{jets};Events", histname.Data());
890 Double_t h7_xhigh = h7_xlow + h7_xbinwidth * h7_xnbin;
892 Double_t h7_yhigh = h7_ylow + h7_ybinwidth * h7_ynbin;
894 histname = TString::Format(
"%s/histo7_%d", groupname.Data(), cent);
895 histtitle = TString::Format(
"%s;#it{p}_{T,jet1} (GeV/c);N_{tracks}(jet1)", histname.Data());
896 fHistManager.
CreateTH2(histname, histtitle, h7_xnbin, h7_xlow, h7_xhigh, h7_ynbin, h7_ylow, h7_yhigh);
898 histname = TString::Format(
"%s/histo7all_%d", groupname.Data(), cent);
899 histtitle = TString::Format(
"%s;#it{p}_{T,jet} (GeV/c);N_{tracks}(jets)", histname.Data());
900 fHistManager.
CreateTH2(histname, histtitle, h7_xnbin, h7_xlow, h7_xhigh, h7_ynbin, h7_ylow, h7_yhigh);
905 Double_t h8_high = h8_low + h8_binwidth * h8_nbin;
908 histname = TString::Format(
"%s/histo8_%d", groupname.Data(), cent);
909 histtitle = TString::Format(
"%s - jet1;z;F(Z) = 1/N_{jet1} dN/dz", histname.Data());
912 histname = TString::Format(
"%s/histo8_all_%d", groupname.Data(), cent);
913 histtitle = TString::Format(
"%s - all jets;z;F(Z) = 1/N_{jets} dN/dz", histname.Data());
918 histname = TString::Format(
"%s/histo8_p_%d", groupname.Data(), cent);
919 histtitle = TString::Format(
"%s - jet1 P_tot;z = p_{track}/p_{jet1};F(Z) = 1/N_{jet1} dN/dz", histname.Data());
922 histname = TString::Format(
"%s/histo8_all_p_%d", groupname.Data(), cent);
923 histtitle = TString::Format(
"%s - all jets P_tot;z = p_{track}/p_{jet};F(Z) = 1/N_{jets} dN/dz", histname.Data());
928 histname = TString::Format(
"%s/histo8_pt_%d", groupname.Data(), cent);
929 histtitle = TString::Format(
"%s - jet1 Pt;z = p_{T,track}/p_{T,jet1};F(Z) = 1/N_{jet1} dN/dz", histname.Data());
932 histname = TString::Format(
"%s/histo8_all_pt_%d", groupname.Data(), cent);
933 histtitle = TString::Format(
"%s - all jets Pt;z = p_{T,track}/p_{T,jet1};F(Z) = 1/N_{jets} dN/dz", histname.Data());
939 Double_t h8xi_high = h8xi_low + h8xi_binwidth * h8xi_nbin;
940 histname = TString::Format(
"%s/histo8xi_%d", groupname.Data(), cent);
941 histtitle = TString::Format(
"%s - jet1;#xi = ln(1/z);D(#xi) = 1/N_{jet1} dN/d#xi", histname.Data());
944 histname = TString::Format(
"%s/histo8xi_all_%d", groupname.Data(), cent);
945 histtitle = TString::Format(
"%s - all jets;#xi = ln(1/z);D(#xi) = 1/N_{jets} dN/d#xi", histname.Data());
949 histname = TString::Format(
"%s/histo8xi_p_%d", groupname.Data(), cent);
950 histtitle = TString::Format(
"%s - jet1 P_tot;#xi = ln(1/z);D(#xi) = 1/N_{jet1} dN/d#xi", histname.Data());
953 histname = TString::Format(
"%s/histo8xi_all_p_%d", groupname.Data(), cent);
954 histtitle = TString::Format(
"%s - all jets P_tot;#xi = ln(1/z);D(#xi) = 1/N_{jets} dN/d#xi", histname.Data());
958 histname = TString::Format(
"%s/histo8xi_pt_%d", groupname.Data(), cent);
959 histtitle = TString::Format(
"%s - jet1 Pt;#xi = ln(1/z);D(#xi) = 1/N_{jet1} dN/d#xi", histname.Data());
962 histname = TString::Format(
"%s/histo8xi_all_pt_%d", groupname.Data(), cent);
963 histtitle = TString::Format(
"%s - all jets Pt;#xi = ln(1/z);D(#xi) = 1/N_{jets} dN/d#xi", histname.Data());
969 Double_t h15_xhigh = h15_xlow + h15_xbinwidth * h15_xnbin;
971 Double_t h15_yhigh = h15_ylow + h15_ybinwidth * h15_ynbin;
974 histname = TString::Format(
"%s/histo15_%d", groupname.Data(), cent);
975 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
976 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
979 histname = TString::Format(
"%s/histo15_n70_%d", groupname.Data(), cent);
980 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
981 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
983 histname = TString::Format(
"%s/histo15_n75_%d", groupname.Data(), cent);
984 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
985 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
987 histname = TString::Format(
"%s/histo15_n80_%d", groupname.Data(), cent);
988 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
989 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
991 histname = TString::Format(
"%s/histo15_n85_%d", groupname.Data(), cent);
992 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
993 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
995 histname = TString::Format(
"%s/histo15_n90_%d", groupname.Data(), cent);
996 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
997 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1000 histname = TString::Format(
"%s/histo15_pt70_%d", groupname.Data(), cent);
1001 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1002 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1004 histname = TString::Format(
"%s/histo15_pt75_%d", groupname.Data(), cent);
1005 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1006 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1008 histname = TString::Format(
"%s/histo15_pt80_%d", groupname.Data(), cent);
1009 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1010 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1012 histname = TString::Format(
"%s/histo15_pt85_%d", groupname.Data(), cent);
1013 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1014 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1016 histname = TString::Format(
"%s/histo15_pt90_%d", groupname.Data(), cent);
1017 histtitle = TString::Format(
"%s - jet1;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1018 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1022 histname = TString::Format(
"%s/histo15all_%d", groupname.Data(), cent);
1023 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1024 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1027 histname = TString::Format(
"%s/histo15all_n70_%d", groupname.Data(), cent);
1028 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1029 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1031 histname = TString::Format(
"%s/histo15all_n75_%d", groupname.Data(), cent);
1032 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1033 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1035 histname = TString::Format(
"%s/histo15all_n80_%d", groupname.Data(), cent);
1036 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1037 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1039 histname = TString::Format(
"%s/histo15all_n85_%d", groupname.Data(), cent);
1040 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1041 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1043 histname = TString::Format(
"%s/histo15all_n90_%d", groupname.Data(), cent);
1044 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1045 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1048 histname = TString::Format(
"%s/histo15all_pt70_%d", groupname.Data(), cent);
1049 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1050 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1052 histname = TString::Format(
"%s/histo15all_pt75_%d", groupname.Data(), cent);
1053 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1054 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1056 histname = TString::Format(
"%s/histo15all_pt80_%d", groupname.Data(), cent);
1057 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1058 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1060 histname = TString::Format(
"%s/histo15all_pt85_%d", groupname.Data(), cent);
1061 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1062 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1064 histname = TString::Format(
"%s/histo15all_pt90_%d", groupname.Data(), cent);
1065 histtitle = TString::Format(
"%s - all jets;dR;#it{p}_{T,track} (GeV/c)", histname.Data());
1066 fHistManager.
CreateTH2(histname, histtitle, h15_xnbin, h15_xlow, h15_xhigh, h15_ynbin, h15_ylow, h15_yhigh);
1071 Double_t h20_high = h20_low + h20_binwidth * h20_nbin;
1074 histname = TString::Format(
"%s/histo20_%d", groupname.Data(), cent);
1075 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1079 histname = TString::Format(
"%s/histo20_n70_%d", groupname.Data(), cent);
1080 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1083 histname = TString::Format(
"%s/histo20_n75_%d", groupname.Data(), cent);
1084 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1087 histname = TString::Format(
"%s/histo20_n80_%d", groupname.Data(), cent);
1088 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1091 histname = TString::Format(
"%s/histo20_n85_%d", groupname.Data(), cent);
1092 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1095 histname = TString::Format(
"%s/histo20_n90_%d", groupname.Data(), cent);
1096 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1101 histname = TString::Format(
"%s/histo20_pt70_%d", groupname.Data(), cent);
1102 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1105 histname = TString::Format(
"%s/histo20_pt75_%d", groupname.Data(), cent);
1106 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1109 histname = TString::Format(
"%s/histo20_pt80_%d", groupname.Data(), cent);
1110 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1113 histname = TString::Format(
"%s/histo20_pt85_%d", groupname.Data(), cent);
1114 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1117 histname = TString::Format(
"%s/histo20_pt90_%d", groupname.Data(), cent);
1118 histtitle = TString::Format(
"%s - jet1;R_{tracks};dN/dR", histname.Data());
1123 histname = TString::Format(
"%s/histo20all_%d", groupname.Data(), cent);
1124 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1128 histname = TString::Format(
"%s/histo20all_n70_%d", groupname.Data(), cent);
1129 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1132 histname = TString::Format(
"%s/histo20all_n75_%d", groupname.Data(), cent);
1133 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1136 histname = TString::Format(
"%s/histo20all_n80_%d", groupname.Data(), cent);
1137 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1140 histname = TString::Format(
"%s/histo20all_n85_%d", groupname.Data(), cent);
1141 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1144 histname = TString::Format(
"%s/histo20all_n90_%d", groupname.Data(), cent);
1145 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1150 histname = TString::Format(
"%s/histo20all_pt70_%d", groupname.Data(), cent);
1151 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1154 histname = TString::Format(
"%s/histo20all_pt75_%d", groupname.Data(), cent);
1155 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1158 histname = TString::Format(
"%s/histo20all_pt80_%d", groupname.Data(), cent);
1159 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1162 histname = TString::Format(
"%s/histo20all_pt85_%d", groupname.Data(), cent);
1163 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1166 histname = TString::Format(
"%s/histo20all_pt90_%d", groupname.Data(), cent);
1167 histtitle = TString::Format(
"%s - all jets;R_{tracks};dN/dR", histname.Data());
1174 Double_t hg_high = hg_low + hg_binwidth * hg_nbin;
1177 histname = TString::Format(
"%s/histo_g_%d", groupname.Data(), cent);
1178 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1183 histname = TString::Format(
"%s/histo_g_n70_%d", groupname.Data(), cent);
1184 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1187 histname = TString::Format(
"%s/histo_g_n75_%d", groupname.Data(), cent);
1188 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1191 histname = TString::Format(
"%s/histo_g_n80_%d", groupname.Data(), cent);
1192 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1195 histname = TString::Format(
"%s/histo_g_n85_%d", groupname.Data(), cent);
1196 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1199 histname = TString::Format(
"%s/histo_g_n90_%d", groupname.Data(), cent);
1200 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1205 histname = TString::Format(
"%s/histo_g_pt70_%d", groupname.Data(), cent);
1206 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1209 histname = TString::Format(
"%s/histo_g_pt75_%d", groupname.Data(), cent);
1210 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1213 histname = TString::Format(
"%s/histo_g_pt80_%d", groupname.Data(), cent);
1214 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1217 histname = TString::Format(
"%s/histo_g_pt85_%d", groupname.Data(), cent);
1218 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1221 histname = TString::Format(
"%s/histo_g_pt90_%d", groupname.Data(), cent);
1222 histtitle = TString::Format(
"%s - all jets;g;1/N_{jets} dN/dg", histname.Data());
1229 Double_t hptd_high = hptd_low + hptd_binwidth * hptd_nbin;
1232 histname = TString::Format(
"%s/histo_ptd_%d", groupname.Data(), cent);
1233 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1238 histname = TString::Format(
"%s/histo_ptd_n70_%d", groupname.Data(), cent);
1239 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1242 histname = TString::Format(
"%s/histo_ptd_n75_%d", groupname.Data(), cent);
1243 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1246 histname = TString::Format(
"%s/histo_ptd_n80_%d", groupname.Data(), cent);
1247 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1250 histname = TString::Format(
"%s/histo_ptd_n85_%d", groupname.Data(), cent);
1251 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1254 histname = TString::Format(
"%s/histo_ptd_n90_%d", groupname.Data(), cent);
1255 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1260 histname = TString::Format(
"%s/histo_ptd_pt70_%d", groupname.Data(), cent);
1261 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1264 histname = TString::Format(
"%s/histo_ptd_pt75_%d", groupname.Data(), cent);
1265 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1268 histname = TString::Format(
"%s/histo_ptd_pt80_%d", groupname.Data(), cent);
1269 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1272 histname = TString::Format(
"%s/histo_ptd_pt85_%d", groupname.Data(), cent);
1273 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1276 histname = TString::Format(
"%s/histo_ptd_pt90_%d", groupname.Data(), cent);
1277 histtitle = TString::Format(
"%s - all jets;ptd;1/N_{jets} dN/dp_{T}D", histname.Data());
1290 if ( h1 ) { h1->Sumw2();
continue; }
1293 if ( h2 ) { h2->Sumw2();
continue; }
1298 while ((obj = nexthist())) {
fOutput->Add(obj); }
1332 if (trk->P() < 1e-6)
return 0.;
1333 return (trk != 0) ? trk->P()/ jet->
P() : 0.;
1339 if (trk->P() < 1e-6)
return 0.;
1340 return (trk != 0) ? trk->Pt() / jet->
Pt() : 0.;
1346 for (
Int_t i = 0; i < array.GetSize(); i++ )
1347 {
if ( value == array[i] ) {
return i; } }
1355 Double_t dPhi = part1->Phi() - part2->Phi();
1356 Double_t dEta = part1->Eta() - part2->Eta();
1357 dPhi = TVector2::Phi_mpi_pi ( dPhi );
1359 return TMath::Sqrt ( dPhi * dPhi + dEta * dEta );
1366 Int_t entries =
event->GetNumberOfTracks();
1369 std::vector<ptidx_pair> pair_list;
1370 pair_list.reserve ( entries );
1372 for (
Int_t i_entry = 0; i_entry < entries; i_entry++ )
1374 AliVParticle* track =
event->GetTrack ( i_entry );
1375 if ( !track ) { std::cout << Form (
"Unable to find track %d in collection %s", i_entry, event->GetName()) << std::endl ;
continue; }
1377 pair_list.push_back ( std::make_pair ( track->Pt(), i_entry ) );
1380 std::stable_sort ( pair_list.begin(), pair_list.end(),
sort_descend() );
1383 std::vector<Int_t> index_sorted_list;
1384 index_sorted_list.reserve ( entries );
1387 for (
auto it : pair_list) { index_sorted_list.push_back(it.second); }
1389 return index_sorted_list;
1396 Int_t entries = trackscont->GetNEntries();
1399 std::vector<ptidx_pair> pair_list;
1400 pair_list.reserve ( entries );
1404 for(
auto part : partCont->
all()) {
1405 if (!part) {
continue;}
1406 pair_list.push_back ( std::make_pair ( part->Pt(), i_entry++ ) );
1409 std::stable_sort ( pair_list.begin(), pair_list.end(),
sort_descend() );
1412 std::vector<Int_t> index_sorted_list;
1413 index_sorted_list.reserve ( i_entry );
1416 for (
auto it : pair_list) { index_sorted_list.push_back(it.second); }
1418 return index_sorted_list;
1433 if ( !mgr ) { ::Error (
"AddTaskEmcalJetCDF",
"No analysis manager to connect to." );
return NULL; }
1437 AliVEventHandler* handler = mgr->GetInputEventHandler();
1438 if (!handler) { ::Error (
"AddTaskEmcalJetCDF",
"This task requires an input event handler" );
return NULL; }
1440 enum EDataType_t { kUnknown, kESD, kAOD }; EDataType_t dataType = kUnknown;
1442 if (handler->InheritsFrom(
"AliESDInputHandler")) { dataType = kESD; }
1444 if (handler->InheritsFrom(
"AliAODInputHandler")) { dataType = kAOD; }
1451 TString clusters ( nclusters );
1454 if ( tracks.EqualTo(
"usedefault") )
1456 if ( dataType == kESD ) { tracks =
"Tracks"; }
1458 if ( dataType == kAOD ) { tracks =
"tracks"; }
1463 if ( clusters.EqualTo(
"usedefault") )
1465 if ( dataType == kESD ) { clusters =
"CaloClusters"; }
1467 if ( dataType == kAOD ) { clusters =
"caloClusters"; }
1472 if ( cells.EqualTo(
"usedefault") )
1474 if (dataType == kESD) { cells =
"EMCALCells"; }
1476 if (dataType == kAOD) { cells =
"emcalCells"; }
1482 if (!tracks.IsNull()) { name +=
"_" + tracks; }
1483 if (!clusters.IsNull()) { name +=
"_" + clusters; }
1484 if (!cells.IsNull()) { name +=
"_" + cells; }
1485 if (!suffix.IsNull()) { name +=
"_" +
suffix; }
1491 if ( tracks.EqualTo(
"mcparticles") )
1494 if ( tracks.EqualTo(
"tracks") || tracks.EqualTo(
"Tracks") )
1497 if ( !tracks.IsNull())
1505 mgr->AddTask ( cdfTask );
1508 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
1510 TString contname = name +
"_histos";
1511 TString outfile (Form(
"%s", AliAnalysisManager::GetCommonFileName()));
1512 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer ( contname.Data(), TList::Class(), AliAnalysisManager::kOutputContainer, outfile.Data() );
1514 mgr->ConnectInput ( cdfTask, 0, cinput1 );
1515 mgr->ConnectOutput ( cdfTask, 1, coutput1 );
1536 if (!jetCont) {
return NULL; }
AliAnalysisTaskEmcalJetCDF()
THistManager fHistManager
Histogram manager.
Double_t GetXi(const AliVParticle *trk) const
const AliParticleIterableContainer all() const
void SetLeadingHadronType(Int_t t)
Container with name, TClonesArray and cuts for particles.
Declaration of class AliTLorentzVector.
AliClusterContainer * GetClusterContainer() const
Int_t fCentBin
!event centrality bin
std::vector< Int_t > SortTracksPt(AliVEvent *event)
void SetPercAreaCut(Float_t p)
void SetVzRange(Double_t min, Double_t max)
AliClusterContainer * AddClusterContainer(const char *n)
UShort_t GetNumberOfConstituents() const
Container for particles within the EMCAL framework.
void Terminate(Option_t *option)
void UserCreateOutputObjects()
UShort_t GetNumberOfTracks() const
std::ostream & Print(std::ostream &in) const
THashList * CreateHistoGroup(const char *groupname, const char *parent="/")
AliParticleContainer * GetParticleContainer() const
AliEmcalJet * GetLeadingJet(const char *opt="")
void SetMinTrackPt(Float_t b)
TH2 * CreateTH2(const char *name, const char *title, int nbinsx, double xmin, double xmax, int nbinsy, double ymin, double ymax, Option_t *opt="")
TObject * jetContSetParams(AliJetContainer *jetCont, Float_t jetptmin=1., Float_t jetptmax=500., Float_t jetareacutperc=0., Int_t leadhadtype=2, Int_t nLeadJets=1, Float_t mintrackpt=0.15, Float_t maxtrackpt=1000.)
TObject * FindObject(const char *name) const
void SetJetPtCut(Float_t cut)
THashList * GetListOfHistograms() const
void SetNLeadingJets(Int_t t)
TObject * GetHistogram(const char *histName)
AliParticleContainer * AddParticleContainer(const char *n)
TH1 * CreateTH1(const char *name, const char *title, int nbins, double xmin, double xmax, Option_t *opt="")
Double_t Z_pt(const AliEmcalJet *jet, const AliVParticle *trk)
Int_t fNcentBins
how many centrality bins
Int_t GetNAcceptedClusters() const
AliMCParticleContainer * AddMCParticleContainer(const char *n)
Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz) const
TObjArray fJetCollArray
jet collection array
Double_t DeltaR(const AliVParticle *part) const
AliEmcalList * fOutput
!output list
virtual ~AliAnalysisTaskEmcalJetCDF()
Destructor.
Short_t TrackAt(Int_t idx) const
ClassImp(AliAnalysisTaskCRC) AliAnalysisTaskCRC
AliTrackContainer * AddTrackContainer(const char *n)
Double_t DeltaR(const AliVParticle *part1, const AliVParticle *part2)
void SetMakeGeneralHistograms(Bool_t g)
Int_t IdxInArray(Int_t index, TArrayI &array)
Base task in the EMCAL jet framework.
TObject * AddTaskEmcalJetCDF(const char *ntracks="usedefault", const char *nclusters="usedefault", const char *ncells="usedefault", const char *tag="CDF")
Represent a jet reconstructed using the EMCal jet framework.
functional for sorting pair by first element - descending
void UserCreateOutputObjects()
const AliJetIterableContainer accepted() const
Declaration of class AliAnalysisTaskEmcalJetCDF.
void SetCaloCellsName(const char *n)
Int_t GetNAcceptedParticles() const
void SetMaxTrackPt(Float_t b)
Container structure for EMCAL clusters.
Container for MC-true particles within the EMCAL framework.
Double_t Z_ptot(const AliEmcalJet *jet, const AliVParticle *trk)
Container for jet within the EMCAL jet framework.
void SetJetPtCutMax(Float_t cut)
std::vector< int > GetPtSortedTrackConstituentIndexes(TClonesArray *tracks) const
Analysis of jet shapes and FF of all jets and leading jets.