|
39 | 39 |
|
40 | 40 | #include <Math/GenVector/Boost.h> |
41 | 41 | #include <Math/Vector4D.h> |
| 42 | +#include <Math/Vector3D.h> |
42 | 43 | #include <TMath.h> |
43 | 44 |
|
44 | 45 | #include <fairlogger/Logger.h> |
@@ -223,6 +224,7 @@ struct heptaquarktable { |
223 | 224 | } |
224 | 225 |
|
225 | 226 | ROOT::Math::PxPyPzMVector DauVec1, DauVec2, HQMesonMother, HQVectorDummy, HQd1dummy, HQd2dummy; |
| 227 | + ROOT::Math::XYZVector HQPosVectorDummy; |
226 | 228 |
|
227 | 229 | void processHQReducedTable(EventCandidates::iterator const& collision, TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) |
228 | 230 | { |
@@ -252,6 +254,7 @@ struct heptaquarktable { |
252 | 254 | std::vector<float> HQd2TOF = {}; |
253 | 255 |
|
254 | 256 | std::vector<ROOT::Math::PtEtaPhiMVector> hqresonance, hqresonanced1, hqresonanced2; |
| 257 | + std::vector<ROOT::Math::XYZVector> hqresonancePosition; |
255 | 258 |
|
256 | 259 | histos.fill(HIST("hEventstat"), 0.5); |
257 | 260 | if (!(collision.sel8() && collision.selection_bit(aod::evsel::kNoTimeFrameBorder) && collision.selection_bit(aod::evsel::kNoITSROFrameBorder) && collision.selection_bit(aod::evsel::kNoSameBunchPileup) && collision.selection_bit(aod::evsel::kIsGoodZvtxFT0vsPV))) |
@@ -309,6 +312,9 @@ struct heptaquarktable { |
309 | 312 | hqresonanced2.push_back(temp2); |
310 | 313 | hqresonance.push_back(temp3); |
311 | 314 |
|
| 315 | + ROOT::Math::XYZVector temppos(0, 0, 0); |
| 316 | + hqresonancePosition.push_back(temppos); |
| 317 | + |
312 | 318 | HQId.push_back(333); |
313 | 319 |
|
314 | 320 | HQd1Index.push_back(track1.globalIndex()); |
@@ -388,6 +394,9 @@ struct heptaquarktable { |
388 | 394 | hqresonanced2.push_back(temp2); |
389 | 395 | hqresonance.push_back(temp3); |
390 | 396 |
|
| 397 | + ROOT::Math::XYZVector temppos(v0.x(), v0.y(), v0.z()); |
| 398 | + hqresonancePosition.push_back(temppos); |
| 399 | + |
391 | 400 | HQd1Index.push_back(postrack_v0.globalIndex()); |
392 | 401 | HQd2Index.push_back(negtrack_v0.globalIndex()); |
393 | 402 |
|
@@ -434,12 +443,13 @@ struct heptaquarktable { |
434 | 443 | //// Fill track table for HQ////////////////// |
435 | 444 | for (auto if1 = hqresonance.begin(); if1 != hqresonance.end(); ++if1) { |
436 | 445 | auto i5 = std::distance(hqresonance.begin(), if1); |
| 446 | + HQPosVectorDummy = hqresonancePosition.at(i5); |
437 | 447 | HQVectorDummy = hqresonance.at(i5); |
438 | 448 | HQd1dummy = hqresonanced1.at(i5); |
439 | 449 | HQd2dummy = hqresonanced2.at(i5); |
440 | 450 | hqTrack(indexEvent, HQId.at(i5), HQVectorDummy.Px(), HQVectorDummy.Py(), HQVectorDummy.Pz(), |
441 | 451 | HQd1dummy.Px(), HQd1dummy.Py(), HQd1dummy.Pz(), HQd2dummy.Px(), HQd2dummy.Py(), HQd2dummy.Pz(), |
442 | | - HQVectorDummy.M(), |
| 452 | + HQPosVectorDummy.X(), HQPosVectorDummy.Y(), HQPosVectorDummy.Z(), HQVectorDummy.M(), |
443 | 453 | HQd1Index.at(i5), HQd2Index.at(i5), |
444 | 454 | HQd1Charge.at(i5), HQd2Charge.at(i5), HQd1TPC.at(i5), HQd2TPC.at(i5), |
445 | 455 | HQd1TOFHit.at(i5), HQd2TOFHit.at(i5), HQd1TOF.at(i5), HQd2TOF.at(i5)); |
|
0 commit comments