33 #include <TParticle.h>
34 #include <TDatabasePDG.h>
42 #include "AliMCEvent.h"
43 #include "AliCFManager.h"
44 #include "AliCFContainer.h"
46 #include "AliInputEventHandler.h"
47 #include "AliAnalysisManager.h"
48 #include "AliAODHandler.h"
49 #include "AliAODEvent.h"
50 #include "AliAODRecoDecay.h"
56 #include "AliAODMCParticle.h"
57 #include "AliAODMCHeader.h"
58 #include "AliESDtrack.h"
60 #include "THnSparse.h"
62 #include "AliESDtrackCuts.h"
77 #include "AliAnalysisDataSlot.h"
78 #include "AliAnalysisDataContainer.h"
80 #include "AliPIDResponse.h"
86 fHistEventsProcessed(0x0),
91 fCountGenLimAccNoAcc(0),
97 fCountRecoITSClusters(0),
102 fFillFromGenerated(kFALSE),
103 fOriginDselection(0),
104 fAcceptanceUnf(kTRUE),
108 fUseFlatPtWeight(kFALSE),
110 fUseNchWeight(kFALSE),
111 fUseTrackletsWeight(kFALSE),
112 fUseMultRatioAsWeight(kFALSE),
117 fCentralitySelection(kTRUE),
119 fRejectIfNoQuark(kTRUE),
120 fUseMCVertex(kFALSE),
123 fConfiguration(kCheetah),
129 fLctoV0bachelorOption(1),
130 fGenLctoV0bachelorOption(0),
131 fUseSelectionBit(kTRUE),
133 fMultiplicityEstimator(kNtrk10),
135 fZvtxCorrectedNtrkEstimator(kFALSE),
138 fUseAdditionalCuts(kFALSE),
139 fUseCutsForTMVA(kFALSE),
140 fUseCascadeTaskForLctoV0bachelor(kFALSE),
141 fFillMinimumSteps(kFALSE),
142 fCutOnMomConservation(0.00001)
153 fHistEventsProcessed(0x0),
158 fCountGenLimAccNoAcc(0),
164 fCountRecoITSClusters(0),
169 fFillFromGenerated(kFALSE),
170 fOriginDselection(0),
171 fAcceptanceUnf(kTRUE),
175 fUseFlatPtWeight(kFALSE),
177 fUseNchWeight(kFALSE),
178 fUseTrackletsWeight(kFALSE),
179 fUseMultRatioAsWeight(kFALSE),
184 fCentralitySelection(kTRUE),
186 fRejectIfNoQuark(kTRUE),
187 fUseMCVertex(kFALSE),
190 fConfiguration(kCheetah),
196 fLctoV0bachelorOption(1),
197 fGenLctoV0bachelorOption(0),
198 fUseSelectionBit(kTRUE),
200 fMultiplicityEstimator(kNtrk10),
202 fZvtxCorrectedNtrkEstimator(kFALSE),
205 fUseAdditionalCuts(kFALSE),
206 fUseCutsForTMVA(kFALSE),
207 fUseCascadeTaskForLctoV0bachelor(kFALSE),
208 fFillMinimumSteps(kFALSE),
209 fCutOnMomConservation(0.00001)
218 DefineOutput(1,TH1I::Class());
219 DefineOutput(2,AliCFContainer::Class());
220 DefineOutput(3,THnSparseD::Class());
221 DefineOutput(4,AliRDHFCuts::Class());
223 DefineOutput(5,TList::Class());
235 AliAnalysisTaskSE::operator=(c) ;
251 fCFManager(c.fCFManager),
252 fHistEventsProcessed(c.fHistEventsProcessed),
253 fCorrelation(c.fCorrelation),
254 fListProfiles(c.fListProfiles),
255 fCountMC(c.fCountMC),
256 fCountGenLimAcc(c.fCountGenLimAcc),
257 fCountGenLimAccNoAcc(c.fCountGenLimAccNoAcc),
258 fCountAcc(c.fCountAcc),
259 fCountVertex(c.fCountVertex),
260 fCountRefit(c.fCountRefit),
261 fCountReco(c.fCountReco),
262 fCountRecoAcc(c.fCountRecoAcc),
263 fCountRecoITSClusters(c.fCountRecoITSClusters),
264 fCountRecoPPR(c.fCountRecoPPR),
265 fCountRecoPID(c.fCountRecoPID),
267 fDecayChannel(c.fDecayChannel),
268 fFillFromGenerated(c.fFillFromGenerated),
269 fOriginDselection(c.fOriginDselection),
270 fAcceptanceUnf(c.fAcceptanceUnf),
272 fUseWeight(c.fUseWeight),
274 fUseFlatPtWeight(c.fUseFlatPtWeight),
275 fUseZWeight(c.fUseZWeight),
276 fUseNchWeight(c.fUseNchWeight),
277 fUseTrackletsWeight(c.fUseTrackletsWeight),
278 fUseMultRatioAsWeight(c.fUseMultRatioAsWeight),
280 fPartName(c.fPartName),
281 fDauNames(c.fDauNames),
283 fCentralitySelection(c.fCentralitySelection),
284 fFakeSelection(c.fFakeSelection),
285 fRejectIfNoQuark(c.fRejectIfNoQuark),
286 fUseMCVertex(c.fUseMCVertex),
287 fDsOption(c.fDsOption),
288 fGenDsOption(c.fGenDsOption),
289 fConfiguration(c.fConfiguration),
290 fFuncWeight(c.fFuncWeight),
291 fHistoPtWeight(c.fHistoPtWeight),
292 fHistoMeasNch(c.fHistoMeasNch),
293 fHistoMCNch(c.fHistoMCNch),
294 fResonantDecay(c.fResonantDecay),
295 fLctoV0bachelorOption(c.fLctoV0bachelorOption),
296 fGenLctoV0bachelorOption(c.fGenLctoV0bachelorOption),
297 fUseSelectionBit(c.fUseSelectionBit),
298 fPDGcode(c.fPDGcode),
299 fMultiplicityEstimator(c.fMultiplicityEstimator),
300 fRefMult(c.fRefMult),
301 fZvtxCorrectedNtrkEstimator(c.fZvtxCorrectedNtrkEstimator),
302 fIsPPData(c.fIsPPData),
303 fIsPPbData(c.fIsPPbData),
304 fUseAdditionalCuts(c.fUseAdditionalCuts),
305 fUseCutsForTMVA(c.fUseCutsForTMVA),
306 fUseCascadeTaskForLctoV0bachelor(c.fUseCascadeTaskForLctoV0bachelor),
307 fFillMinimumSteps(c.fFillMinimumSteps),
308 fCutOnMomConservation(c.fCutOnMomConservation)
341 if (fDebug>1) printf(
"AliCFTaskVertexingHF::Init()");
342 if(
fUseWeight &&
fUseZWeight) { AliFatal(
"Can not use at the same time pt and z-vtx weights, please choose");
return; }
343 if(
fUseWeight &&
fUseNchWeight) { AliInfo(
"Beware, using at the same time pt and Nch weights, please check"); }
349 AliFatal(
"No cuts defined - Exiting...");
481 AliFatal(
"The decay channel MUST be defined according to AliCFVertexing::DecayChannel - Exiting...");
485 const char* nameoutput=GetOutputSlot(4)->GetContainer()->GetName();
487 copyfCuts->SetName(nameoutput);
490 PostData(4, copyfCuts);
493 AliFatal(
"Failing initializing AliRDHFCuts object - Exiting...");
502 period[0] =
"LHC13b"; period[1] =
"LHC13c";
505 period[0] =
"LHC10b"; period[1] =
"LHC10c"; period[2] =
"LHC10d"; period[3] =
"LHC10e";
509 for(
Int_t i=0; i<nProfiles; i++){
512 hprof->SetName(Form(
"ProfileTrkVsZvtx%s\n",period[i].
Data()));
536 PostData(2,
fCFManager->GetParticleContainer()) ;
539 AliDebug(3,Form(
"*** Processing event %d\n",
fEvents));
542 AliWarning(
"Flag to fill container with generated value ON ---> dca, d0pi, d0K, d0xd0, cosPointingAngle will be set as dummy!");
546 Error(
"UserExec",
"NO EVENT FOUND!");
552 TClonesArray *arrayBranch=0;
554 if(!aodEvent && AODEvent() && IsStandardAOD()) {
557 aodEvent =
dynamic_cast<AliAODEvent*
> (AODEvent());
560 AliAODHandler* aodHandler = (AliAODHandler*)
561 ((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler());
562 if(aodHandler->GetExtensions()) {
563 AliAODExtension *ext = (AliAODExtension*)aodHandler->GetExtensions()->FindObject(
"AliAOD.VertexingHF.root");
568 arrayBranch=(TClonesArray*)aodFromExt->GetList()->FindObject(
"D0toKpi");
572 arrayBranch=(TClonesArray*)aodFromExt->GetList()->FindObject(
"Dstar");
576 arrayBranch=(TClonesArray*)aodFromExt->GetList()->FindObject(
"CascadesHF");
582 arrayBranch=(TClonesArray*)aodFromExt->GetList()->FindObject(
"Charm3Prong");
586 arrayBranch=(TClonesArray*)aodFromExt->GetList()->FindObject(
"Charm4Prong");
597 arrayBranch=(TClonesArray*)aodEvent->GetList()->FindObject(
"D0toKpi");
601 arrayBranch=(TClonesArray*)aodEvent->GetList()->FindObject(
"Dstar");
605 arrayBranch=(TClonesArray*)aodEvent->GetList()->FindObject(
"CascadesHF");
611 arrayBranch=(TClonesArray*)aodEvent->GetList()->FindObject(
"Charm3Prong");
615 arrayBranch=(TClonesArray*)aodEvent->GetList()->FindObject(
"Charm4Prong");
623 AliAODVertex *aodVtx = (AliAODVertex*)aodEvent->GetPrimaryVertex();
625 AliDebug(3,
"The event was skipped due to missing vertex");
630 AliError(
"Could not find array of HF vertices");
643 TClonesArray* mcArray =
dynamic_cast<TClonesArray*
>(aodEvent->FindListObject(AliAODMCParticle::StdBranchName()));
645 AliError(
"Could not find Monte-Carlo in AOD");
649 Int_t icountGenLimAcc = 0;
650 Int_t icountGenLimAccNoAcc = 0;
652 Int_t icountReco = 0;
653 Int_t icountVertex = 0;
654 Int_t icountRefit = 0;
655 Int_t icountRecoAcc = 0;
656 Int_t icountRecoITSClusters = 0;
657 Int_t icountRecoPPR = 0;
658 Int_t icountRecoPID = 0;
661 AliAODMCHeader *mcHeader =
dynamic_cast<AliAODMCHeader*
>(aodEvent->GetList()->FindObject(AliAODMCHeader::StdBranchName()));
663 AliError(
"Could not find MC Header in AOD");
729 AliError(
"No AliCFVertexingHF initialized");
730 delete[] containerInput;
731 delete[] containerInputMC;
735 Double_t zPrimVertex = aodVtx ->GetZ();
736 Double_t zMCVertex = mcHeader->GetVtxZ();
737 Int_t runnumber = aodEvent->GetRunNumber();
743 nTracklets = (
Double_t)nTrackletsEta10;
752 nTracklets = (
Double_t)nTrackletsEta10Corr;
764 AliDebug(2,Form(
"Using Nch weights, Mult=%d Weight=%f\n",nChargedMCPhysicalPrimary,
fWeight));
769 AliDebug(3,Form(
"z coordinate of MC vertex = %f, it was required to be within [-%f, +%f], skipping event", zMCVertex,
fCuts->
GetMaxVtxZ(),
fCuts->
GetMaxVtxZ()));
770 delete[] containerInput;
771 delete[] containerInputMC;
776 if(aodEvent->GetTriggerMask()==0 &&
777 (runnumber>=195344 && runnumber<=195677)){
778 AliDebug(3,
"Event rejected because of null trigger mask");
779 delete[] containerInput;
780 delete[] containerInputMC;
785 AliESDtrackCuts** trackCuts =
new AliESDtrackCuts*[cfVtxHF->
GetNProngs()];
823 delete[] containerInput;
824 delete[] containerInputMC;
840 AliAODVZERO *vzeroAOD = (AliAODVZERO*)aodEvent->GetVZEROData();
841 if(vzeroAOD) vzeroMult = vzeroAOD->GetMTotV0A() + vzeroAOD->GetMTotV0C();
850 for (
Int_t iPart=0; iPart<mcArray->GetEntriesFast(); iPart++) {
851 AliAODMCParticle* mcPart =
dynamic_cast<AliAODMCParticle*
>(mcArray->At(iPart));
853 AliError(
"Failed casting particle from MC array!, Skipping particle");
861 if (!
fCFManager->CheckParticleCuts(0, mcPart)) {
862 AliDebug(2,
"Check the MC-level cuts - not desidered particle");
866 AliDebug(3, Form(
"\n\n---> COOL! we found a particle (particle %d)!!! with PDG code = %d \n\n", iPart, mcPart->GetPdgCode()));
872 AliDebug(2,Form(
"Impossible to set the label array for particle %d (decaychannel = %d)", iPart,
fDecayChannel));
878 AliDebug(2,Form(
"Check on the family wrong for particle %d!!! (decaychannel = %d)", iPart,
fDecayChannel));
882 AliDebug(2,Form(
"Check on the family OK for particle %d!!! (decaychannel = %d)", iPart,
fDecayChannel));
886 Bool_t mcContainerFilled = cfVtxHF -> FillMCContainer(containerInputMC);
887 AliDebug(2, Form(
"particle = %d mcContainerFilled = %d", iPart, mcContainerFilled));
888 if (mcContainerFilled) {
891 AliDebug(2,
"Using Histogram as Pt weight function");
895 AliDebug(2,
"Using function");
899 AliDebug(2,
"Using FONLL");
902 AliDebug(2,Form(
"pt = %f, weight = %f",containerInputMC[0],
fWeight));
905 AliDebug(3, Form(
"Not in limited acceptance, containerInputMC[0] = %f, containerInputMC[1] = %f", containerInputMC[0], containerInputMC[1]));
909 AliDebug(3, Form(
"YES!! in limited acceptance, containerInputMC[0] = %f, containerInputMC[1] = %f", containerInputMC[0],containerInputMC[1]));
913 if (TMath::Abs(containerInputMC[1]) < 0.5) {
916 AliDebug(3,
"MC Lim Acc container filled\n");
918 if (!(cfVtxHF-> MCAcceptanceStep())) {
921 icountGenLimAccNoAcc++;
922 AliDebug(3,
"MC Lim Acc No Acc container filled\n");
931 AliDebug(3,
"MC container filled \n");
936 Bool_t mcAccepStep = cfVtxHF-> MCAcceptanceStep();
939 AliDebug(3,
"MC acceptance cut passed\n");
947 AliDebug(3,
"Vertex cut passed and container filled\n");
955 AliDebug(3,
"MC Refit cut passed and container filled\n");
959 AliDebug(3,
"MC Refit cut not passed\n");
964 AliDebug (3,
"MC vertex step not passed\n");
969 AliDebug (3,
"MC in acceptance step not passed\n");
974 AliDebug (3,
"MC container not filled\n");
978 if (cquarks<2) AliDebug(2,Form(
"Event with %d c-quarks", cquarks));
979 AliDebug(2,Form(
"Found %i MC particles that are %s!!",icountMC,
fPartName.Data()));
980 AliDebug(2,Form(
"Found %i MC particles that are %s and satisfy Acc cuts!!",icountAcc,
fPartName.Data()));
981 AliDebug(2,Form(
"Found %i MC particles that are %s and satisfy Vertex cuts!!",icountVertex,
fPartName.Data()));
982 AliDebug(2,Form(
"Found %i MC particles that are %s and satisfy Refit cuts!!",icountRefit,
fPartName.Data()));
992 AliDebug(2,Form(
"Found %d vertices for decay channel %d",arrayBranch->GetEntriesFast(),
fDecayChannel));
994 for(
Int_t iCandid = 0; iCandid<arrayBranch->GetEntriesFast();iCandid++){
1059 if (!signAssociation){
1065 if (isPartOrAntipart == 0){
1066 AliDebug(2, Form(
"The candidate pdg code doesn't match the requirement set in the task (fSign = %d)",
fSign));
1071 AliDebug(3,Form(
"iCandid=%d - signAssociation=%d, isPartOrAntipart=%d",iCandid, signAssociation, isPartOrAntipart));
1074 AliDebug(3, Form(
"CF task: RecoContFilled for candidate %d is %d", iCandid, (
Int_t)recoContFilled));
1075 if (recoContFilled){
1080 AliDebug(2,
"Using Histogram as Pt weight function");
1084 AliDebug(2,
"Using function");
1088 AliDebug(2,
"Using FONLL");
1091 AliDebug(2, Form(
"pt = %f, weight = %f",containerInput[0],
fWeight));
1100 if (recoStep) AliDebug(2, Form(
"particle = %d --> CF task: Reco step for candidate %d is %d", iCandid, iCandid, (
Int_t)recoStep));
1105 Bool_t isBitSelected = kTRUE;
1115 if(!((dynamic_cast<AliAODRecoCascadeHF*>(charmCandidate))->CheckCascadeFlags())) isBitSelected = kFALSE;
1123 if (recoStep && recoContFilled && vtxCheck){
1127 AliDebug(3,
"Reco step passed and container filled\n");
1131 if (recoAcceptanceStep) {
1135 AliDebug(3,
"Reco acceptance cut passed and container filled\n");
1139 Bool_t bUnfolding = cfVtxHF -> FillUnfoldingMatrix(
fPDGcode,fill);
1145 if (recoITSnCluster){
1148 icountRecoITSClusters++;
1149 AliDebug(3,
"Reco n ITS cluster cut passed and container filled\n");
1152 Int_t recoAnalysisCuts = -1, recoPidSelection = -1;
1158 if(keepDs) recoAnalysisCuts=3;
1162 if (keepLctoV0bachelor) recoAnalysisCuts=3;
1164 AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
1165 AliPIDResponse* pidResponse = inputHandler->GetPIDResponse();
1172 Bool_t tempAn=(recoAnalysisCuts == 3 || recoAnalysisCuts == isPartOrAntipart);
1174 if (
fDecayChannel == 32) tempAn=(recoAnalysisCuts >0 || recoAnalysisCuts == isPartOrAntipart);
1179 AliDebug(3,
"Reco Analysis cuts passed and container filled \n");
1187 if(keepDs) recoPidSelection=3;
1190 if (keepLctoV0bachelor) recoPidSelection=3;
1193 Bool_t tempPid=(recoPidSelection == 3 || recoPidSelection == isPartOrAntipart);
1195 if (
fDecayChannel == 32) tempPid=(recoPidSelection >0 || recoPidSelection == isPartOrAntipart);
1201 if (isPartOrAntipart == 1){
1203 }
else if (isPartOrAntipart == 2){
1206 if ((weigPID < 0) || (weigPID > 1)) weigPID = 0.;
1210 Int_t labDau0=((AliAODTrack*)charmCandidate->GetDaughter(0))->GetLabel();
1211 AliAODMCParticle* firstDau=(AliAODMCParticle*)mcArray->UncheckedAt(TMath::Abs(labDau0));
1213 Int_t pdgCode0=TMath::Abs(firstDau->GetPdgCode());
1216 }
else if(pdgCode0==211){
1219 if ((weigPID < 0) || (weigPID > 1)) weigPID = 0.;
1227 AliDebug(3,
"Reco PID cuts passed and container filled \n");
1230 Bool_t bUnfolding = cfVtxHF -> FillUnfoldingMatrix(
fPDGcode,fill);
1235 AliDebug(3,
"Analysis Cuts step not passed \n");
1241 AliDebug(3,
"PID selection not passed \n");
1247 AliDebug(3,
"Number of ITS cluster step not passed\n");
1253 AliDebug(3,
"Reco acceptance step not passed\n");
1259 AliDebug(3,
"Reco step not passed\n");
1276 delete[] containerInput;
1277 delete[] containerInputMC;
1283 delete [] trackCuts;
1296 AliAnalysisTaskSE::Terminate();
1301 AliInfo(Form(
"Found %i MC particles that are %s in MC and satisfy Acc cuts, in %d events",
fCountAcc,
fPartName.Data(),
fEvents));
1302 AliInfo(Form(
"Found %i MC particles that are %s in MC and satisfy Acc cuts, and satisfy Vertex requirement in %d events",
fCountVertex,
fPartName.Data(),
fEvents));
1303 AliInfo(Form(
"Found %i MC particles that are %s in MC and satisfy Acc cuts, and satisfy ITS+TPC refit requirementin %d events",
fCountRefit,
fPartName.Data(),
fEvents));
1311 AliCFContainer *cont=
dynamic_cast<AliCFContainer*
> (GetOutputData(2));
1313 printf(
"CONTAINER NOT FOUND\n");
1320 Int_t nvarToPlot = 0;
1323 for (
Int_t ih = 0; ih<3; ih++){
1329 h[ih] =
new TH1D[nvarToPlot];
1331 for(
Int_t iC=1;iC<nvarToPlot; iC++){
1333 h[0][iC] = *(cont->ShowProjection(iC,0));
1335 h[1][iC] = *(cont->ShowProjection(iC,1));
1337 h[2][iC] = *(cont->ShowProjection(iC,4));
1343 for (
Int_t ih = 0; ih<3; ih++){
1344 h[ih] =
new TH1D[nvarToPlot];
1346 for(
Int_t iC=0;iC<nvarToPlot; iC++){
1348 h[0][iC] = *(cont->ShowProjection(iC,0));
1350 h[1][iC] = *(cont->ShowProjection(iC,1));
1352 h[2][iC] = *(cont->ShowProjection(iC,4));
1358 for (
Int_t ih = 0; ih<3; ih++){
1359 h[ih] =
new TH1D[nvarToPlot];
1361 for(
Int_t iC=0;iC<nvarToPlot; iC++){
1363 h[0][iC] = *(cont->ShowProjection(iC,0));
1365 h[1][iC] = *(cont->ShowProjection(iC,1));
1367 h[2][iC] = *(cont->ShowProjection(iC,4));
1375 titles =
new TString[nvarToPlot];
1376 titles[0]=
"pT_Dplus (GeV/c)";
1377 titles[1]=
"rapidity";
1378 titles[2]=
"phi (rad)";
1379 titles[3]=
"cT (#mum)";
1380 titles[4]=
"cosPointingAngle";
1381 titles[5]=
"pT_1 (GeV/c)";
1382 titles[6]=
"pT_2 (GeV/c)";
1383 titles[7]=
"pT_3 (GeV/c)";
1384 titles[8]=
"d0_1 (#mum)";
1385 titles[9]=
"d0_2 (#mum)";
1386 titles[10]=
"d0_3 (#mum)";
1387 titles[11]=
"zVertex (cm)";
1390 titles =
new TString[nvarToPlot];
1391 titles[0]=
"p_{T}(#Lambda_{c}) [GeV/c]";
1392 titles[1]=
"y(#Lambda_{c})";
1393 titles[2]=
"#varphi(#Lambda_{c}) [rad]";
1394 titles[3]=
"onTheFlyStatusV0";
1395 titles[4]=
"z_{vtx} [cm]";
1396 titles[5]=
"centrality";
1398 titles[7]=
"multiplicity";
1400 titles[8]=
"p(bachelor) [GeV/c]";
1401 titles[9]=
"p_{T}(V0) [GeV/c]";
1403 titles[11]=
"#varphi(V0) [rad]";
1404 titles[12]=
"m_{inv}(#pi^{+}#pi^{+}) [GeV/c^{2}]";
1405 titles[13]=
"dcaV0 (nSigma)";
1406 titles[14]=
"cosine pointing angle (V0)";
1407 titles[15]=
"cosine pointing angle (#Lambda_{c})";
1412 titles =
new TString[nvarToPlot];
1413 titles[0]=
"pT_D0 (GeV/c)";
1414 titles[1]=
"rapidity";
1415 titles[2]=
"cosThetaStar";
1416 titles[3]=
"pT_pi (GeV/c)";
1417 titles[4]=
"pT_K (Gev/c)";
1418 titles[5]=
"cT (#mum)";
1419 titles[6]=
"dca (#mum)";
1420 titles[7]=
"d0_pi (#mum)";
1421 titles[8]=
"d0_K (#mum)";
1422 titles[9]=
"d0xd0 (#mum^2)";
1423 titles[10]=
"cosPointingAngle";
1424 titles[11]=
"phi (rad)";
1429 titles =
new TString[nvarToPlot];
1431 titles[0]=
"p_{T}(#Lambda_{c}) [GeV/c]";
1432 titles[1]=
"y(#Lambda_{c})";
1433 titles[2]=
"#varphi(#Lambda_{c}) [rad]";
1434 titles[3]=
"onTheFlyStatusV0";
1435 titles[4]=
"z_{vtx} [cm]";
1436 titles[5]=
"centrality";
1438 titles[7]=
"multiplicity";
1440 titles[0]=
"pT_candidate (GeV/c)";
1441 titles[1]=
"rapidity";
1442 titles[2]=
"cT (#mum)";
1444 titles[4]=
"z_{vtx}";
1445 titles[5]=
"centrality";
1447 titles[7]=
"multiplicity";
1452 titles =
new TString[nvarToPlot];
1454 titles[0]=
"p_{T}(#Lambda_{c}) [GeV/c]";
1455 titles[1]=
"y(#Lambda_{c})";
1456 titles[2]=
"centrality";
1457 titles[3]=
"multiplicity";
1459 titles[0]=
"pT_candidate (GeV/c)";
1460 titles[1]=
"rapidity";
1461 titles[2]=
"centrality";
1462 titles[3]=
"multiplicity";
1466 Int_t markers[16]={20,24,21,25,27,28,
1470 for(
Int_t iC=0;iC<nvarToPlot; iC++){
1471 for(
Int_t iStep=0;iStep<3;iStep++){
1472 h[iStep][iC].SetTitle(titles[iC].
Data());
1473 h[iStep][iC].GetXaxis()->SetTitle(titles[iC].
Data());
1474 Double_t maxh=h[iStep][iC].GetMaximum();
1475 h[iStep][iC].GetYaxis()->SetRangeUser(0,maxh*1.2);
1476 h[iStep][iC].SetMarkerStyle(markers[iC]);
1477 h[iStep][iC].SetMarkerColor(colors[iStep]);
1481 gStyle->SetCanvasColor(0);
1482 gStyle->SetFrameFillColor(0);
1483 gStyle->SetTitleFillColor(0);
1484 gStyle->SetStatColor(0);
1487 TCanvas * c1 =
new TCanvas(Form(
"c1New_%d",
fDecayChannel),
"Vars 0, 1, 2, 3",1100,1200);
1490 for(
Int_t iVar=0; iVar<4; iVar++){
1491 if(iVar>=
fNvar)
continue;
1493 h[0][iVar].DrawCopy(
"p");
1495 h[1][iVar].DrawCopy(
"p");
1497 h[2][iVar].DrawCopy(
"p");
1501 TCanvas * c2 =
new TCanvas(Form(
"c2New_%d",
fDecayChannel),
"Vars 4, 5, 6, 7",1100,1200);
1504 for(
Int_t iVar=4; iVar<8; iVar++){
1506 h[0][iVar].DrawCopy(
"p");
1508 h[1][iVar].DrawCopy(
"p");
1510 h[2][iVar].DrawCopy(
"p");
1515 TCanvas * c3 =
new TCanvas(Form(
"c3New_%d",
fDecayChannel),
"Vars 8, 9, 10, 11",1100,1200);
1518 for(
Int_t iVar=8; iVar<12; iVar++){
1520 h[0][iVar].DrawCopy(
"p");
1522 h[1][iVar].DrawCopy(
"p");
1524 h[2][iVar].DrawCopy(
"p");
1527 TCanvas * c4 =
new TCanvas(Form(
"c4New_%d",
fDecayChannel),
"Vars 12, 13, 14, 15",1100,1200);
1530 for(
Int_t iVar=12; iVar<16; iVar++){
1532 h[0][iVar].DrawCopy(
"p");
1534 h[1][iVar].DrawCopy(
"p");
1536 h[2][iVar].DrawCopy(
"p");
1554 TFile* file_projection =
new TFile(
"CFtaskHFprojectionNew.root",
"RECREATE");
1559 for(
Int_t iC=0;iC<nvarToPlot; iC++){
1560 for(
Int_t iStep=0;iStep<3;iStep++){
1561 h[iStep][iC].Write(Form(
"Step%d_%s",iStep,titles[iC].
Data()));
1564 file_projection->Close();
1565 for (
Int_t ih = 0; ih<3; ih++)
delete [] h[ih];
1577 Info(
"UserCreateOutputObjects",
"CreateOutputObjects of task %s\n", GetName());
1581 const char* nameoutput=GetOutputSlot(1)->GetContainer()->GetName();
1591 PostData(2,
fCFManager->GetParticleContainer()) ;
1603 fFuncWeight=
new TF1(
"funcWeight",
"[0]+[1]*TMath::Exp(-[2]*x)",0.,50.);
1615 fFuncWeight=
new TF1(
"funcWeight",
"[0]+[1]/TMath::Power(x,[2])",0.05,50.);
1627 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,50.);
1628 fFuncWeight->SetParameters(1.92381e+01, 5.05055e+00, 1.05314e+01, 2.5, 1.88214e-03, 3.44871e+00, -9.74325e-02, 1.97671e+00, -3.21278e-01);
1638 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,50.);
1639 fFuncWeight->SetParameters(6.10443e+00, 1.53487e+00, 1.99474e+00, 2.5, 5.51172e-03, 5.86590e+00, -5.46963e-01, 9.41201e-02, -1.64323e-01);
1649 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",500,0.,50.);
1650 Float_t binc[500]={ 1.695705, 1.743693, 1.790289, 1.835410, 1.878981, 1.920938, 1.961223, 1.999787, 2.036589, 2.071597, 2.104784, 2.136132, 2.165629, 2.193270, 2.219057, 2.174545, 2.064698, 1.959489, 1.858770, 1.762396, 1.670224, 1.582115, 1.497931, 1.417541, 1.340814, 1.267622, 1.197842, 1.131352, 1.068033, 1.007770, 0.950450, 0.895963, 0.844202, 0.795062, 0.748441, 0.704241, 0.662363, 0.622715, 0.585204, 0.549742, 0.516242, 0.484620, 0.454795, 0.426686, 0.400217, 0.375314, 0.351903, 0.329915, 0.309281, 0.289936, 0.271816, 0.254860, 0.239007, 0.224201, 0.210386, 0.197508, 0.185516, 0.174360, 0.163992, 0.154366, 0.145438, 0.137166, 0.129508, 0.122426, 0.115882, 0.109840, 0.104266, 0.099128, 0.094395, 0.090036, 0.086023, 0.082331, 0.078933, 0.075805, 0.072925, 0.070271, 0.067823, 0.065562, 0.063471, 0.061532, 0.059730, 0.058051, 0.056481, 0.055007, 0.053619, 0.052306, 0.051059, 0.049867, 0.048725, 0.047624, 0.046558, 0.045522, 0.044511, 0.043521, 0.042548, 0.041590, 0.040643, 0.039706, 0.038778, 0.037857, 0.036944, 0.036039, 0.035141, 0.034251, 0.033370, 0.032500, 0.031641, 0.030796, 0.029966, 0.029153, 0.028359, 0.027587, 0.026837, 0.026113, 0.025416, 0.024748, 0.024111, 0.023507, 0.022937, 0.022402, 0.021904, 0.021443, 0.021020, 0.020634, 0.020286, 0.019974, 0.019698, 0.019455, 0.019244, 0.019062, 0.018905, 0.018770, 0.018652, 0.018545, 0.018444, 0.018342, 0.018231, 0.018102, 0.017947, 0.017755, 0.017536, 0.017327, 0.017120, 0.016915, 0.016713, 0.016514, 0.016317, 0.016122, 0.015929, 0.015739, 0.015551, 0.015366, 0.015182, 0.015001, 0.014822, 0.014645, 0.014470, 0.014297, 0.014127, 0.013958, 0.013791, 0.013627, 0.013464, 0.013303, 0.013145, 0.012988, 0.012833, 0.012679, 0.012528, 0.012378, 0.012231, 0.012085, 0.011940, 0.011798, 0.011657, 0.011518, 0.011380, 0.011244, 0.011110, 0.010978, 0.010846, 0.010717, 0.010589, 0.010463, 0.010338, 0.010214, 0.010092, 0.009972, 0.009853, 0.009735, 0.009619, 0.009504, 0.009391, 0.009279, 0.009168, 0.009058, 0.008950, 0.008843, 0.008738, 0.008633, 0.008530, 0.008429, 0.008328, 0.008229, 0.008130, 0.008033, 0.007937, 0.007843, 0.007749, 0.007656, 0.007565, 0.007475, 0.007385, 0.007297, 0.007210, 0.007124, 0.007039, 0.006955, 0.006872, 0.006790, 0.006709, 0.006629, 0.006550, 0.006471, 0.006394, 0.006318, 0.006242, 0.006168, 0.006094, 0.006022, 0.005950, 0.005879, 0.005808, 0.005739, 0.005671, 0.005603, 0.005536, 0.005470, 0.005405, 0.005340, 0.005276, 0.005213, 0.005151, 0.005090, 0.005029, 0.004969, 0.004909, 0.004851, 0.004793, 0.004736, 0.004679, 0.004623, 0.004568, 0.004514, 0.004460, 0.004406, 0.004354, 0.004302, 0.004251, 0.004200, 0.004150, 0.004100, 0.004051, 0.004003, 0.003955, 0.003908, 0.003861, 0.003815, 0.003770, 0.003725, 0.003680, 0.003636, 0.003593, 0.003550, 0.003507, 0.003466, 0.003424, 0.003383, 0.003343, 0.003303, 0.003264, 0.003225, 0.003186, 0.003148, 0.003110, 0.003073, 0.003037, 0.003000, 0.002965, 0.002929, 0.002894, 0.002860, 0.002826, 0.002792, 0.002758, 0.002726, 0.002693, 0.002661, 0.002629, 0.002598, 0.002567, 0.002536, 0.002506, 0.002476, 0.002446, 0.002417, 0.002388, 0.002360, 0.002332, 0.002304, 0.002276, 0.002249, 0.002222, 0.002196, 0.002169, 0.002144, 0.002118, 0.002093, 0.002068, 0.002043, 0.002019, 0.001995, 0.001971, 0.001947, 0.001924, 0.001901, 0.001878, 0.001856, 0.001834, 0.001812, 0.001790, 0.001769, 0.001748, 0.001727, 0.001706, 0.001686, 0.001666, 0.001646, 0.001626, 0.001607, 0.001588, 0.001569, 0.001550, 0.001531, 0.001513, 0.001495, 0.001477, 0.001460, 0.001442, 0.001425, 0.001408, 0.001391, 0.001374, 0.001358, 0.001342, 0.001326, 0.001310, 0.001294, 0.001279, 0.001264, 0.001249, 0.001234, 0.001219, 0.001204, 0.001190, 0.001176, 0.001162, 0.001148, 0.001134, 0.001121, 0.001107, 0.001094, 0.001081, 0.001068, 0.001055, 0.001043, 0.001030, 0.001018, 0.001006, 0.000994, 0.000982, 0.000970, 0.000959, 0.000947, 0.000936, 0.000925, 0.000914, 0.000903, 0.000892, 0.000881, 0.000871, 0.000860, 0.000850, 0.000840, 0.000830, 0.000820, 0.000810, 0.000801, 0.000791, 0.000782, 0.000772, 0.000763, 0.000754, 0.000745, 0.000736, 0.000727, 0.000719, 0.000710, 0.000702, 0.000693, 0.000685, 0.000677, 0.000669, 0.000661, 0.000653, 0.000645, 0.000637, 0.000630, 0.000622, 0.000615, 0.000607, 0.000600, 0.000593, 0.000586, 0.000579, 0.000572, 0.000565, 0.000558, 0.000552, 0.000545, 0.000539, 0.000532, 0.000526, 0.000520, 0.000513, 0.000507, 0.000501, 0.000495, 0.000489, 0.000483, 0.000478, 0.000472, 0.000466, 0.000461, 0.000455, 0.000450, 0.000444, 0.000439, 0.000434, 0.000429, 0.000424, 0.000419, 0.000414, 0.000409, 0.000404, 0.000399, 0.000394, 0.000389, 0.000385, 0.000380, 0.000376, 0.000371, 0.000367, 0.000362, 0.000358, 0.000354, 0.000350, 0.000345, 0.000341, 0.000337, 0.000333, 0.000329, 0.000325, 0.000321, 0.000318, 0.000314, 0.000310, 0.000306, 0.000303, 0.000299, 0.000295, 0.000292, 0.000288, 0.000285, 0.000282, 0.000278, 0.000275, 0.000272, 0.000268, 0.000265, 0.000262, 0.000259, 0.000256, 0.000253, 0.000250, 0.000247, 0.000244, 0.000241, 0.000238, 0.000235};
1651 for(
Int_t i=0; i<500; i++){
1663 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",500,0.,50.);
1664 Float_t binc[500]={ -3.491009, -2.151267, -1.169817, -0.462113, 0.038852, 0.385901, 0.620406, 0.774498, 0.872869, 0.934235, 0.972536, 0.997905, 1.017465, 1.035981, 1.056389, 1.080233, 1.108019, 1.139503, 1.173928, 1.210210, 1.247090, 1.283254, 1.317421, 1.348413, 1.375204, 1.396948, 1.413000, 1.422920, 1.426469, 1.423596, 1.414424, 1.399224, 1.378394, 1.352429, 1.321897, 1.287417, 1.249627, 1.209171, 1.166675, 1.122735, 1.077901, 1.032675, 0.987496, 0.942748, 0.898751, 0.855766, 0.813999, 0.773607, 0.734700, 0.697350, 0.661596, 0.627448, 0.594895, 0.563911, 0.534455, 0.506477, 0.479923, 0.454732, 0.430845, 0.408201, 0.386738, 0.366399, 0.347127, 0.328866, 0.311564, 0.295172, 0.279641, 0.264928, 0.250988, 0.237781, 0.248506, 0.240198, 0.232287, 0.224750, 0.217563, 0.210707, 0.204160, 0.197906, 0.191927, 0.186209, 0.180735, 0.175494, 0.170472, 0.165657, 0.161039, 0.156606, 0.152350, 0.148261, 0.144331, 0.140552, 0.136916, 0.133416, 0.130046, 0.126800, 0.123671, 0.120654, 0.117744, 0.114937, 0.112226, 0.109608, 0.107080, 0.104636, 0.102273, 0.099988, 0.097778, 0.095638, 0.093567, 0.091561, 0.089618, 0.087735, 0.085910, 0.084141, 0.082424, 0.080759, 0.079143, 0.077574, 0.076051, 0.074571, 0.073134, 0.071737, 0.070379, 0.069059, 0.067775, 0.066526, 0.065311, 0.064128, 0.062977, 0.061856, 0.060764, 0.059700, 0.058664, 0.057654, 0.056670, 0.055710, 0.054775, 0.053862, 0.052972, 0.052103, 0.051255, 0.050428, 0.049620, 0.048831, 0.048061, 0.047308, 0.046573, 0.045855, 0.045152, 0.044466, 0.043795, 0.043139, 0.042498, 0.041870, 0.041256, 0.040656, 0.040068, 0.039493, 0.038930, 0.038379, 0.037839, 0.037310, 0.036793, 0.036286, 0.035789, 0.035302, 0.034825, 0.034358, 0.033900, 0.033451, 0.033010, 0.032578, 0.032155, 0.031740, 0.031332, 0.030932, 0.030540, 0.030155, 0.029778, 0.029407, 0.029043, 0.028686, 0.028335, 0.027991, 0.027653, 0.027320, 0.026994, 0.026674, 0.026359, 0.026049, 0.025745, 0.025447, 0.025153, 0.024864, 0.024581, 0.024302, 0.024027, 0.023758, 0.023492, 0.023232, 0.022975, 0.022723, 0.022474, 0.022230, 0.021990, 0.021754, 0.021521, 0.021292, 0.021066, 0.020845, 0.020626, 0.020411, 0.020199, 0.019991, 0.019786, 0.019584, 0.019385, 0.019189, 0.018995, 0.018805, 0.018618, 0.018433, 0.018251, 0.018072, 0.017895, 0.017721, 0.017549, 0.017380, 0.017214, 0.017049, 0.016887, 0.016727, 0.016570, 0.016415, 0.016262, 0.016111, 0.015962, 0.015815, 0.015670, 0.015527, 0.015386, 0.015247, 0.015110, 0.014974, 0.014841, 0.014709, 0.014579, 0.014450, 0.014324, 0.014199, 0.014075, 0.013953, 0.013833, 0.013714, 0.013597, 0.013481, 0.013367, 0.013254, 0.013143, 0.013033, 0.012924, 0.012817, 0.012711, 0.012606, 0.012503, 0.012401, 0.012300, 0.012200, 0.012102, 0.012004, 0.011908, 0.011813, 0.011719, 0.011626, 0.011535, 0.011444, 0.011355, 0.011266, 0.011179, 0.011092, 0.011007, 0.010922, 0.010839, 0.010756, 0.010675, 0.010594, 0.010514, 0.010435, 0.010357, 0.010280, 0.010204, 0.010128, 0.010053, 0.009980, 0.009907, 0.009834, 0.009763, 0.009692, 0.009622, 0.009553, 0.009485, 0.009417, 0.009350, 0.009284, 0.009218, 0.009153, 0.009089, 0.009026, 0.008963, 0.008901, 0.008839, 0.008778, 0.008718, 0.008658, 0.008599, 0.008540, 0.008483, 0.008425, 0.008368, 0.008312, 0.008257, 0.008202, 0.008147, 0.008093, 0.008040, 0.007987, 0.007934, 0.007883, 0.007831, 0.007780, 0.007730, 0.007680, 0.007631, 0.007582, 0.007533, 0.007485, 0.007438, 0.007390, 0.007344, 0.007298, 0.007252, 0.007206, 0.007161, 0.007117, 0.007073, 0.007029, 0.006986, 0.006943, 0.006900, 0.006858, 0.006817, 0.006775, 0.006734, 0.006694, 0.006653, 0.006613, 0.006574, 0.006535, 0.006496, 0.006457, 0.006419, 0.006381, 0.006344, 0.006307, 0.006270, 0.006233, 0.006197, 0.006161, 0.006126, 0.006090, 0.006055, 0.006021, 0.005986, 0.005952, 0.005918, 0.005885, 0.005852, 0.005819, 0.005786, 0.005754, 0.005722, 0.005690, 0.005658, 0.005627, 0.005596, 0.005565, 0.005534, 0.005504, 0.005474, 0.005444, 0.005415, 0.005385, 0.005356, 0.005327, 0.005299, 0.005270, 0.005242, 0.005214, 0.005186, 0.005159, 0.005132, 0.005104, 0.005078, 0.005051, 0.005025, 0.004998, 0.004972, 0.004946, 0.004921, 0.004895, 0.004870, 0.004845, 0.004820, 0.004796, 0.004771, 0.004747, 0.004723, 0.004699, 0.004675, 0.004651, 0.004628, 0.004605, 0.004582, 0.004559, 0.004536, 0.004514, 0.004491, 0.004469, 0.004447, 0.004425, 0.004404, 0.004382, 0.004361, 0.004339, 0.004318, 0.004297, 0.004277, 0.004256, 0.004235, 0.004215, 0.004195, 0.004175, 0.004155, 0.004135, 0.004116, 0.004096, 0.004077, 0.004058, 0.004039, 0.004020, 0.004001, 0.003982, 0.003964, 0.003945, 0.003927, 0.003909, 0.003891, 0.003873, 0.003855, 0.003837, 0.003820, 0.003802, 0.003785, 0.003768, 0.003751, 0.003734, 0.003717, 0.003700, 0.003684, 0.003667, 0.003651, 0.003634, 0.003618, 0.003602, 0.003586, 0.003570, 0.003555, 0.003539, 0.003523, 0.003508, 0.003493, 0.003477, 0.003462, 0.003447, 0.003432, 0.003417, 0.003403, 0.003388, 0.003373, 0.003359, 0.003345, 0.003330, 0.003316, 0.003302, 0.003288, 0.003274, 0.003260, 0.003246, 0.003233, 0.003219, 0.003206, 0.003192};
1665 for(
Int_t i=0; i<500; i++){
1677 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",400,0.,40.);
1678 Float_t binc[400]={1.118416, 1.003458, 0.935514, 0.907222, 0.904359, 0.913668, 0.933906, 0.963898, 0.996388, 1.031708, 1.066404, 1.099683, 1.125805, 1.145181, 1.165910, 1.181905, 1.193425, 1.203891, 1.204726, 1.209411, 1.209943, 1.204763, 1.205291, 1.198912, 1.197390, 1.182005, 1.184194, 1.175994, 1.167881, 1.158348, 1.147190, 1.139833, 1.126940, 1.123322, 1.108389, 1.102199, 1.089464, 1.075874, 1.061964, 1.051429, 1.038113, 1.026668, 1.011441, 0.998567, 0.987658, 0.972434, 0.950068, 0.940758, 0.916880, 0.911931, 0.894512, 0.878691, 0.860589, 0.848025, 0.830774, 0.819399, 0.801134, 0.775276, 0.766382, 0.750495, 0.736935, 0.717529, 0.702637, 0.689152, 0.671334, 0.652030, 0.635696, 0.621365, 0.608362, 0.599019, 0.576024, 0.562136, 0.550938, 0.533587, 0.516410, 0.509744, 0.501655, 0.487402, 0.476469, 0.463762, 0.445979, 0.438088, 0.422214, 0.417467, 0.404357, 0.391450, 0.379996, 0.371201, 0.361497, 0.352912, 0.343189, 0.329183, 0.327662, 0.310783, 0.304525, 0.301007, 0.293306, 0.278332, 0.274419, 0.267361, 0.261459, 0.255514, 0.249293, 0.241129, 0.237600, 0.231343, 0.221982, 0.216872, 0.211094, 0.206954, 0.202333, 0.196572, 0.193274, 0.188240, 0.181817, 0.178364, 0.173614, 0.167135, 0.166055, 0.163423, 0.156557, 0.155821, 0.151985, 0.144909, 0.145062, 0.139720, 0.138873, 0.131892, 0.129969, 0.126509, 0.126978, 0.120451, 0.117661, 0.116300, 0.115604, 0.112215, 0.109237, 0.107720, 0.106419, 0.102050, 0.102777, 0.097406, 0.098447, 0.095964, 0.093868, 0.092430, 0.089329, 0.088249, 0.085881, 0.084417, 0.085498, 0.082444, 0.079151, 0.079565, 0.077811, 0.077293, 0.075218, 0.072445, 0.073054, 0.071545, 0.070279, 0.068046, 0.067854, 0.068092, 0.065378, 0.064405, 0.062060, 0.063391, 0.061718, 0.059616, 0.058913, 0.058895, 0.058311, 0.056320, 0.056527, 0.055349, 0.053701, 0.054735, 0.052264, 0.051277, 0.051554, 0.050545, 0.048995, 0.049507, 0.048466, 0.048156, 0.046809, 0.047600, 0.046078, 0.044801, 0.044113, 0.043700, 0.043530, 0.043396, 0.042556, 0.041048, 0.041657, 0.040394, 0.041314, 0.040720, 0.039656, 0.038478, 0.039276, 0.038777, 0.037730, 0.036918, 0.036466, 0.035827, 0.035285, 0.035963, 0.034371, 0.034757, 0.033205, 0.033666, 0.033266, 0.032583, 0.033570, 0.032102, 0.032107, 0.031464, 0.032160, 0.030091, 0.030564, 0.029464, 0.029613, 0.029626, 0.029512, 0.029324, 0.028607, 0.027628, 0.027251, 0.027072, 0.027077, 0.026724, 0.026961, 0.026303, 0.026237, 0.025454, 0.025133, 0.025365, 0.026014, 0.024807, 0.023901, 0.023459, 0.023405, 0.023654, 0.023981, 0.023675, 0.022493, 0.022781, 0.021801, 0.021704, 0.022372, 0.021189, 0.020681, 0.020779, 0.021324, 0.020558, 0.020901, 0.020586, 0.020808, 0.019276, 0.019516, 0.019706, 0.018935, 0.018632, 0.018516, 0.019187, 0.018916, 0.018039, 0.018208, 0.018045, 0.017628, 0.017916, 0.017711, 0.017838, 0.017222, 0.016565, 0.015733, 0.016264, 0.015826, 0.016090, 0.016622, 0.015802, 0.016621, 0.015441, 0.015309, 0.014860, 0.014935, 0.014968, 0.014443, 0.014485, 0.015136, 0.014078, 0.014414, 0.013908, 0.014071, 0.014078, 0.013766, 0.013436, 0.013507, 0.013480, 0.013224, 0.013041, 0.013935, 0.012885, 0.012453, 0.012528, 0.012492, 0.012225, 0.012542, 0.012706, 0.012136, 0.011902, 0.011560, 0.011448, 0.011861, 0.011271, 0.011831, 0.011159, 0.011171, 0.010966, 0.011311, 0.011002, 0.011130, 0.010995, 0.010450, 0.010663, 0.010678, 0.010492, 0.009861, 0.010507, 0.009916, 0.010121, 0.010029, 0.010046, 0.009370, 0.009647, 0.010104, 0.009282, 0.009830, 0.009403, 0.009148, 0.009172, 0.008893, 0.009158, 0.009019, 0.008780, 0.008579, 0.009063, 0.008634, 0.008988, 0.008265, 0.008581, 0.008575, 0.008690, 0.008181, 0.008352, 0.008150, 0.008430, 0.008256, 0.008119, 0.008453, 0.008447, 0.008021, 0.007938, 0.008025, 0.007718, 0.008127, 0.007651, 0.007590, 0.007316, 0.007839, 0.007504, 0.007341, 0.007527, 0.007263, 0.007668, 0.007306, 0.007271, 0.006910, 0.007257, 0.007260, 0.006810, 0.006967, 0.006887, 0.006867, 0.007202, 0.006829, 0.006370, 0.006710, 0.006417, 0.006361, 0.006800, 0.006410, 0.006323, 0.006790, 0.006322, 0.006673, 0.006547};
1679 for(
Int_t i=0; i<400; i++){
1692 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",400,0.,40.);
1693 Float_t binc[400]={2.166180, 1.866117, 1.667595, 1.547176, 1.486661, 1.457891, 1.426949, 1.399055, 1.383278, 1.349383, 1.317009, 1.282321, 1.234257, 1.181136, 1.136655, 1.087523, 1.037912, 0.993256, 0.944746, 0.900948, 0.865869, 0.827193, 0.794424, 0.757723, 0.733020, 0.700164, 0.682189, 0.659872, 0.637918, 0.615749, 0.593020, 0.574402, 0.556158, 0.542663, 0.525494, 0.516038, 0.503629, 0.490980, 0.479143, 0.469005, 0.457749, 0.447668, 0.436803, 0.427073, 0.418282, 0.407867, 0.395093, 0.387861, 0.374742, 0.369462, 0.360146, 0.351991, 0.342990, 0.336259, 0.327730, 0.322382, 0.314602, 0.303874, 0.299820, 0.293049, 0.287539, 0.280329, 0.274866, 0.269939, 0.263299, 0.256057, 0.249215, 0.242170, 0.235704, 0.230709, 0.220529, 0.213921, 0.208394, 0.202424, 0.196700, 0.194943, 0.192620, 0.187894, 0.184411, 0.180204, 0.172915, 0.169077, 0.162201, 0.159636, 0.153904, 0.148296, 0.143282, 0.139306, 0.135561, 0.132342, 0.128696, 0.123444, 0.122873, 0.116544, 0.114197, 0.112878, 0.110018, 0.104547, 0.103222, 0.100707, 0.098622, 0.096513, 0.094295, 0.091334, 0.090122, 0.087870, 0.084894, 0.083729, 0.082265, 0.081404, 0.080323, 0.078750, 0.078132, 0.076781, 0.074823, 0.074050, 0.072614, 0.070093, 0.069828, 0.068907, 0.066189, 0.066054, 0.064600, 0.061757, 0.061986, 0.059862, 0.059656, 0.056807, 0.055956, 0.054386, 0.054507, 0.051629, 0.050358, 0.049702, 0.049331, 0.047814, 0.046476, 0.045762, 0.045142, 0.043224, 0.043484, 0.041282, 0.041794, 0.040809, 0.039985, 0.039439, 0.038181, 0.037782, 0.036831, 0.036264, 0.036790, 0.035535, 0.034173, 0.034409, 0.033659, 0.033308, 0.032290, 0.030981, 0.031121, 0.030361, 0.029708, 0.028653, 0.028461, 0.028449, 0.027208, 0.026697, 0.025623, 0.026069, 0.025279, 0.024332, 0.024341, 0.024629, 0.024677, 0.024117, 0.024490, 0.024257, 0.023804, 0.024537, 0.023692, 0.023502, 0.023888, 0.023673, 0.023193, 0.023684, 0.023429, 0.023521, 0.023014, 0.023346, 0.022544, 0.021866, 0.021477, 0.021224, 0.021089, 0.020972, 0.020515, 0.019739, 0.019982, 0.019328, 0.019719, 0.019387, 0.018833, 0.018227, 0.018558, 0.018276, 0.017738, 0.017460, 0.017365, 0.017178, 0.017033, 0.017478, 0.016817, 0.017119, 0.016463, 0.016802, 0.016711, 0.016475, 0.017083, 0.016441, 0.016548, 0.016320, 0.016786, 0.015804, 0.016153, 0.015668, 0.015843, 0.015810, 0.015651, 0.015454, 0.014981, 0.014376, 0.014089, 0.013906, 0.013818, 0.013549, 0.013580, 0.013160, 0.013040, 0.012566, 0.012324, 0.012353, 0.012582, 0.011915, 0.011401, 0.011112, 0.011008, 0.011046, 0.011119, 0.010954, 0.010439, 0.010604, 0.010179, 0.010163, 0.010507, 0.009981, 0.009771, 0.009846, 0.010134, 0.009798, 0.009991, 0.009869, 0.010005, 0.009295, 0.009438, 0.009557, 0.009210, 0.009088, 0.009057, 0.009412, 0.009306, 0.008899, 0.009009, 0.008952, 0.008764, 0.008926, 0.008842, 0.008924, 0.008634, 0.008322, 0.007920, 0.008205, 0.008000, 0.008151, 0.008438, 0.008037, 0.008472, 0.007886, 0.007835, 0.007621, 0.007675, 0.007707, 0.007452, 0.007489, 0.007841, 0.007308, 0.007497, 0.007248, 0.007348, 0.007367, 0.007227, 0.007097, 0.007179, 0.007209, 0.007115, 0.007059, 0.007588, 0.007058, 0.006862, 0.006945, 0.006965, 0.006856, 0.007075, 0.007209, 0.006925, 0.006830, 0.006672, 0.006645, 0.006923, 0.006615, 0.006982, 0.006622, 0.006666, 0.006579, 0.006823, 0.006673, 0.006786, 0.006740, 0.006440, 0.006606, 0.006650, 0.006568, 0.006206, 0.006646, 0.006305, 0.006468, 0.006442, 0.006486, 0.006080, 0.006291, 0.006622, 0.006113, 0.006506, 0.006254, 0.006114, 0.006161, 0.006002, 0.006211, 0.006146, 0.006012, 0.005902, 0.006264, 0.005996, 0.006271, 0.005793, 0.006043, 0.006067, 0.006177, 0.005842, 0.005991, 0.005872, 0.006102, 0.006003, 0.005930, 0.006201, 0.006224, 0.005937, 0.005901, 0.005992, 0.005788, 0.006121, 0.005787, 0.005766, 0.005582, 0.006006, 0.005774, 0.005672, 0.005841, 0.005660, 0.006000, 0.005741, 0.005737, 0.005475, 0.005773, 0.005799, 0.005462, 0.005610, 0.005569, 0.005574, 0.005871, 0.005589, 0.005234, 0.005535, 0.005314, 0.005288, 0.005676, 0.005371, 0.005319, 0.005734, 0.005360, 0.005679, 0.005593};
1694 for(
Int_t i=0; i<400; i++){
1706 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",400,0.,40.);
1707 Float_t binc[400]={1.179906, 1.091249, 1.047774, 1.045579, 1.071679, 1.112413, 1.167414, 1.236240, 1.310301, 1.390289, 1.471711, 1.553389, 1.626886, 1.692115, 1.760647, 1.813658, 1.850817, 1.886699, 1.907671, 1.934832, 1.955433, 1.966727, 1.987262, 1.996316, 2.013326, 1.973926, 1.931144, 1.871654, 1.812942, 1.752718, 1.690846, 1.635303, 1.572611, 1.523510, 1.459790, 1.402510, 1.331908, 1.261575, 1.192241, 1.127915, 1.061798, 0.998830, 0.933514, 0.871774, 0.812936, 0.762844, 0.719340, 0.686587, 0.644108, 0.615714, 0.579512, 0.545254, 0.510508, 0.479884, 0.447423, 0.426154, 0.408934, 0.388264, 0.376424, 0.361389, 0.347757, 0.331685, 0.318029, 0.305285, 0.290922, 0.278523, 0.269807, 0.262025, 0.254878, 0.249325, 0.238179, 0.230899, 0.224792, 0.216253, 0.207879, 0.204465, 0.201153, 0.195373, 0.190926, 0.185773, 0.178589, 0.175371, 0.168959, 0.167004, 0.161705, 0.156809, 0.152788, 0.149806, 0.146429, 0.143478, 0.140037, 0.134813, 0.134679, 0.128205, 0.126078, 0.125038, 0.122214, 0.116329, 0.115044, 0.112427, 0.110279, 0.108098, 0.105784, 0.102628, 0.101429, 0.099101, 0.095464, 0.093631, 0.091491, 0.090045, 0.088374, 0.086188, 0.085067, 0.083168, 0.080636, 0.079414, 0.077610, 0.075013, 0.074825, 0.073932, 0.071106, 0.071050, 0.069574, 0.066593, 0.066924, 0.064876, 0.065064, 0.062345, 0.061980, 0.060859, 0.061616, 0.058952, 0.058079, 0.057894, 0.058031, 0.056604, 0.055180, 0.054490, 0.053909, 0.051768, 0.052210, 0.049552, 0.050152, 0.048955, 0.047953, 0.047224, 0.045588, 0.044985, 0.043728, 0.042934, 0.043434, 0.041834, 0.040118, 0.040281, 0.039348, 0.038987, 0.037793, 0.036258, 0.036420, 0.035528, 0.034761, 0.033524, 0.033296, 0.033280, 0.031825, 0.031351, 0.030329, 0.031103, 0.030401, 0.029481, 0.029247, 0.029352, 0.029174, 0.028286, 0.028500, 0.028017, 0.027293, 0.027932, 0.026779, 0.026379, 0.026628, 0.026211, 0.025508, 0.025877, 0.025433, 0.025328, 0.024636, 0.025069, 0.024282, 0.023625, 0.023278, 0.023074, 0.023000, 0.022943, 0.022514, 0.021767, 0.022180, 0.021594, 0.022175, 0.021944, 0.021456, 0.020901, 0.021419, 0.021230, 0.020738, 0.020322, 0.020055, 0.019686, 0.019371, 0.019725, 0.018835, 0.019029, 0.018163, 0.018398, 0.018163, 0.017719, 0.018126, 0.017208, 0.017086, 0.016622, 0.016865, 0.015663, 0.015791, 0.015108, 0.015069, 0.015033, 0.015006, 0.014940, 0.014604, 0.014133, 0.013968, 0.013904, 0.013934, 0.013780, 0.013930, 0.013727, 0.013940, 0.013763, 0.013826, 0.014192, 0.014801, 0.014347, 0.014048, 0.014009, 0.014197, 0.014571, 0.014999, 0.015030, 0.014491, 0.014891, 0.014456, 0.014596, 0.015256, 0.014648, 0.014492, 0.014756, 0.015344, 0.014986, 0.015433, 0.015394, 0.015756, 0.014778, 0.015145, 0.015478, 0.015051, 0.014986, 0.015067, 0.015793, 0.015748, 0.015188, 0.015502, 0.015533, 0.015340, 0.015759, 0.015745, 0.016026, 0.015635, 0.015194, 0.014579, 0.015225, 0.014963, 0.015365, 0.016030, 0.015387, 0.016341, 0.015327, 0.015340, 0.015030, 0.015246, 0.015420, 0.015015, 0.015195, 0.016021, 0.015034, 0.015528, 0.015114, 0.015423, 0.015564, 0.015348, 0.015107, 0.015314, 0.015411, 0.015243, 0.015154, 0.016324, 0.015215, 0.014823, 0.015030, 0.015104, 0.014896, 0.015400, 0.015721, 0.015131, 0.014951, 0.014630, 0.014597, 0.015235, 0.014583, 0.015418, 0.014648, 0.014769, 0.014601, 0.015167, 0.014857, 0.015134, 0.015053, 0.014405, 0.014800, 0.014921, 0.014760, 0.013966, 0.014979, 0.014230, 0.014620, 0.014581, 0.014701, 0.013799, 0.014299, 0.015071, 0.013931, 0.014846, 0.014290, 0.013988, 0.014113, 0.013767, 0.014263, 0.014131, 0.013840, 0.013604, 0.014456, 0.013853, 0.014505, 0.013416, 0.014010, 0.014081, 0.014352, 0.013589, 0.013952, 0.013690, 0.014241, 0.014024, 0.013868, 0.014517, 0.014587, 0.013927, 0.013857, 0.014084, 0.013619, 0.014417, 0.013644, 0.013607, 0.013185, 0.014200, 0.013665, 0.013437, 0.013849, 0.013431, 0.014252, 0.013648, 0.013652, 0.013039, 0.013761, 0.013836, 0.013043, 0.013408, 0.013319, 0.013344, 0.014065, 0.013400, 0.012560, 0.013294, 0.012773, 0.012721, 0.013663, 0.012939, 0.012823, 0.013835, 0.012942, 0.013723, 0.013525};
1708 for(
Int_t i=0; i<400; i++){
1720 fHistoPtWeight =
new TH1F(
"histoWeight",
"histoWeight",500,0.,50.);
1721 Float_t binc[500]={ 1.977386, 1.092380, 0.982069, 0.990772, 1.031869, 1.075578, 1.121814, 1.160738, 1.194926, 1.223790, 1.248790, 1.265487,
1722 1.280118, 1.292664, 1.302578, 1.308750, 1.316914, 1.321336, 1.325862, 1.335865, 1.330973, 1.338854, 1.347197, 1.355202,
1723 1.345868, 1.306835, 1.217713, 1.150661, 1.082328, 1.016336, 0.961361, 0.909377, 0.859229, 0.808615, 0.770923, 0.726400,
1724 0.690444, 0.656639, 0.626977, 0.601282, 0.565640, 0.541549, 0.517613, 0.492610, 0.467891, 0.450866, 0.427611, 0.405115,
1725 0.393432, 0.367097, 0.355256, 0.344176, 0.327230, 0.308159, 0.299667, 0.288000, 0.278949, 0.263341, 0.250445, 0.243064,
1726 0.232859, 0.221800, 0.214465, 0.207126, 0.197129, 0.188575, 0.186439, 0.179715, 0.170882, 0.164423, 0.158682, 0.154019,
1727 0.150277, 0.144272, 0.137206, 0.135669, 0.128931, 0.125974, 0.121932, 0.119566, 0.113806, 0.112343, 0.107325, 0.106804,
1728 0.104220, 0.098339, 0.095757, 0.095992, 0.092098, 0.089896, 0.087719, 0.086209, 0.085378, 0.082050, 0.078781, 0.078904,
1729 0.077688, 0.077198, 0.075539, 0.071257, 0.071342, 0.070415, 0.069445, 0.067272, 0.064635, 0.065670, 0.063817, 0.062011,
1730 0.060226, 0.058354, 0.058203, 0.057580, 0.055477, 0.055900, 0.054993, 0.053452, 0.052578, 0.051701, 0.050199, 0.049844,
1731 0.047829, 0.047402, 0.046873, 0.044984, 0.045633, 0.044068, 0.043317, 0.042371, 0.042091, 0.042391, 0.041007, 0.039471,
1732 0.038575, 0.038065, 0.039097, 0.037241, 0.035288, 0.035440, 0.035264, 0.033790, 0.033902, 0.033853, 0.032486, 0.031943,
1733 0.031140, 0.030939, 0.030288, 0.029462, 0.029969, 0.028097, 0.028703, 0.028627, 0.027646, 0.027564, 0.026505, 0.026356,
1734 0.025599, 0.026124, 0.025300, 0.024600, 0.024092, 0.024186, 0.023315, 0.023520, 0.023087, 0.022226, 0.022345, 0.021455,
1735 0.020492, 0.021519, 0.020416, 0.020084, 0.020114, 0.019717, 0.019508, 0.018334, 0.018877, 0.018658, 0.018210, 0.017702,
1736 0.018155, 0.017342, 0.016846, 0.017155, 0.016306, 0.016247, 0.016075, 0.015419, 0.015835, 0.016264, 0.015473, 0.015212,
1737 0.014994, 0.014338, 0.015062, 0.014039, 0.014740, 0.014412, 0.014111, 0.013556, 0.013372, 0.012951, 0.012977, 0.013086,
1738 0.012727, 0.012118, 0.012176, 0.012056, 0.012350, 0.011744, 0.011840, 0.011740, 0.012028, 0.011028, 0.010922, 0.011132,
1739 0.011492, 0.010939, 0.011151, 0.010446, 0.010507, 0.009898, 0.010788, 0.010553, 0.010305, 0.010137, 0.009395, 0.009406,
1740 0.009338, 0.009635, 0.009477, 0.009497, 0.008915, 0.009116, 0.009080, 0.009294, 0.008765, 0.008222, 0.008483, 0.008666,
1741 0.008659, 0.008378, 0.008100, 0.008121, 0.008041, 0.007868, 0.008032, 0.008100, 0.008079, 0.007581, 0.007421, 0.007118,
1742 0.007416, 0.007828, 0.007152, 0.007088, 0.007122, 0.007133, 0.006934, 0.007103, 0.006555, 0.007113, 0.006829, 0.006883,
1743 0.006288, 0.006291, 0.006312, 0.006090, 0.006457, 0.006410, 0.006449, 0.005728, 0.006082, 0.006032, 0.005872, 0.005989,
1744 0.005934, 0.005962, 0.005698, 0.005851, 0.005615, 0.005442, 0.005838, 0.005589, 0.005422, 0.005286, 0.005219, 0.005153,
1745 0.005222, 0.005520, 0.004971, 0.005049, 0.005134, 0.004912, 0.004870, 0.004990, 0.005039, 0.004782, 0.004498, 0.004962,
1746 0.004755, 0.004995, 0.004437, 0.004686, 0.004753, 0.004703, 0.004486, 0.004614, 0.004152, 0.004107, 0.004131, 0.004349,
1747 0.004254, 0.004112, 0.004103, 0.004045, 0.004095, 0.004148, 0.004417, 0.004104, 0.003765, 0.003868, 0.004080, 0.003937,
1748 0.004091, 0.003892, 0.003849, 0.003681, 0.003834, 0.003530, 0.003934, 0.003552, 0.003714, 0.003282, 0.003898, 0.003909,
1749 0.003685, 0.003800, 0.003469, 0.003311, 0.003483, 0.003242, 0.003083, 0.003145, 0.003158, 0.003073, 0.003331, 0.003388,
1750 0.003156, 0.002935, 0.003256, 0.003261, 0.002972, 0.002966, 0.003312, 0.003253, 0.003122, 0.003075, 0.002978, 0.003029,
1751 0.002883, 0.002793, 0.003039, 0.002905, 0.002511, 0.002779, 0.002964, 0.002755, 0.002747, 0.002863, 0.002777, 0.002514,
1752 0.002775, 0.002845, 0.002427, 0.002540, 0.002406, 0.002490, 0.002592, 0.002457, 0.002560, 0.002223, 0.002582, 0.002725,
1753 0.002456, 0.002258, 0.002419, 0.002630, 0.002263, 0.002158, 0.002518, 0.002364, 0.002034, 0.002077, 0.002132, 0.002602,
1754 0.002309, 0.002357, 0.002333, 0.002194, 0.002213, 0.002270, 0.002202, 0.002308, 0.002042, 0.002417, 0.002220, 0.002359,
1755 0.002305, 0.002082, 0.002036, 0.002075, 0.002176, 0.002291, 0.002174, 0.002057, 0.001983, 0.001972, 0.001997, 0.001875,
1756 0.001958, 0.001838, 0.001895, 0.001868, 0.001996, 0.001807, 0.001765, 0.002055, 0.001933, 0.001797, 0.001908, 0.001816,
1757 0.001790, 0.001774, 0.001731, 0.002141, 0.001511, 0.001603, 0.002065, 0.001799, 0.001736, 0.001954, 0.001836, 0.001729,
1758 0.001817, 0.001671, 0.001766, 0.001652, 0.001706, 0.001519, 0.001649, 0.001518, 0.001505, 0.001552, 0.001531, 0.001730,
1759 0.001717, 0.001442, 0.001626, 0.001668, 0.001591, 0.001509, 0.001313, 0.001555, 0.001393, 0.001587, 0.001363, 0.001360,
1760 0.001785, 0.001410, 0.001363, 0.001278, 0.001427, 0.001407, 0.001102, 0.001358, 0.001408, 0.001509, 0.001399, 0.001411,
1761 0.001391, 0.001284, 0.001641, 0.001205, 0.001172, 0.001277, 0.001163, 0.001321, 0.001243, 0.001284, 0.001353, 0.001219,
1762 0.001338, 0.001204, 0.001206, 0.001250, 0.001127, 0.001366, 0.001240, 0.001124 };
1764 for(
Int_t i=0; i<500; i++){
1775 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,30.);
1776 fFuncWeight->SetParameters(2.94999e+00,3.47032e+00,2.81278e+00,2.5,1.93370e-02,3.86865e+00,-1.54113e-01,8.86944e-02,2.56267e-02);
1785 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,40.);
1786 fFuncWeight->SetParameters(2.41522e+01,4.92146e+00,6.72495e+00,2.5,6.15361e-03,4.78995e+00,-4.29135e-01,3.99421e-01,-1.57220e-02);
1795 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x+[9])",0.15,50.);
1796 fFuncWeight->SetParameters(1.31497e+01,3.30503e+00,3.45594e+00,2.5,2.28642e-02,1.42372e+00,2.32892e-04,5.21986e-02,-2.14236e-01,3.86200e+00);
1805 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x+[9])",0.15,50.);
1806 fFuncWeight->SetParameters(6.54519e+00,2.74007e+00,2.48325e+00,2.5,1.61113e-01,-5.32546e-01,-3.75916e-04,2.38189e-01,-2.17561e-01,2.35975e+00);
1815 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x+[9])",0.15,50.);
1816 fFuncWeight->SetParameters(1.85862e+01,2.48171e+00,3.39356e+00,2.5,1.70426e-02,2.28453e+00,-4.57749e-02,5.84585e-02,-3.19719e-01,4.16789e+00);
1825 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,40.);
1826 fFuncWeight->SetParameters(2.77730e+01,4.78942e+00,7.45378e+00,2.5,9.86255e-02,2.30120e+00,-4.16435e-01,3.43770e-01,-2.29380e-02);
1835 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x+[9])",0.15,40.);
1836 fFuncWeight->SetParameters(1.34412e+01,3.20068e+00,5.14481e+00,2.5,7.59405e-04,7.51821e+00,-3.93811e-01,2.16849e-02,-3.37768e-02,2.40308e+00);
1846 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.15,20.);
1847 fFuncWeight->SetParameters(5.94428e+01,1.63585e+01,9.65555e+00,6.71944e+00,8.88338e-02,2.40477e+00,-4.88649e-02,-6.78599e-01,-2.10951e-01);
1856 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",0.2,20.);
1857 fFuncWeight->SetParameters(2.70821e+03,2.98122e+00,8.67776e+01,1.16611e+00,1.17276e-02,5.41670e+00,6.01099e-02,-2.04524e+00,6.69208e-02);
1867 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",1.,20.);
1868 fFuncWeight->SetParameters(2.11879e+02,3.73290e+00,2.01235e+01,1.41508e+00,1.06268e-01,1.86285e+00,-4.52956e-02,-9.90631e-01,-1.31615e+00);
1878 fFuncWeight=
new TF1(
"funcWeight",
"([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x)",1.,20.);
1879 fFuncWeight->SetParameters(2.84268e+02,2.18850e+01,2.36298e+01,7.46144e+00,1.69747e-01,1.66993e+00,-5.54726e-02,-1.53869e+00,-1.18404e+00);
1890 fFuncWeight=
new TF1(
"funcWeight",
"(x<28.5)*(([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x))+(x>=28.5)*0.140023",0.15,40);
1891 fFuncWeight->SetParameters(4.66092e+01, 4.27321e+01, 4.46858e+01, 1.67788e+00, -2.88457e-02, 4.40656e+00, -7.31064e-01, 2.96431e+00, -2.79976e-01);
1902 fFuncWeight=
new TF1(
"funcWeight",
"(x<10.71)*(([0]*x)/TMath::Power([2],(1+TMath::Power([3],x/[1])))+[4]*TMath::Exp([5]+[6]*x)+[7]*TMath::Exp([8]*x))+(x>=10.71)*2.192",0.15,40);
1903 fFuncWeight->SetParameters(-8.28294e+04,1.04367e+00,1.43041e+02,1.40041e+00,-7.23198e-03,4.71629e+00,-3.15545e+00,2.36495e+00,-7.08928e-03);
1927 Double_t func1[4] = {0.322643,2.96275,2.30301,2.5};
1928 Double_t func2[4] = {0.36609,1.94635,1.40463,2.5};
1933 AliDebug(2,Form(
"pt = %f, FONLL = %f, Pythia = %f, ratio = %f",pt,dndpt_func1,dndpt_func2,dndpt_func1/dndpt_func2));
1934 return dndpt_func1/dndpt_func2;
1944 Double_t denom = TMath::Power((pt/par[1]), par[3] );
1945 Double_t dNdpt = par[0]*pt/TMath::Power(1.+denom, par[2]);
1960 if( (bin2>0) && (bin2<=histoNbins) ) {
1963 if(bin2==1) bin1=bin2+2;
1964 if(bin2==histoNbins) bin3=bin2-2;
1971 Double_t a=( (y_3-y_2)*(x_1-x_2) - (y_1-y_2)*(x_3-x_2) )/( (x_3*x_3-x_2*x_2)*(x_1-x_2) - (x_1*x_1-x_2*x_2)*(x_3-x_2) );
1972 Double_t b=((y_1-y_2)-a*(x_1*x_1-x_2*x_2))/(x_1-x_2);
1974 weight = a*pt*pt+b*pt+
c;
1985 if(runnumber>146824 || runnumber<146803)
return 1.0;
1987 Double_t func1[3] = {1.0, -0.5, 6.5 };
1988 Double_t func2[3] = {1.0, -0.5, 5.5 };
1993 return dzFunc1/dzFunc2;
2004 Double_t value = par[0]/TMath::Sqrt(2.*TMath::Pi())/par[2]*TMath::Exp(-(z-par[1])*(z-par[1])/2./par[2]/par[2]);
2013 if(nch<=0)
return 0.;
2017 Double_t weight = pMC>0 ? pMeas/pMC : 0.;
2030 Double_t nchbins[82]={0.50,1.50,2.50,3.50,4.50,5.50,6.50,7.50,8.50,9.50,
2031 10.50,11.50,12.50,13.50,14.50,15.50,16.50,17.50,18.50,19.50,
2032 20.50,21.50,22.50,23.50,24.50,25.50,26.50,27.50,28.50,29.50,
2033 30.50,31.50,32.50,33.50,34.50,35.50,36.50,37.50,38.50,39.50,
2034 40.50,41.50,42.50,43.50,44.50,45.50,46.50,47.50,48.50,49.50,
2035 50.50,51.50,52.50,53.50,54.50,55.50,56.50,57.50,58.50,59.50,
2036 60.50,62.50,64.50,66.50,68.50,70.50,72.50,74.50,76.50,78.50,
2037 80.50,82.50,84.50,86.50,88.50,90.50,92.50,94.50,96.50,98.50,
2039 Double_t pch[81]={0.062011,0.072943,0.070771,0.067245,0.062834,0.057383,0.051499,0.04591,0.041109,0.036954,
2040 0.03359,0.030729,0.028539,0.026575,0.024653,0.0229,0.021325,0.019768,0.018561,0.017187,
2041 0.01604,0.014836,0.013726,0.012576,0.011481,0.010393,0.009502,0.008776,0.008024,0.007452,
2042 0.006851,0.006428,0.00594,0.005515,0.005102,0.00469,0.004162,0.003811,0.003389,0.003071,
2043 0.002708,0.002422,0.002184,0.001968,0.00186,0.00165,0.001577,0.001387,0.001254,0.001118,
2044 0.001037,0.000942,0.000823,0.000736,0.000654,0.000579,0.000512,0.00049,0.00045,0.000355,
2045 0.000296,0.000265,0.000193,0.00016,0.000126,0.0000851, 0.0000676,0.0000537,0.0000426, 0.0000338,
2046 0.0000268,0.0000213,0.0000166,0.0000133,0.0000106,0.00000837,0.00000662, 0.00000524,0.00000414, 0.00000327,
2051 for(
Int_t i=0; i<81; i++){
2061 if(recoAnalysisCuts > 0){
2062 Int_t isKKpi=recoAnalysisCuts&1;
2063 Int_t ispiKK=recoAnalysisCuts&2;
2064 Int_t isPhiKKpi=recoAnalysisCuts&4;
2065 Int_t isPhipiKK=recoAnalysisCuts&8;
2066 Int_t isK0starKKpi=recoAnalysisCuts&16;
2067 Int_t isK0starpiKK=recoAnalysisCuts&32;
2069 if(isKKpi && isPhiKKpi) keep=kTRUE;
2070 if(ispiKK && isPhipiKK) keep=kTRUE;
2073 if(isKKpi && isK0starKKpi) keep=kTRUE;
2074 if(ispiKK && isK0starpiKK) keep=kTRUE;
2087 if (recoAnalysisCuts > 0){
2089 Int_t isK0Sp = recoAnalysisCuts&1;
2090 Int_t isLambdaBarpi = recoAnalysisCuts&2;
2091 Int_t isLambdapi = recoAnalysisCuts&4;
2094 if(isK0Sp) keep=kTRUE;
2097 if(isLambdaBarpi) keep=kTRUE;
2100 if(isLambdapi) keep=kTRUE;
2103 if (isK0Sp || isLambdaBarpi || isLambdapi) keep=kTRUE;
2116 Int_t runNo =
event->GetRunNumber();
2121 if (runNo>195343 && runNo<195484) period = 0;
2122 if (runNo>195528 && runNo<195678) period = 1;
2123 if (period<0 || period>1)
return 0;
2125 if(runNo>114930 && runNo<117223) period = 0;
2126 if(runNo>119158 && runNo<120830) period = 1;
2127 if(runNo>122373 && runNo<126438) period = 2;
2128 if(runNo>127711 && runNo<130841) period = 3;
2129 if(period<0 || period>3)
return 0;
void SetCentralityValue(Float_t centValue)
virtual AliESDtrackCuts * GetTrackCutsV0daughters() const
void SetFillFromGenerated(Bool_t flag)
Double_t GetPtWeightFromHistogram(Float_t pt)
void SetPtWeightsFromFONLL5andLBToverLHC16i2a()
void Terminate(Option_t *)
Bool_t fUseAdditionalCuts
flag for pPb data (used for multiplicity corrections)
Bool_t fUseZWeight
flag to decide to use a flat pt shape
AliCFTaskVertexingHF & operator=(const AliCFTaskVertexingHF &c)
Bool_t fFillFromGenerated
decay channel to configure the task
Double_t GetWeight(Float_t pt)
virtual AliESDtrackCuts * GetTrackCutsSoftPi() const
Int_t fCountAcc
MC particle found in limited acceptance that doesn't satisfy acceptance cuts.
Int_t fCountRefit
Reco particle found that satisfy vertex constrained.
void SetPtWeightsFromFONLL5overLHC16i2abc()
Int_t MCcquarkCounting(AliAODMCParticle *mcPart) const
void SetPtWeightsFromFONLL7overLHC12a12()
Class for HF corrections as a function of many variables and steps For D* and other cascades...
Int_t IsEventSelectedInCentrality(AliVEvent *event)
Int_t fCountReco
Reco particle found that satisfy kTPCrefit and kITSrefit.
Bool_t HasSelectionBit(Int_t i) const
UInt_t fPDGcode
flag to use selection bit
Class for HF corrections as a function of many variables and step.
Bool_t FillRecoContainer(Double_t *containerInput)
void UnsetOwnPrimaryVtx()
Int_t fCountGenLimAcc
MC particle found.
Bool_t fIsPPbData
flag for pp data (not checking centrality)
TH1F * fHistoPtWeight
user-defined function to be used to calculate weights
Bool_t fUseSelectionBit
Lc->V0+bachelor decay option (generation level)
AliCFTaskVertexingHF()
multiplicity estimators
Int_t fCountRecoITSClusters
Reco particle found that satisfy cuts in requested acceptance.
Int_t fNvar
flag to use directly the ratio of the distributions (fHistoMCNch) instead of computing it ...
void SetPtWeightsFromFONLL5overLHC10f6a()
void SetRejectCandidateIfNotFromQuark(Bool_t opt)
virtual Bool_t SetLabelArray()
Int_t fGenLctoV0bachelorOption
Lc->V0+bachelor decay option (selection level)
Double_t GetZWeight(Float_t z, Int_t runnumber)
void SetPtWeightsFromFONLL7overLHC12a12bis()
void SetPtWeightsFromFONLL276andBAMPSoverLHC12a17b()
Bool_t FillRecoCand(AliVEvent *event, AliAODRecoDecayHF3Prong *rd3)
Int_t fCountGenLimAccNoAcc
MC particle found in limited acceptance.
Double_t dNdptFit(Float_t pt, Double_t *par)
void SetPtWeightsFromFONLL5anddataoverLHC16i2a()
TString fPartName
number of variables for the container
Double_t GetMaxVtxZ() const
Bool_t FillRecoCasc(AliVEvent *event, AliAODRecoCascadeHF *rc, Bool_t isDStar, Bool_t recoSecVtx=kFALSE)
Double_t fRefMult
TProfile with mult vas. Z per period.
void SetPtWeightsFromFONLL276overLHC12a17a()
Bool_t ProcessDs(Int_t returnCodeDs) const
Float_t fCutOnMomConservation
Skip filling the unneed steps for most of the analyses to save disk space.
void CreateMeasuredNchHisto()
Bool_t fZvtxCorrectedNtrkEstimator
refrence multiplcity (period b)
TList * fListProfiles
response matrix for unfolding
void SetPtWeightsFromFONLL5overLHC16i6a()
Class for cuts on AOD reconstructed D+->Kpipi.
void SetPtWeightsFromFONLL8overLHC15l2a2()
Bool_t fAcceptanceUnf
flag to select D0 origins. 0 Only from charm 1 only from beauty 2 both from charm and beauty ...
static Int_t GetNumberOfTrackletsInEtaRange(AliAODEvent *ev, Double_t mineta, Double_t maxeta)
Bool_t fUseTrackletsWeight
flag to decide whether to use Ncharged weights != 1 when filling the container or not ...
Int_t fCountVertex
MC particle found that satisfy acceptance cuts.
void SetMinCentrality(Float_t minCentrality=0.)
Int_t GetIsFilled() const
fast configuration, only a subset of variables
Double_t DodzFit(Float_t z, Double_t *par)
Bool_t fUseCascadeTaskForLctoV0bachelor
these are the pre-selection cuts for the TMVA
void SetPtWeightsFromFONLL13overLHC17c3a12()
Double_t GetNchWeight(Int_t nch)
UShort_t fOriginDselection
flag to indicate whether data container should be filled with generated values also for reconstructed...
Bool_t fUseFlatPtWeight
weight used to fill the container
AliAODVertex * GetOwnPrimaryVtx() const
Char_t fSign
daughter in fin state
slow configuration, all variables
AliESDtrackCuts * GetTrackCuts() const
Float_t GetCentrality(AliAODEvent *aodEvent)
AliRDHFCuts * fCuts
flag for unfolding before or after cuts.
Int_t fFakeSelection
flag to switch off the centrality selection
void SetFakeSelection(Int_t fakeSel)
TF1 * fFuncWeight
configuration (slow / fast) of the CF –> different variables will be allocated (all / reduced number)...
void SetPtWeightsFromDataPbPb276overLHC12a17a()
UInt_t fResonantDecay
histogram with Nch distribution from MC production
Bool_t fCentralitySelection
flag to decide wheter to keep D0 only (0), D0bar only (1), or both D0 and D0bar (2) ...
Int_t fCountRecoAcc
Reco particle found that satisfy cuts.
Bool_t Data(TH1F *h, Double_t *rangefit, Bool_t writefit, Double_t &sgn, Double_t &errsgn, Double_t &bkg, Double_t &errbkg, Double_t &sgnf, Double_t &errsgnf, Double_t &sigmafit, Int_t &status)
Int_t fGenDsOption
Ds decay option (selection level)
void SetMaxCentrality(Float_t maxCentrality=100.)
void SetOwnPrimaryVtx(const AliAODVertex *vtx)
void SetRecoPrimVertex(Double_t zPrimVertex)
Bool_t fIsPPData
flag to use the z-vtx corrected (if not use uncorrected) multiplicity estimator
AliCFManager * fCFManager
virtual ~AliCFTaskVertexingHF()
void SetMCCandidateParam(Int_t label)
void SetPtWeightsFromFONLL7overLHC11b2Lc()
Bool_t CheckMCPartFamily(AliAODMCParticle *, TClonesArray *) const
virtual Bool_t SetRecoCandidateParam(AliAODRecoDecayHF *)
static Double_t GetCorrectedNtracklets(TProfile *estimatorAvg, Double_t uncorrectedNacc, Double_t vtxZ, Double_t refMult)
Int_t fConfiguration
Ds decay option (generation level)
void SetPtWeightsFromFONLL5andDplusdataoverLHC16i2a()
Int_t CheckReflexion(Char_t isSign)
Bool_t IsEventSelected(AliVEvent *event)
Int_t fLctoV0bachelorOption
resonant deacy channel to be used if the CF should be run on resonant channels only ...
Bool_t fRejectIfNoQuark
selection flag for fakes tracks
void SetUsePID(Bool_t flag=kTRUE)
void SetPtWeightsFromFONLL5andBAMPSoverLHC16i2abc()
void SetPtWeightsFromFONLL276overLHC12a17b()
TH1I * fHistEventsProcessed
pointer to the CF manager
Bool_t fFillMinimumSteps
flag to define which task to use for Lc –> K0S+p
virtual void PrintAll() const
TString fDauNames
D meson name.
void SetPtWeightsFromFONLL7overLHC10f7aLc()
Bool_t RecoAcceptStep(AliESDtrackCuts **trackCuts) const
void SetPtWeightsFromFONLL7overLHC13e2fix()
void SetPtWeightsFromFONLL5andTAMUoverLHC16i2abc()
Int_t fCountRecoPID
Reco particle found that satisfy cuts in PPR.
Bool_t fUseMultRatioAsWeight
flag to decide whether to use Ncharged weights != 1 when filling the container or not ...
static Int_t GetGeneratedPhysicalPrimariesInEtaRange(TClonesArray *arrayMC, Double_t mineta, Double_t maxeta)
void SetPtWeightsFromFONLL5overLHC13d3()
Bool_t IsSelected(TObject *obj)
Int_t fEvents
Reco PID step.
Bool_t MCRefitStep(AliAODEvent *aodEvent, AliESDtrackCuts **trackCuts) const
Bool_t fUseCutsForTMVA
flag to use additional cuts needed for Lc –> K0S + p, TMVA
Int_t fDecayChannel
n. of events
Bool_t GetIsUsePID() const
void SetPtWeightsFromFONLL5overLHC13d3Lc()
void UserExec(Option_t *option)
Int_t fCountRecoPPR
Reco particle found that satisfy cuts in n. of ITS clusters.
Bool_t fUseMCVertex
flag to remove events not geenrated with PYTHIA
void SetTriggerClass(TString trclass0, TString trclass1="")
Int_t fDsOption
flag to use MC vertex (useful when runnign in pp)
Bool_t fUseNchWeight
flag to decide whether to use z-vtx weights != 1 when filling the container or not ...
Class to compute variables for correction framework // for 3-body decays of D mesons (D+...
virtual Bool_t IsInFiducialAcceptance(Double_t, Double_t) const
void SetPtWeightsFromFONLL7overLHC10f6a()
TProfile * GetEstimatorHistogram(const AliVEvent *event)
void SetConfiguration(Int_t configuration)
void SetMultiplicity(Double_t multiplicity)
void SetMCPrimaryVertex(Double_t zMCVertex)
Int_t fMultiplicityEstimator
PDG code.
void UserCreateOutputObjects()
ANALYSIS FRAMEWORK STUFF to loop on data and fill output objects.
TH1F * fHistoMCNch
histogram with measured Nch distribution (pp 7 TeV)
TProfile * fMultEstimatorAvg[4]
Definition of the multiplicity estimator: kNtrk10=0, kNtrk10to16=1, kVZERO=2.
void SetPtWeightsFromFONLL276overLHC10f6a()
Double_t fWeight
flag to decide whether to use pt-weights != 1 when filling the container or not
TH1F * fHistoMeasNch
user-defined histogram to calculate the Pt weights
Bool_t ProcessLctoV0Bachelor(Int_t returnCodeDs) const
Class for HF corrections as a function of many variables and step.
TList * OpenFile(const char *fname)