Skip to content

Commit f6b70ee

Browse files
authored
Add files via upload
1 parent 175098b commit f6b70ee

1 file changed

Lines changed: 28 additions & 15 deletions

File tree

‎PWGLF/TableProducer/Strangeness/lambdaspincorrelation.cxx‎

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -95,21 +95,14 @@ struct lambdaspincorrelation {
9595
Configurable<double> cMaxV0DCA{"cMaxV0DCA", 1.2, "Maximum V0 DCA to PV"};
9696
Configurable<float> cMinV0DCAPr{"cMinV0DCAPr", 0.05, "Minimum V0 daughters DCA to PV for Pr"};
9797
Configurable<float> cMinV0DCAPi{"cMinV0DCAPi", 0.05, "Minimum V0 daughters DCA to PV for Pi"};
98+
Configurable<float> cMaxV0LifeTime{"cMaxV0LifeTime", 50, "Maximum V0 life time"};
9899

99100
// config for V0 daughters
100101
Configurable<float> confDaughEta{"confDaughEta", 0.8f, "V0 Daugh sel: max eta"};
101102
Configurable<float> cfgDaughPrPt{"cfgDaughPrPt", 0.2, "minimum daughter proton pt"};
102103
Configurable<float> cfgDaughPiPt{"cfgDaughPiPt", 0.2, "minimum daughter pion pt"};
103104
Configurable<float> confDaughTPCnclsMin{"confDaughTPCnclsMin", 50.f, "V0 Daugh sel: Min. nCls TPC"};
104-
105-
struct : ConfigurableGroup {
106-
std::string prefix = "v0Configuration";
107-
Configurable<int> cfgDaughTPCCrossedRows{"cfgDaughTPCCrossedRows", 70, "Min. TPC crossed rows for V0 daughters"};
108-
109-
Configurable<float> cMaxV0LifeTime{"cMaxV0LifeTime", 30, "Maximum V0 life time"};
110-
Configurable<float> confDaughPIDCuts{"confDaughPIDCuts", 4, "PID selections for Lambda daughters"};
111-
112-
} v0Configurations;
105+
Configurable<float> confDaughPIDCuts{"confDaughPIDCuts", 3, "PID selections for Lambda daughters"};
113106

114107
Configurable<int> iMNbins{"iMNbins", 50, "Number of bins in invariant mass"};
115108
Configurable<float> lbinIM{"lbinIM", 1.09, "lower bin value in IM histograms"};
@@ -156,10 +149,9 @@ struct lambdaspincorrelation {
156149
if (tranRad > confV0TranRadV0Max) {
157150
return false;
158151
}
159-
if (std::abs(ctauLambda) > v0Configurations.cMaxV0LifeTime) {
152+
if (std::abs(ctauLambda) > cMaxV0LifeTime) {
160153
return false;
161154
}
162-
163155
// if (std::abs(candidate.yLambda()) > confV0Rap) {
164156
// return false;
165157
// }
@@ -170,9 +162,10 @@ struct lambdaspincorrelation {
170162
bool isSelectedV0Daughter(V0 const& candidate, T const& track, int pid)
171163
{
172164
const auto tpcNClsF = track.tpcNClsFound();
165+
const auto ncr = 70;
173166
const auto ncrfc = 0.8;
174167

175-
if (track.tpcNClsCrossedRows() < v0Configurations.cfgDaughTPCCrossedRows) {
168+
if (track.tpcNClsCrossedRows() < ncr) {
176169
return false;
177170
}
178171
if (tpcNClsF < confDaughTPCnclsMin) {
@@ -182,10 +175,10 @@ struct lambdaspincorrelation {
182175
return false;
183176
}
184177

185-
if (pid == 0 && std::abs(track.tpcNSigmaPr()) > v0Configurations.confDaughPIDCuts) {
178+
if (pid == 0 && std::abs(track.tpcNSigmaPr()) > confDaughPIDCuts) {
186179
return false;
187180
}
188-
if (pid == 1 && std::abs(track.tpcNSigmaPi()) > v0Configurations.confDaughPIDCuts) {
181+
if (pid == 1 && std::abs(track.tpcNSigmaPi()) > confDaughPIDCuts) {
189182
return false;
190183
}
191184
if (pid == 0 && (candidate.positivept() < cfgDaughPrPt || candidate.negativept() < cfgDaughPiPt)) {
@@ -306,6 +299,13 @@ struct lambdaspincorrelation {
306299
std::vector<int> negativeIndex = {};
307300
std::vector<float> dcaBetweenDaughter = {};
308301
std::vector<float> dcaV0ToPV = {};
302+
std::vector<float> tpcPosNClsCrossedRows = {};
303+
std::vector<float> tpcNegNClsCrossedRows = {};
304+
std::vector<float> ctau = {};
305+
std::vector<float> tpcNsigmaPos = {};
306+
std::vector<float> tpcNsigmaNeg = {};
307+
std::vector<float> mK0Short = {};
308+
309309
int numbV0 = 0;
310310
// LOGF(info, "event collisions: (%d)", collision.index());
311311
auto centrality = collision.centFT0C();
@@ -357,13 +357,26 @@ struct lambdaspincorrelation {
357357
if (aLambdaTag) {
358358
histos.fill(HIST("hV0Info"), 3.5);
359359
}
360+
361+
float ctauLambda = v0.distovertotmom(collision.posX(), collision.posY(), collision.posZ()) * (o2::constants::physics::MassLambda);
362+
360363
// LOGF(info, "v0 index2: (%d)", v0.index());
361364
auto postrack1 = v0.template posTrack_as<AllTrackCandidates>();
362365
auto negtrack1 = v0.template negTrack_as<AllTrackCandidates>();
363366
positiveIndex.push_back(postrack1.globalIndex());
364367
negativeIndex.push_back(negtrack1.globalIndex());
365368
v0Cospa.push_back(v0.v0cosPA());
366369
dcaV0ToPV.push_back(std::abs(v0.dcav0topv()));
370+
371+
tpcPosNClsCrossedRows.push_back(postrack1.tpcNClsCrossedRows());
372+
tpcNegNClsCrossedRows.push_back(negtrack1.tpcNClsCrossedRows());
373+
ctau.push_back(ctauLambda);
374+
375+
tpcNsigmaPos.push_back(std::abs(postrack1.tpcNSigmaPr()));
376+
tpcNsigmaNeg.push_back(std::abs(negtrack1.tpcNSigmaPi()));
377+
378+
mK0Short.push_back(v0.mK0Short());
379+
367380
v0Radius.push_back(v0.v0radius());
368381
dcaPositive.push_back(std::abs(v0.dcapostopv()));
369382
dcaNegative.push_back(std::abs(v0.dcanegtopv()));
@@ -400,7 +413,7 @@ struct lambdaspincorrelation {
400413
lambdaDummy = lambdaMother.at(i5);
401414
protonDummy = protonDaughter.at(i5);
402415
pionDummy = pionDaughter.at(i5);
403-
lambdaPair(indexEvent, v0Status.at(i5), doubleStatus.at(i5), v0Cospa.at(i5), v0Radius.at(i5), dcaPositive.at(i5), dcaNegative.at(i5), dcaBetweenDaughter.at(i5), lambdaDummy.Pt(), lambdaDummy.Eta(), lambdaDummy.Phi(), lambdaDummy.M(), protonDummy.Pt(), protonDummy.Eta(), protonDummy.Phi(), positiveIndex.at(i5), negativeIndex.at(i5), dcaV0ToPV.at(i5));
416+
lambdaPair(indexEvent, v0Status.at(i5), doubleStatus.at(i5), v0Cospa.at(i5), v0Radius.at(i5), dcaPositive.at(i5), dcaNegative.at(i5), dcaBetweenDaughter.at(i5), lambdaDummy.Pt(), lambdaDummy.Eta(), lambdaDummy.Phi(), lambdaDummy.M(), protonDummy.Pt(), protonDummy.Eta(), protonDummy.Phi(), positiveIndex.at(i5), negativeIndex.at(i5), dcaV0ToPV.at(i5), tpcPosNClsCrossedRows.at(i5), tpcNegNClsCrossedRows.at(i5), ctau.at(i5), tpcNsigmaPos.at(i5), tpcNsigmaNeg.at(i5), mK0Short.at(i5));
404417
}
405418
}
406419
}

0 commit comments

Comments
 (0)