|
27 | 27 | namespace o2::analysis |
28 | 28 | { |
29 | 29 |
|
30 | | -enum class InputFeatures : uint8_t { // refer to DielectronsAll, TODO: add more features if needed |
| 30 | +enum class InputFeatures : uint8_t { // refer to DielectronsAll |
31 | 31 | kMass = 0, |
32 | 32 | kPt, |
33 | 33 | kEta, |
@@ -57,7 +57,17 @@ enum class InputFeatures : uint8_t { // refer to DielectronsAll, TODO: add more |
57 | 57 | kTPCNSigmaPr2, |
58 | 58 | kTOFNSigmaEl2, |
59 | 59 | kTOFNSigmaPi2, |
60 | | - kTOFNSigmaPr2 |
| 60 | + kTOFNSigmaPr2, |
| 61 | + kTauz, |
| 62 | + kTauxy, |
| 63 | + kLz, |
| 64 | + kLxy, |
| 65 | + kTauzCov, |
| 66 | + kTauxyCov, |
| 67 | + kLzCov, |
| 68 | + kLxyCov, |
| 69 | + kChi2pca, |
| 70 | + kCosPointingAngle |
61 | 71 | }; |
62 | 72 |
|
63 | 73 | static const std::map<InputFeatures, std::string> gFeatureNameMap = { |
@@ -90,7 +100,18 @@ static const std::map<InputFeatures, std::string> gFeatureNameMap = { |
90 | 100 | {InputFeatures::kTPCNSigmaPr2, "kTPCNSigmaPr2"}, |
91 | 101 | {InputFeatures::kTOFNSigmaEl2, "kTOFNSigmaEl2"}, |
92 | 102 | {InputFeatures::kTOFNSigmaPi2, "kTOFNSigmaPi2"}, |
93 | | - {InputFeatures::kTOFNSigmaPr2, "kTOFNSigmaPr2"}}; |
| 103 | + {InputFeatures::kTOFNSigmaPr2, "kTOFNSigmaPr2"}, |
| 104 | + {InputFeatures::kTauz, "kTauz"}, |
| 105 | + {InputFeatures::kTauxy, "kTauxy"}, |
| 106 | + {InputFeatures::kLz, "kLz"}, |
| 107 | + {InputFeatures::kLxy, "kLxy"}, |
| 108 | + {InputFeatures::kTauzCov, "kTauzCov"}, |
| 109 | + {InputFeatures::kTauxyCov, "kTauxyCov"}, |
| 110 | + {InputFeatures::kLzCov, "kLzCov"}, |
| 111 | + {InputFeatures::kLxyCov, "kLxyCov"}, |
| 112 | + {InputFeatures::kChi2pca, "kChi2pca"}, |
| 113 | + {InputFeatures::kCosPointingAngle, "kCosPointingAngle"} |
| 114 | +}; |
94 | 115 |
|
95 | 116 | template <typename TypeOutputScore = float> |
96 | 117 | class DQMlResponse : public MlResponse<TypeOutputScore> |
@@ -185,6 +206,26 @@ class DQMlResponse : public MlResponse<TypeOutputScore> |
185 | 206 | dqInputFeatures.push_back(t2.tofNSigmaPi()); |
186 | 207 | } else if (name == "kTOFNSigmaPr2") { |
187 | 208 | dqInputFeatures.push_back(t2.tofNSigmaPr()); |
| 209 | + } else if (name == "kTauz") { |
| 210 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingTauzProjected"]]); |
| 211 | + } else if (name == "kTauxy") { |
| 212 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingTauxyProjected"]]); |
| 213 | + } else if (name == "kLz") { |
| 214 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingLzProjected"]]); |
| 215 | + } else if (name == "kLxy") { |
| 216 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingLxyProjected"]]); |
| 217 | + } else if (name == "kTauzCov") { |
| 218 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingTauz"]]); |
| 219 | + } else if (name == "kTauxyCov") { |
| 220 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingTauxy"]]); |
| 221 | + } else if (name == "kLzCov") { |
| 222 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingLz"]]); |
| 223 | + } else if (name == "kLxyCov") { |
| 224 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingLxy"]]); |
| 225 | + } else if (name == "kChi2pca") { |
| 226 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kVertexingChi2PCA"]]); |
| 227 | + } else if (name == "kCosPointingAngle") { |
| 228 | + dqInputFeatures.push_back(fg[VarManager::fgVarNamesMap["kCosPointingAngle"]]); |
188 | 229 | } else { |
189 | 230 | LOG(fatal) << "Missing accessor for feature: " << name; |
190 | 231 | } |
@@ -230,7 +271,18 @@ class DQMlResponse : public MlResponse<TypeOutputScore> |
230 | 271 | {"kTPCNSigmaPr2", static_cast<uint8_t>(InputFeatures::kTPCNSigmaPr2)}, |
231 | 272 | {"kTOFNSigmaEl2", static_cast<uint8_t>(InputFeatures::kTOFNSigmaEl2)}, |
232 | 273 | {"kTOFNSigmaPi2", static_cast<uint8_t>(InputFeatures::kTOFNSigmaPi2)}, |
233 | | - {"kTOFNSigmaPr2", static_cast<uint8_t>(InputFeatures::kTOFNSigmaPr2)}}; |
| 274 | + {"kTOFNSigmaPr2", static_cast<uint8_t>(InputFeatures::kTOFNSigmaPr2)}, |
| 275 | + {"kTauz", static_cast<uint8_t>(InputFeatures::kTauz)}, |
| 276 | + {"kTauxy", static_cast<uint8_t>(InputFeatures::kTauxy)}, |
| 277 | + {"kLz", static_cast<uint8_t>(InputFeatures::kLz)}, |
| 278 | + {"kLxy", static_cast<uint8_t>(InputFeatures::kLxy)}, |
| 279 | + {"kTauzCov", static_cast<uint8_t>(InputFeatures::kTauzCov)}, |
| 280 | + {"kTauxyCov", static_cast<uint8_t>(InputFeatures::kTauxyCov)}, |
| 281 | + {"kLzCov", static_cast<uint8_t>(InputFeatures::kLzCov)}, |
| 282 | + {"kLxyCov", static_cast<uint8_t>(InputFeatures::kLxyCov)}, |
| 283 | + {"kChi2pca", static_cast<uint8_t>(InputFeatures::kChi2pca)}, |
| 284 | + {"kCosPointingAngle", static_cast<uint8_t>(InputFeatures::kCosPointingAngle)} |
| 285 | + }; |
234 | 286 | } |
235 | 287 | }; |
236 | 288 |
|
|
0 commit comments