Class implementing the algorithm used for the MC based quality estimation.
More...
#include <QualityEstimatorMC.h>
|
MatchInfo | getBestMatchToMCClusters (std::vector< SpacePoint const * > const &measurements) |
| Get MCRecoTrack index of best matching tracks and number of matched MC clusters which can be matched to the given track candidate. More...
|
|
double | calculateQualityIndicator (unsigned int nClusters, MatchInfo &match) |
| Calculate MC qualityIndicator based on MatchInfo of best matched MCRecoTrack. More...
|
|
double | calcPt (double const radius) const |
| Returns a value for the transverse momentum in GeV calculated from a provided radius. More...
|
|
Class implementing the algorithm used for the MC based quality estimation.
Definition at line 22 of file QualityEstimatorMC.h.
◆ QualityEstimatorMC()
QualityEstimatorMC |
( |
const std::string & |
mcRecoTracksStoreArrayName = "MCRecoTracks" , |
|
|
bool |
strictQualityIndicator = true , |
|
|
bool |
mva_target = false |
|
) |
| |
|
inline |
Constructor.
- Parameters
-
mcRecoTracksStoreArrayName | : Name of the MCRecoTracks StoreArray |
strictQualityIndicator | : boolean whether to perform strict estimation |
mva_target | : Boolean whether to perform quality estimation for MVA QE training. This overwrites the strictQualityIndicator option! |
Definition at line 35 of file QualityEstimatorMC.h.
QualityEstimatorBase()
Constructor.
bool m_strictQualityIndicator
If true only SPTCs containing SVDClusters corresponding to a single MCRecoTrack get a QI !...
StoreArray< RecoTrack > m_mcRecoTracks
the storeArray for RecoTracks as member
bool m_mva_target
If true the SPTCs containing all the SVDCluster of the corresponding MCRecoTrack and no other SVDClus...
std::string m_mcRecoTracksStoreArrayName
MCRecoTracks StoreArray name.
◆ calcPt()
double calcPt |
( |
double const |
radius | ) |
const |
|
inlineprotectedinherited |
Returns a value for the transverse momentum in GeV calculated from a provided radius.
Utilizing m_magneticFieldZ and hard coded speed of light
Definition at line 82 of file QualityEstimatorBase.h.
◆ calculateQualityIndicator()
double calculateQualityIndicator |
( |
unsigned int |
nClusters, |
|
|
MatchInfo & |
match |
|
) |
| |
|
protected |
Calculate MC qualityIndicator based on MatchInfo of best matched MCRecoTrack.
- Parameters
-
nClusters | : number of clusters of the track candidate |
match | : MatchInfo for the best match |
- Returns
- qualityIndicator
Definition at line 52 of file QualityEstimatorMC.cc.
54 double qualityIndicator = 0;
56 if (nClusters ==
m_mcRecoTracks[match.first]->getNumberOfSVDHits()) {
57 qualityIndicator = 1 - (1. / nClusters);
60 if (nClusters == match.second) {
61 qualityIndicator = 1 - (1. / nClusters);
64 int nRecoTrackClusters =
m_mcRecoTracks[match.first]->getNumberOfSVDHits();
65 qualityIndicator = std::pow(match.second, 3) / (nRecoTrackClusters * nClusters * nClusters);
67 return qualityIndicator;
◆ estimateQuality()
double estimateQuality |
( |
std::vector< SpacePoint const * > const & |
measurements | ) |
|
|
finalvirtual |
Performing MC based quality estimation.
- Parameters
-
measurements | : SPs of the track candidate to be evaluate |
- Returns
- quality indicator value
Implements QualityEstimatorBase.
Definition at line 14 of file QualityEstimatorMC.cc.
◆ getBestMatchToMCClusters()
Get MCRecoTrack index of best matching tracks and number of matched MC clusters which can be matched to the given track candidate.
- Parameters
-
measurements | : SPs to be evaluated |
- Returns
- MatchInfo containing the ID of the best matching MCRecoTracks and number of matched clusters
Definition at line 24 of file QualityEstimatorMC.cc.
◆ setClustersNames()
void setClustersNames |
( |
const std::string & |
svdClustersName, |
|
|
const std::string & |
pxdClustersName |
|
) |
| |
|
inline |
◆ setMagneticFieldStrength()
void setMagneticFieldStrength |
( |
double |
magneticFieldZ = 1.5 | ) |
|
|
inlineinherited |
Setter for z component of magnetic field.
- Parameters
-
magneticFieldZ | : value to set it to |
Definition at line 55 of file QualityEstimatorBase.h.
◆ m_mva_target
If true the SPTCs containing all the SVDCluster of the corresponding MCRecoTrack and no other SVDCluster receive a Quality Index larger than one.
To be used for MVA QE training if both high hit purity and hit efficiency is desired.
Definition at line 84 of file QualityEstimatorMC.h.
◆ m_results
Result of the quality estimation This is stored as a member variable, because some values may be calculated by 'estimateQuality' anyways.
Therefore they don't need to be calculated explicitly in 'estimateQualityAndProperties'.
Definition at line 92 of file QualityEstimatorBase.h.
◆ m_strictQualityIndicator
bool m_strictQualityIndicator |
|
protected |
If true only SPTCs containing SVDClusters corresponding to a single MCRecoTrack get a QI != 0.
If a SVDCluster corresponds to several MCRecoTracks it is still valid as long as the correct MCRecoTrack is one of them.
Definition at line 78 of file QualityEstimatorMC.h.
The documentation for this class was generated from the following files: