@@ -205,6 +205,7 @@ struct lambdapolsp {
205205 ConfigurableAxis axisRadius{" axisRadius" , {200 , 0 , 100 }, " radius axis" };
206206 ConfigurableAxis axisDca{" axisDca" , {100 , -5 , 5 }, " dca axis" };
207207 ConfigurableAxis axisLT{" axisLT" , {50 , 0 , 50 }, " lifetime axis" };
208+ ConfigurableAxis axisCR{" axisCR" , {40 , 0 , 200 }, " CR axis" };
208209 Configurable<bool > filldist{" filldist" , true , " fill topo distr" };
209210 } distGrp;
210211
@@ -406,6 +407,7 @@ struct lambdapolsp {
406407 histos.add (" hdcaneglambda" , " hdcaneglambda" , HistType::kTH1D , {distGrp.axisDca }, true );
407408 histos.add (" hdcaposantilambda" , " hdcaposantilambda" , HistType::kTH1D , {distGrp.axisDca }, true );
408409 histos.add (" hdcanegantilambda" , " hdcanegantilambda" , HistType::kTH1D , {distGrp.axisDca }, true );
410+ histos.add (" htpcCR" , " htpcCR" , HistType::kTH1D , {distGrp.axisCR }, true );
409411 }
410412
411413 ccdb->setURL (cfgCcdbParam.cfgURL );
@@ -1165,11 +1167,13 @@ struct lambdapolsp {
11651167 }
11661168 }
11671169 } else {
1170+
11681171 if (distGrp.filldist ) {
11691172 histos.fill (HIST (" hcosine" ), v0.v0cosPA ());
11701173 histos.fill (HIST (" hdcabwv0daugh" ), v0.dcaV0daughters ());
11711174 histos.fill (HIST (" hlifetime" ), TMath::Abs (v0.distovertotmom (collision.posX (), collision.posY (), collision.posZ ()) * massLambda));
11721175 histos.fill (HIST (" hradius" ), v0.v0radius ());
1176+ histos.fill (HIST (" htpcCR" ), postrack.tpcNClsCrossedRows ());
11731177 }
11741178
11751179 if (LambdaTag) {
@@ -1223,6 +1227,7 @@ struct lambdapolsp {
12231227 else if (centestim == 3 )
12241228 centrality = collision.centFV0A ();
12251229
1230+ auto runnumber = collision.runNumber ();
12261231 // auto centrality = collision.centFT0C();
12271232 if (!collision.triggereventsp ()) { // provided by StraZDCSP
12281233 return ;
@@ -1257,6 +1262,16 @@ struct lambdapolsp {
12571262 accprofileAL = ccdb->getForTimeStamp<TProfile2D>(ConfAccPathAL.value, bc.timestamp());
12581263 }
12591264 */
1265+ auto timestamps = ccdb->getRunDuration (runnumber, true ); // / fatalise if timestamps are not found
1266+ int64_t sorTimestamp = timestamps.first ; // timestamp of the SOR/SOX/STF in ms
1267+ int64_t eorTimestamp = timestamps.second ; // timestamp of the EOR/EOX/ETF in ms
1268+ int64_t ts = eorTimestamp / 2 + sorTimestamp / 2 ; // timestamp of the middle of the run
1269+
1270+ if (useAccCorr) {
1271+ accprofileL = ccdb->getForTimeStamp <TProfile2D>(ConfAccPathL.value , ts);
1272+ accprofileAL = ccdb->getForTimeStamp <TProfile2D>(ConfAccPathAL.value , ts);
1273+ }
1274+
12601275 // ___________________________________________________________________________________________________
12611276 // retrieve further info provided by StraZDCSP
12621277 auto qxZDCA = collision.qxZDCA ();
@@ -1430,15 +1445,21 @@ struct lambdapolsp {
14301445 if (analyzeLambda && LambdaTag) {
14311446 Lambda = Proton + AntiPion;
14321447 tagb = 0 ;
1433- double acvalue = 1.0 ;
1448+ int binx = accprofileL->GetXaxis ()->FindBin (v0.eta ());
1449+ int biny = accprofileL->GetYaxis ()->FindBin (v0.pt ());
1450+ double acvalue = accprofileL->GetBinContent (binx, biny);
1451+ // double acvalue = 1.0;
14341452 fillHistograms (taga, tagb, Lambda, Proton, psiZDCC, psiZDCA, psiZDC, centrality, v0.mLambda (), v0.pt (), v0.eta (), acvalue, 1.0 );
14351453 }
14361454
14371455 tagb = aLambdaTag;
14381456 if (analyzeLambda && aLambdaTag) {
14391457 AntiLambda = AntiProton + Pion;
14401458 taga = 0 ;
1441- double acvalue = 1.0 ;
1459+ int binx = accprofileAL->GetXaxis ()->FindBin (v0.eta ());
1460+ int biny = accprofileAL->GetYaxis ()->FindBin (v0.pt ());
1461+ double acvalue = accprofileAL->GetBinContent (binx, biny);
1462+ // double acvalue = 1.0;
14421463 fillHistograms (taga, tagb, AntiLambda, AntiProton, psiZDCC, psiZDCA, psiZDC, centrality, v0.mAntiLambda (), v0.pt (), v0.eta (), acvalue, 1.0 );
14431464 }
14441465 }
0 commit comments