Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 43 additions & 6 deletions PWGHF/D2H/Tasks/taskSigmac.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ struct HfTaskSigmac {
Configurable<bool> addMassDiffAbsLambdaCToSigmacSparse{"addMassDiffAbsLambdaCToSigmacSparse", false, "enable the filling of |M(pkpi, piKp) - M(LambdaC)| in the Σc0,++ THnSparse"};
Configurable<float> deltaMassSigmacRecoMax{"deltaMassSigmacRecoMax", 1000, "Maximum allowed value for Sigmac deltaMass. Conceived to reduce the output size (i.e. reject background above a certain threshold)"};
Configurable<float> ptMinSc{"ptMinSc", -1.f, "Minimum accepted value for SigmaC-hadron pt (GeV/c)"};
Configurable<bool> trackingInfo4SoftPiOnly{"trackingInfo4SoftPiOnly", false, "Flag to enable the storage of tracking info about the soft pion only"};

bool isMc{};
bool storeTrackProp{};
Expand Down Expand Up @@ -578,7 +579,13 @@ struct HfTaskSigmac {
const auto& trackLcProng0 = candidateLc.template prong0_as<TRK>();
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down Expand Up @@ -745,7 +752,13 @@ struct HfTaskSigmac {
const auto& trackLcProng0 = candidateLc.template prong0_as<TRK>();
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down Expand Up @@ -1301,7 +1314,13 @@ struct HfTaskSigmac {
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
const auto& trackSoftPi = candSc.template prong1_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down Expand Up @@ -1470,7 +1489,13 @@ struct HfTaskSigmac {
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
const auto& trackSoftPi = candSc.template prong1_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down Expand Up @@ -1676,7 +1701,13 @@ struct HfTaskSigmac {
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
const auto& trackSoftPi = candSc.template prong1_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down Expand Up @@ -1843,7 +1874,13 @@ struct HfTaskSigmac {
const auto& trackLcProng1 = candidateLc.template prong1_as<TRK>();
const auto& trackLcProng2 = candidateLc.template prong2_as<TRK>();
const auto& trackSoftPi = candSc.template prong1_as<TRK>();
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
if (trackingInfo4SoftPiOnly) {
/// soft pion info only
getTrackingInfo(std::vector{trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
} else {
/// info from soft pion and also Lc daughters
getTrackingInfo(std::vector{trackLcProng0, trackLcProng1, trackLcProng2, trackSoftPi}, absEtaTrackMin, numItsClsMin, numTpcClsMin);
}
}
if (addSoftPiDcaToSigmacSparse) {
/// dcaXY,Z of soft pion track stored
Expand Down
Loading