 |
Belle II Software
release-05-01-25
|
11 #include <tracking/modules/vxdtfQualityEstimator/VXDQualityEstimatorMVAModule.h>
12 #include <tracking/trackFindingVXD/trackQualityEstimators/QualityEstimatorTripletFit.h>
13 #include <tracking/trackFindingVXD/trackQualityEstimators/QualityEstimatorCircleFit.h>
14 #include <tracking/trackFindingVXD/trackQualityEstimators/QualityEstimatorRiemannHelixFit.h>
15 #include <framework/geometry/BFieldManager.h>
25 setDescription(
"The quality estimator module for SpacePointTrackCandidates.");
26 setPropertyFlags(c_ParallelProcessingCertified);
28 addParam(
"EstimationMethod",
30 "Identifier which estimation method to use. Valid identifiers are: [tripletFit, circleFit, helixFit]",
33 addParam(
"SpacePointTrackCandsStoreArrayName",
34 m_SpacePointTrackCandsStoreArrayName,
35 "Name of StoreArray containing the SpacePointTrackCandidates to be estimated.",
36 m_SpacePointTrackCandsStoreArrayName);
39 addParam(
"WeightFileIdentifier",
40 m_weightFileIdentifier,
41 "Identifier of weightfile in Database or local root/xml file.",
42 m_weightFileIdentifier);
44 addParam(
"UseTimingInfo",
46 "Whether to use timing information available in the weight file",
49 addParam(
"ClusterInformation",
51 "How to compile information from clusters ['Average']",
52 m_ClusterInformation);
72 m_estimator = std::make_unique<QualityEstimatorTripletFit>();
74 m_estimator = std::make_unique<QualityEstimatorCircleFit>();
76 m_estimator = std::make_unique<QualityEstimatorRiemannHelixFit>();
97 std::vector<SpacePoint const*>
const sortedHits = spacePointTrackCand.getSortedHits();
108 spacePointTrackCand.setQualityIndicator(qi);
static void getField(const double *pos, double *field)
return the magnetic field at a given position.
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
std::unique_ptr< MVAExpert > m_mvaExpert
pointer to the object to interact with the MVA package
@ c_isActive
bit 11: SPTC is active (i.e.
float m_nSpacePoints
number of SpacePoints in SPTC as additional info for MVA, type is float to be consistend with m_varia...
static const double T
[tesla]
std::unique_ptr< QualityEstimatorBase > m_estimator
pointer to the selected QualityEstimator
std::string m_EstimationMethod
Identifier which estimation method to use.
void event() override
Applies the selected quality estimation method for a given set of TCs.
bool m_UseTimingInfo
whether to use timing information available in the weight file
Abstract base class for different kinds of events.
void beginRun() override
Launches mvaExpert and sets the magnetic field strength.
std::vector< Named< float * > > m_variableSet
set of named variables to be used in MVA
Quality estimation module for SpacePointTrackCandidates using multivariate analysis (MVA).
StoreArray< SpacePointTrackCand > m_spacePointTrackCands
the storeArray for SpacePointTrackCands as member, is faster than recreating link for each event
std::unique_ptr< QEResultsExtractor > m_qeResultsExtractor
pointer to object that extracts the results from the estimation mehtod (including QI,...
std::string m_ClusterInformation
how to compile information from clusters ['Average']
std::unique_ptr< ClusterInfoExtractor > m_clusterInfoExtractor
pointer to object that extracts info from the clusters of a SPTC
std::string m_SpacePointTrackCandsStoreArrayName
Name of the expected StoreArray containing SpacePointTrackCands.
std::string m_weightFileIdentifier
identifier of weightfile in Database or local root/xml file
void initialize() override
Initializes the Module.
Storage for (VXD) SpacePoint-based track candidates.