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

FragmentRemovalHelper class. More...

#include <FragmentRemovalHelper.h>

Static Public Member Functions

static float GetFractionOfCloseHits (const pandora::Cluster *const pClusterI, const pandora::Cluster *const pClusterJ, const float distanceThreshold)
 Get the fraction of calo hits in cluster I that lie within a specified distance of a calo hit in cluster J. More...
 
static float GetFractionOfHitsInCone (const pandora::Pandora &pandora, const pandora::Cluster *const pClusterI, const pandora::Cluster *const pClusterJ, const float coneCosineHalfAngle)
 Get the fraction of calo hits in cluster I that lie within a cone along the direction of cluster J. If cluster J has an associated track, it's projected position and direction at the calorimeter will be used to define cone, otherwise cone will be radial and its axis will pass through centroid of cluster J at its showerstart layer. More...
 
static float GetFractionOfHitsInCone (const pandora::Cluster *const pCluster, const pandora::Track *const pTrack, const float coneCosineHalfAngle)
 Get the fraction of calo hits in a cluster that lie within a cone along the direction of a specified track. More...
 
static float GetFractionOfHitsInCone (const pandora::Cluster *const pCluster, const pandora::CartesianVector &coneApex, const pandora::CartesianVector &coneDirection, const float coneCosineHalfAngle)
 Get the fraction of calo hits in a cluster that lie within a specified cone. More...
 
static unsigned int GetNLayersCrossed (const pandora::Pandora &pandora, const pandora::Helix &helix, const float zStart, const float zEnd, const unsigned int nSamplingPoints=100)
 Get the number of pseudo layers crossed by helix in specified range of z coordinates. More...
 
static pandora::StatusCode GetClusterHelixDistance (const pandora::Cluster *const pCluster, const pandora::Helix &helix, const unsigned int startLayer, const unsigned int endLayer, const unsigned int maxOccupiedLayers, float &closestDistanceToHit, float &meanDistanceToHits)
 Get the distance between hits in a cluster and a helix, typically the result of a fit to a track. More...
 
static pandora::StatusCode GetClusterContactDetails (const pandora::Cluster *const pClusterI, const pandora::Cluster *const pClusterJ, const float distanceThreshold, unsigned int &nContactLayers, float &contactFraction)
 Get the number of contact layers for two clusters and also the ratio of the number of contact layers to overlap layers. More...
 
static float GetEMEnergyWeightedLayerSeparation (const pandora::Cluster *const pClusterI, const pandora::Cluster *const pClusterJ)
 Get the electromagnetic energy-weighted mean common layer separation for a pair of provided clusters Note: energy-weighting uses only energies from cluster j. More...
 
static pandora::CartesianVector GetEMEnergyWeightedPosition (const pandora::Cluster *const pCluster)
 Get the electromagnetic energy-weighted mean cluster position for a provided cluster. More...
 

Detailed Description

FragmentRemovalHelper class.

Member Function Documentation

StatusCode april_content::FragmentRemovalHelper::GetClusterContactDetails ( const pandora::Cluster *const  pClusterI,
const pandora::Cluster *const  pClusterJ,
const float  distanceThreshold,
unsigned int &  nContactLayers,
float &  contactFraction 
)
static

Get the number of contact layers for two clusters and also the ratio of the number of contact layers to overlap layers.

Parameters
pClusterIaddress of the first cluster
pClusterJaddress of the second cluster
distanceThresholdnumber of calorimeter cell-widths used to determine whether layers are in contact
nContactLayersto receive the number of contact layers
contactFractionto receive the ratio of the number of contact layers to number of overlap layers
StatusCode april_content::FragmentRemovalHelper::GetClusterHelixDistance ( const pandora::Cluster *const  pCluster,
const pandora::Helix &  helix,
const unsigned int  startLayer,
const unsigned int  endLayer,
const unsigned int  maxOccupiedLayers,
float &  closestDistanceToHit,
float &  meanDistanceToHits 
)
static

Get the distance between hits in a cluster and a helix, typically the result of a fit to a track.

Parameters
pClusteraddress of the cluster
helixthe helix
startLayerthe first pseudo layer of the cluster to examine
endLayerthe last pseudo layer of the cluster to examine
maxOccupiedLayersthe maximum number of occupied cluster pseudo layers to examine
closestDistanceToHitto receive the closest distance between the helix and a hit in the specified range of the cluster
meanDistanceToHitsto receive the mean distance between the helix and hits in the specified range of the cluster
float april_content::FragmentRemovalHelper::GetEMEnergyWeightedLayerSeparation ( const pandora::Cluster *const  pClusterI,
const pandora::Cluster *const  pClusterJ 
)
static

Get the electromagnetic energy-weighted mean common layer separation for a pair of provided clusters Note: energy-weighting uses only energies from cluster j.

Parameters
pClusterIaddress of first cluster
pClusterJaddress of second cluster
Returns
the energy-weighted mean common layer separation
CartesianVector april_content::FragmentRemovalHelper::GetEMEnergyWeightedPosition ( const pandora::Cluster *const  pCluster)
static

Get the electromagnetic energy-weighted mean cluster position for a provided cluster.

Parameters
pClusteraddress of the cluster
Returns
the electromagnetic energy-weighted mean cluster position
float april_content::FragmentRemovalHelper::GetFractionOfCloseHits ( const pandora::Cluster *const  pClusterI,
const pandora::Cluster *const  pClusterJ,
const float  distanceThreshold 
)
static

Get the fraction of calo hits in cluster I that lie within a specified distance of a calo hit in cluster J.

Parameters
pClusterIaddress of the cluster for which the fraction is calculated
pClusterJaddress of the cluster used in the comparison
distanceThresholdthe specified distance threshold
Returns
The fraction of close calo hits
static float april_content::FragmentRemovalHelper::GetFractionOfHitsInCone ( const pandora::Pandora &  pandora,
const pandora::Cluster *const  pClusterI,
const pandora::Cluster *const  pClusterJ,
const float  coneCosineHalfAngle 
)
static

Get the fraction of calo hits in cluster I that lie within a cone along the direction of cluster J. If cluster J has an associated track, it's projected position and direction at the calorimeter will be used to define cone, otherwise cone will be radial and its axis will pass through centroid of cluster J at its showerstart layer.

Parameters
pandorathe associated pandora instance
pClusterIaddress of the cluster for which the fraction is calculated
pClusterJaddress of the cluster used in the comparison
coneCosineHalfAnglethe cone cosine half angle
Returns
The fraction of calo hits in the cone
static float april_content::FragmentRemovalHelper::GetFractionOfHitsInCone ( const pandora::Cluster *const  pCluster,
const pandora::Track *const  pTrack,
const float  coneCosineHalfAngle 
)
static

Get the fraction of calo hits in a cluster that lie within a cone along the direction of a specified track.

Parameters
pClusteraddress of the cluster for which the fraction is calculated
pTrackaddress of the cluster used in the comparison
coneCosineHalfAnglethe cone cosine half angle
Returns
The fraction of calo hits in the cone
static float april_content::FragmentRemovalHelper::GetFractionOfHitsInCone ( const pandora::Cluster *const  pCluster,
const pandora::CartesianVector &  coneApex,
const pandora::CartesianVector &  coneDirection,
const float  coneCosineHalfAngle 
)
static

Get the fraction of calo hits in a cluster that lie within a specified cone.

Parameters
pClusteraddress of the cluster for which the fraction is calculated
coneApexposition vector specifying cone apex
coneDirectionunit vector specifying cone direction
coneCosineHalfAnglethe cone cosine half angle
Returns
The fraction of calo hits in the cone
unsigned int april_content::FragmentRemovalHelper::GetNLayersCrossed ( const pandora::Pandora &  pandora,
const pandora::Helix &  helix,
const float  zStart,
const float  zEnd,
const unsigned int  nSamplingPoints = 100 
)
static

Get the number of pseudo layers crossed by helix in specified range of z coordinates.

Parameters
pandorathe associated pandora instance
helixthe helix
zStartstart z coordinate
zEndend z coordinate
nSamplingPointsnumber of points at which to sample the helix in the z interval
Returns
The number of pseudo layers crossed

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