Skip to content

Commit a05a706

Browse files
author
Christopher Klumm
committed
Changes to implement phi particle in FemtoDream
modified/ added new files for particle reconstruction via the inv mass due to short life time. Selection is implemented in the ResoSelection header. For this new types in femtoDreived.h were implemented. The Producer task was changed to reconstruct the phi and filltables. In order to get pid-cuts for further partitioning(inside debug-reso and pair-task) the cutculator was modified.
1 parent 398c307 commit a05a706

3 files changed

Lines changed: 1056 additions & 17 deletions

File tree

PWGCF/FemtoDream/Core/femtoDreamObjectSelection.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,12 @@ class FemtoDreamObjectSelection
6060
}
6161
}
6262

63-
/// assigns value from configurbale to protected class member
64-
/// \param selVals o2 configurable containing the values employed for the selection
65-
template <typename V>
63+
///assigns value from configurbale to protected class member
64+
/// \param selVals o2 configurable containing the values employed for the selection
65+
template<typename V>
6666
void assign(V& selVals)
6767
{
68-
assignedValue = static_cast<selValDataType>(selVals);
68+
assignedValue = static_cast<selValDataType>(selVals);
6969
}
7070

7171
/// Pass the Configurable of selection values in the analysis task to the selection class
@@ -201,7 +201,7 @@ class FemtoDreamObjectSelection
201201
HistogramRegistry* mHistogramRegistry; ///< For Analysis QA output
202202
HistogramRegistry* mQAHistogramRegistry; ///< For QA output
203203
std::vector<FemtoDreamSelection<selValDataType, selVariable>> mSelections; ///< Vector containing all selections
204-
selValDataType assignedValue;
204+
selValDataType assignedValue;
205205
};
206206

207207
} // namespace femtoDream

PWGCF/FemtoDream/Core/femtoDreamTrackSelection.h

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@
3333
#include <string>
3434
#include <vector>
3535

36+
37+
38+
3639
using namespace o2::framework;
3740
using namespace o2::analysis::femtoDream::femtoDreamSelection;
3841

@@ -54,7 +57,7 @@ enum TrackSel { kSign, ///< Sign of the track
5457
kDCAxyMax, ///< Max. DCA_xy (cm)
5558
kDCAzMax, ///< Max. DCA_z (cm)
5659
kDCAMin, ///< Min. DCA_xyz (cm)
57-
kPIDnSigmaMax ///< Max. |n_sigma| for PID
60+
kPIDnSigmaMax ///< Max. |n_sigma| for PID
5861
};
5962

6063
enum TrackContainerPosition {
@@ -425,7 +428,7 @@ auto FemtoDreamTrackSelection::getNsigmaITS(T const& track, o2::track::PID pid)
425428
}
426429

427430
template <typename T>
428-
bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track, bool UseThreshold)
431+
bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track, bool UseThreshold )
429432
{
430433
const auto pT = track.pt();
431434
const auto eta = track.eta();
@@ -502,19 +505,18 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track, bool UseThresho
502505
bool pass = false;
503506
for (size_t i = 0; i < pidTPC.size(); ++i) {
504507

505-
auto pidTPCVal = pidTPC.at(i);
506-
if (pT < nPTPCThr) {
507-
pass = std::fabs(pidTPCVal) < nSigmaPIDMax;
508-
} else if (pT >= nPTPCThr) {
509-
auto pidTOFVal = pidTOF.at(i);
510-
pass = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal) < nSigmaPIDMax;
511-
}
512-
if (pass)
513-
break; // early exit if any condition is satisfied
508+
auto pidTPCVal = pidTPC.at(i);
509+
if(pT < nPTPCThr) {
510+
pass = std::fabs(pidTPCVal) < nSigmaPIDMax;
511+
}else if (pT >= nPTPCThr) {
512+
auto pidTOFVal = pidTOF.at(i);
513+
pass = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal) < nSigmaPIDMax;
514+
}
515+
if (pass) break; // early exit if any condition is satisfied
514516
}
515517

516518
if (!pass) {
517-
return false;
519+
return false;
518520
}
519521
}
520522
return true;

0 commit comments

Comments
 (0)