53 if (flavorTaggerInfo ==
nullptr) {
54 B2ERROR(
"flavorTaggerInfoFiller: FlavorTaggerInfo does not exist");
58 flavorTaggerInfo -> setUseModeFlavorTagger(
"Expert");
64 if (qrCombined < 1.1 && qrCombined > 1.0) qrCombined = 1.0;
65 if (qrCombined > - 1.1 && qrCombined < -1.0) qrCombined = -1.0;
66 float B0Probability = qrCombined / 2 + 0.5;
67 float B0barProbability = 1 - B0Probability;
77 float B0barProbability = 1 - B0Probability;
78 float qrCombined = 2 * (B0Probability - 0.5);
79 if (qrCombined < 1.1 && qrCombined > 1.0) qrCombined = 1.0;
80 if (qrCombined > - 1.1 && qrCombined < -1.0) qrCombined = -1.0;
89 float B0Probability = particle->
getExtraInfo(
"dnn_output");
90 float B0barProbability = 1 - B0Probability;
91 float qrCombined = 2 * (B0Probability - 0.5);
92 if (qrCombined < 1.1 && qrCombined > 1.0) qrCombined = 1.0;
93 if (qrCombined > - 1.1 && qrCombined < -1.0) qrCombined = -1.0;
102 string particleListName = get<0>(iTuple);
103 string category = get<1>(iTuple);
107 if (!particleList.isValid()) {
108 B2INFO(
"ParticleList " << particleListName <<
" not found");
110 if (particleList -> getListSize() == 0) {
111 infoMapsFBDT -> setProbTrackLevel(category, 0);
112 if (
m_trackPointers) infoMapsFBDT -> setTargetTrackLevel(category,
nullptr);
115 for (
unsigned int i = 0; i < particleList->getListSize(); ++i) {
116 Particle* iParticle = particleList ->getParticle(i);
117 bool hasMaxProb = std::get<bool>(manager.getVariable(
"hasHighestProbInCat(" + particleListName +
"," +
"isRightTrack(" + category +
118 "))")->function(iParticle));
119 if (hasMaxProb == 1) {
120 float targetProb = iParticle -> getExtraInfo(
"isRightTrack(" + category +
")");
123 infoMapsFBDT-> setTargetTrackLevel(category, iParticle -> getTrack());
136 string particleListName = get<0>(iTuple);
137 string category = get<1>(iTuple);
138 string qpCategoryVariable = get<2>(iTuple);
141 if (!particleList.isValid()) {
142 B2INFO(
"ParticleList " << particleListName <<
" not found");
144 if (particleList -> getListSize() == 0) {
145 infoMapsFBDT -> setProbEventLevel(category, 0);
146 infoMapsFBDT -> setQpCategory(category, 0);
148 infoMapsFBDT -> setHasTrueTarget(category, 0);
149 infoMapsFBDT -> setIsTrueCategory(category, 0);
151 if (
m_trackPointers) infoMapsFBDT -> setTargetEventLevel(category,
nullptr);
154 for (
unsigned int i = 0; i < particleList->getListSize(); ++i) {
155 Particle* iParticle = particleList ->getParticle(i);
156 bool hasMaxProb = std::get<bool>(manager.getVariable(
"hasHighestProbInCat(" + particleListName +
"," +
"isRightCategory(" + category
157 +
"))")-> function(iParticle));
158 if (hasMaxProb == 1) {
159 float categoryProb = iParticle -> getExtraInfo(
"isRightCategory(" + category +
")");
160 float qpCategory = std::get<double>(manager.getVariable(qpCategoryVariable)-> function(iParticle));
162 infoMapsFBDT -> setQpCategory(category, qpCategory);
164 float isTrueTarget = std::get<double>(manager.getVariable(
"hasTrueTarget(" + category +
")")-> function(
nullptr));
165 infoMapsFBDT -> setHasTrueTarget(category, isTrueTarget);
166 float isTrueCategory = std::get<double>(manager.getVariable(
"isTrueCategory(" + category +
")")-> function(
nullptr));
167 infoMapsFBDT -> setIsTrueCategory(category, isTrueCategory);
170 infoMapsFBDT-> setTargetEventLevel(category, iParticle -> getTrack());
Class to store reconstructed particles.
double getExtraInfo(const std::string &name) const
Return given value if set.