Belle II Software development
MLRange< ClassifierType, Ndims, CutType > Class Template Reference

Range used for the Machine Learning assisted TrackFinding approach. More...

#include <MLRange.h>

Public Member Functions

 MLRange (ClassifierType *classifier, CutType cut)
 Constructor.
 
bool contains (std::array< double, Ndims > hits) const
 method used to decide if a hit combination passes the Machine Learning filter
 
void persist (TTree *, const std::string &, const std::string &)
 For Storing this range.
 

Private Attributes

ClassifierType * m_classifier
 Pointer to classifier to be used.
 
CutType m_cut
 Cut value.
 

Detailed Description

template<typename ClassifierType, size_t Ndims = 9, typename CutType = double>
class Belle2::MLRange< ClassifierType, Ndims, CutType >

Range used for the Machine Learning assisted TrackFinding approach.

NOTE: This is where all the magic happens! For other Filters the SelectionVariable is responsible for calculating a value and then passes the calculated value to a Range, where a simple comparison occurs. In the case of ML Filters this is not easily possible if there should be different ML classifiers for different detector regions. Thus, the SelectionVariable simply passes down the hits and this Range is responsible for the calculation and the comparison.

Definition at line 29 of file MLRange.h.

Constructor & Destructor Documentation

◆ MLRange()

MLRange ( ClassifierType *  classifier,
CutType  cut 
)
inline

Constructor.

Parameters
classifier: classifier to be used
cut: cut value

Definition at line 40 of file MLRange.h.

40: m_classifier(classifier), m_cut(cut) { ; }
CutType m_cut
Cut value.
Definition: MLRange.h:33
ClassifierType * m_classifier
Pointer to classifier to be used.
Definition: MLRange.h:31

Member Function Documentation

◆ contains()

bool contains ( std::array< double, Ndims >  hits) const
inline

method used to decide if a hit combination passes the Machine Learning filter

Parameters
hitsis the three hit combination (for the moment, maybe this will get templated in the future) that gets passed down from the MLHandover selection variable.

Definition at line 48 of file MLRange.h.

48{ return !(m_classifier->analyze(hits) < m_cut); }

◆ persist()

void persist ( TTree *  ,
const std::string &  ,
const std::string &   
)
inline

For Storing this range.

TODO

Definition at line 55 of file MLRange.h.

56 {
57 // TODO
58 }

Member Data Documentation

◆ m_classifier

ClassifierType* m_classifier
private

Pointer to classifier to be used.

Definition at line 31 of file MLRange.h.

◆ m_cut

CutType m_cut
private

Cut value.

Definition at line 33 of file MLRange.h.


The documentation for this class was generated from the following file: