APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
Classes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
april_content::TrackClusterAssociationMVAAlgorithm Class Reference

TrackClusterAssociationMVAAlgorithm class. More...

#include <TrackClusterAssociationMVAAlgorithm.h>

Inheritance diagram for april_content::TrackClusterAssociationMVAAlgorithm:

Classes

struct  AssociationConstraints
 AssociationConstraints struct. More...
 
class  Factory
 Factory class for instantiating algorithm. More...
 

Private Types

typedef std::vector
< AssociationConstraints
AssociationConstraintsVector
 
typedef std::map< const
pandora::Track
*, AssociationConstraintsVector > 
AssociationConstraintsMap
 
typedef std::map< const
pandora::Track *, const
pandora::Cluster * > 
AssociationMap
 
typedef std::map< const
pandora::Cluster *, const
pandora::Track * > 
MultiAssociationMap
 

Private Member Functions

pandora::StatusCode Run ()
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 
pandora::StatusCode ExtractAssociationLists (pandora::ClusterList &clusterList, pandora::TrackList &trackList)
 Extract the cluster and track lists eligible for track-cluster associations. More...
 
pandora::StatusCode BuildPossibleAssociations (const pandora::ClusterList &clusterList, const pandora::TrackList &trackList, AssociationMap &associationMap)
 Build the possible track-cluster associations. More...
 
pandora::StatusCode PerformAssociations (const AssociationMap &associationMap)
 Perform the track-cluster association. More...
 
pandora::StatusCode ComputeInnerCentroid (const pandora::Cluster *const pCluster, const pandora::Track *const pTrack, pandora::CartesianVector &innerCentroid) const
 
bool PassesInitialCuts (const pandora::Cluster *const pCluster, const pandora::Track *const pTrack) const
 Whether the track-cluster pair passes simple cuts for a possible association. More...
 
float MVADeteriminAssociation (const pandora::Cluster *const pCluster, const pandora::Track *const pTrack) const
 
pandora::StatusCode CalculateAssociationConstraints (const pandora::Cluster *const pCluster, const pandora::Track *const pTrack, AssociationConstraints &constraints)
 Calculate the track-cluster association constraints for a possible association. More...
 
bool FitConstraints (const AssociationConstraints &constraints) const
 Whether the set of constraints passes the final cuts for an association. More...
 

Static Private Member Functions

static bool SortByBestCompatibility (const AssociationConstraints &lhs, const AssociationConstraints &rhs)
 Sort association constraints by compatibility (std::sort)
 

Private Attributes

unsigned int m_maxClusterInnerPseudoLayer
 The maximum cluster inner pseudo layer cut.
 
unsigned int m_nFirstClusterPseudoLayer
 The number of cluster pseudo layers for the inner centroid evaluation.
 
float m_maxDistanceToHelix
 The maximum distance between a track helix and the cluster inner centroid.
 
float m_maxTrackClusterAngle
 The maximum angle between the track projection and the cluster inner centroid.
 
bool m_allowMultiAssociations
 Whether to allow multi track associations for a single cluster.
 
bool m_useEnergyCompatibility
 Whether to use energy information for association.
 
bool m_usePhotonClusters
 

Static Private Attributes

static TMVA::Reader * m_reader = NULL
 

Detailed Description

TrackClusterAssociationMVAAlgorithm class.

Member Function Documentation

pandora::StatusCode april_content::TrackClusterAssociationMVAAlgorithm::BuildPossibleAssociations ( const pandora::ClusterList &  clusterList,
const pandora::TrackList &  trackList,
AssociationMap &  associationMap 
)
private

Build the possible track-cluster associations.

Parameters
clusterListthe input cluster list
trackListthe input track list
associationMapthe association map to receive
pandora::StatusCode april_content::TrackClusterAssociationMVAAlgorithm::CalculateAssociationConstraints ( const pandora::Cluster *const  pCluster,
const pandora::Track *const  pTrack,
AssociationConstraints constraints 
)
private

Calculate the track-cluster association constraints for a possible association.

Parameters
pClusterthe input cluster
pTrackthe input track
constraintsthe track-cluster association constraints
pandora::StatusCode april_content::TrackClusterAssociationMVAAlgorithm::ExtractAssociationLists ( pandora::ClusterList &  clusterList,
pandora::TrackList &  trackList 
)
private

Extract the cluster and track lists eligible for track-cluster associations.

Parameters
clusterListthe cluster list to receive
trackListthe track list to receive
bool april_content::TrackClusterAssociationMVAAlgorithm::FitConstraints ( const AssociationConstraints constraints) const
private

Whether the set of constraints passes the final cuts for an association.

Parameters
constraintsthe constraints to check
bool april_content::TrackClusterAssociationMVAAlgorithm::PassesInitialCuts ( const pandora::Cluster *const  pCluster,
const pandora::Track *const  pTrack 
) const
private

Whether the track-cluster pair passes simple cuts for a possible association.

Parameters
pClusterthe input cluster
pTrackthe input track
pandora::StatusCode april_content::TrackClusterAssociationMVAAlgorithm::PerformAssociations ( const AssociationMap &  associationMap)
private

Perform the track-cluster association.

Parameters
associationMapthe input association map

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