Belle II Software  release-05-02-19
PIDVariables.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Marko Staric, Anze Zupanc, Umberto Tamponi *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <analysis/dataobjects/Particle.h>
14 #include <analysis/VariableManager/Manager.h>
15 
16 namespace Belle2 {
22  namespace Variable {
23 
24 
34  Manager::FunctionPtr pidLogLikelihoodValueExpert(const std::vector<std::string>& arguments);
35 
45  Manager::FunctionPtr pidDeltaLogLikelihoodValueExpert(const std::vector<std::string>& arguments);
46 
56  Manager::FunctionPtr pidPairProbabilityExpert(const std::vector<std::string>& arguments);
57 
67  Manager::FunctionPtr pidProbabilityExpert(const std::vector<std::string>& arguments);
68 
73  Manager::FunctionPtr pidMissingProbabilityExpert(const std::vector<std::string>& arguments);
74 
79  double particleID(const Particle* part);
80 
84  double electronID(const Particle* part);
85 
89  double muonID(const Particle* part);
90 
94  double pionID(const Particle* part);
95 
99  double kaonID(const Particle* part);
100 
104  double protonID(const Particle* part);
105 
109  double deuteronID(const Particle* part);
110 
115  double binaryPID(const Particle* part, const std::vector<double>& arguments);
116 
121  double electronID_noTOP(const Particle* part);
122 
128  double binaryPID_noTOP(const Particle* part, const std::vector<double>& arguments);
129 
133  double pionID_SVD(const Particle* part);
134 
138  double kaonID_SVD(const Particle* part);
139 
143  double protonID_SVD(const Particle* part);
144 
148  double binaryPID_SVD(const Particle* part, const std::vector<double>& arguments);
149 
159  Manager::FunctionPtr pidChargedBDTScore(const std::vector<std::string>& pdgCodeHyp);
160 
170  Manager::FunctionPtr pidPairChargedBDTScore(const std::vector<std::string>& arguments);
171 
175  Manager::FunctionPtr mostLikelyPDG(const std::vector<std::string>& arguments);
176 
180  Manager::FunctionPtr isMostLikely(const std::vector<std::string>& arguments);
181 
188  double atcPIDBelle(const Particle*, const std::vector<double>& sigAndBkgHyp);
189 
193  double muIDBelle(const Particle*);
194 
198  double muIDBelleQuality(const Particle*);
199 
203  double eIDBelle(const Particle*);
204 
208  Const::PIDDetectorSet parseDetectors(const std::vector<std::string>& arguments);
209 
210  }
212 } // Belle2 namespace
Belle2::Const::PIDDetectorSet
RestrictedDetectorSet< PIDDetectors > PIDDetectorSet
Typedef for set of PID detectors.
Definition: Const.h:255
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::Variable::Manager::FunctionPtr
std::function< double(const Particle *)> FunctionPtr
NOTE: the python interface is documented manually in analysis/doc/Variables.rst (because we use ROOT ...
Definition: Manager.h:118