LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
BoundedClusterMopUpAlgorithm class. More...
#include "BoundedClusterMopUpAlgorithm.h"
Classes | |
class | XSampling |
XSampling class. More... | |
Public Member Functions | |
BoundedClusterMopUpAlgorithm () | |
Default constructor. More... | |
template<typename T > | |
const std::string | GetListName (const T *const pT) const |
Find the name of the list hosting a specific object. More... | |
Protected Types | |
typedef std::unordered_map< const pandora::Cluster *, float > | AssociationDetails |
typedef std::unordered_map< const pandora::Cluster *, AssociationDetails > | ClusterAssociationMap |
Protected Member Functions | |
virtual pandora::StatusCode | Run () |
virtual void | GetPfoClusterLists (pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in the input pfo list, divided into three different views. More... | |
virtual void | GetDaughterClusterLists (pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in the input remant/daughter cluster lists, divided into three different views. More... | |
virtual void | GetClusterLists (const pandora::ClusterList &inputClusterList, const bool availabilityFlag, pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in an input cluster list, divided into three different views. More... | |
virtual void | MakeClusterMerges (const ClusterAssociationMap &clusterAssociationMap) const |
Make the cluster merges specified in the cluster association map, using list name information in the cluster list name map. More... | |
Protected Attributes | |
pandora::StringVector | m_pfoListNames |
The list of pfo list names. More... | |
bool | m_excludePfosContainingTracks |
Whether to exclude any pfos containing clusters flagged as fixed tracks. More... | |
pandora::StringVector | m_daughterListNames |
The list of potential daughter object list names. More... | |
Private Member Functions | |
void | ClusterMopUp (const pandora::ClusterList &pfoClusters, const pandora::ClusterList &remnantClusters) const |
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluster alterations. More... | |
void | GetShowerPositionMap (const TwoDSlidingShowerFitResult &fitResult, const XSampling &xSampling, ShowerPositionMap &showerPositionMap) const |
Get the shower position map containing high and low edge z positions in bins of x. More... | |
float | GetBoundedFraction (const pandora::Cluster *const pCluster, const XSampling &xSampling, const ShowerPositionMap &showerPositionMap) const |
Get the fraction of hits in a cluster bounded by a specified shower position map. More... | |
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
Private Attributes | |
unsigned int | m_slidingFitWindow |
The layer window for the sliding linear fits. More... | |
float | m_showerEdgeMultiplier |
Artificially tune width of shower envelope so as to make it more/less inclusive. More... | |
float | m_minBoundedFraction |
The minimum cluster bounded fraction for merging. More... | |
BoundedClusterMopUpAlgorithm class.
Definition at line 24 of file BoundedClusterMopUpAlgorithm.h.
|
protectedinherited |
Definition at line 71 of file ClusterMopUpBaseAlgorithm.h.
|
protectedinherited |
Definition at line 72 of file ClusterMopUpBaseAlgorithm.h.
lar_content::BoundedClusterMopUpAlgorithm::BoundedClusterMopUpAlgorithm | ( | ) |
Default constructor.
Definition at line 21 of file BoundedClusterMopUpAlgorithm.cc.
|
privatevirtual |
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluster alterations.
pfoClusters | the list of pfo clusters |
remnantClusters | the list of remnant clusters |
Implements lar_content::ClusterMopUpBaseAlgorithm.
Definition at line 30 of file BoundedClusterMopUpAlgorithm.cc.
References e, GetBoundedFraction(), lar_content::LArClusterHelper::GetClusterHitType(), lar_content::TwoDSlidingShowerFitResult::GetShowerFitResult(), GetShowerPositionMap(), lar_content::LArGeometryHelper::GetWirePitch(), m_minBoundedFraction, m_showerEdgeMultiplier, m_slidingFitWindow, lar_content::ClusterMopUpBaseAlgorithm::MakeClusterMerges(), and lar_content::LArClusterHelper::SortByNHits().
|
private |
Get the fraction of hits in a cluster bounded by a specified shower position map.
pCluster | address of the cluster |
xSampling | the x sampling details |
showerPositionMap | the shower position map |
Definition at line 107 of file BoundedClusterMopUpAlgorithm.cc.
References lar_content::BoundedClusterMopUpAlgorithm::XSampling::GetBin(), lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_maxX, lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_minX, lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_nPoints, x, and z.
Referenced by ClusterMopUp().
|
protectedvirtualinherited |
Get the two dimensional clusters contained in an input cluster list, divided into three different views.
inputClusterList | the input cluster list |
availabilityFlag | only clusters with matching availability will be considered |
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 82 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::LArClusterHelper::GetClusterHitType(), and target.
Referenced by lar_content::ClusterMopUpBaseAlgorithm::GetDaughterClusterLists(), and lar_content::ClusterMopUpBaseAlgorithm::GetPfoClusterLists().
|
protectedvirtualinherited |
Get the two dimensional clusters contained in the input remant/daughter cluster lists, divided into three different views.
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 67 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::ClusterMopUpBaseAlgorithm::GetClusterLists(), and lar_content::MopUpBaseAlgorithm::m_daughterListNames.
Referenced by lar_content::ClusterMopUpBaseAlgorithm::Run().
|
inherited |
Find the name of the list hosting a specific object.
pT | the address of the object |
Definition at line 19 of file MopUpBaseAlgorithm.cc.
Referenced by lar_content::IsolatedClusterMopUpAlgorithm::DissolveClustersToHits(), lar_content::ClusterMopUpBaseAlgorithm::MakeClusterMerges(), and lar_content::SlidingConeClusterMopUpAlgorithm::MakeClusterMerges().
|
protectedvirtualinherited |
Get the two dimensional clusters contained in the input pfo list, divided into three different views.
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 45 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::ClusterMopUpBaseAlgorithm::GetClusterLists(), lar_content::LArPfoHelper::IsTrack(), lar_content::ClusterMopUpBaseAlgorithm::m_excludePfosContainingTracks, and lar_content::ClusterMopUpBaseAlgorithm::m_pfoListNames.
Referenced by lar_content::ClusterMopUpBaseAlgorithm::Run().
|
private |
Get the shower position map containing high and low edge z positions in bins of x.
fitResult | the sliding shower fit result |
xSampling | the x sampling details |
showerPositionMap | to receive the shower position map |
Definition at line 79 of file BoundedClusterMopUpAlgorithm.cc.
References lar_content::BoundedClusterMopUpAlgorithm::XSampling::GetBin(), lar_content::TwoDSlidingShowerFitResult::GetShowerEdges(), lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_maxX, lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_minX, lar_content::BoundedClusterMopUpAlgorithm::XSampling::m_nPoints, n, and x.
Referenced by ClusterMopUp().
|
protectedvirtualinherited |
Make the cluster merges specified in the cluster association map, using list name information in the cluster list name map.
clusterAssociationMap | the cluster association map |
Definition at line 104 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::MopUpBaseAlgorithm::GetListName(), and lar_content::LArClusterHelper::SortByNHits().
Referenced by lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), lar_content::NearbyClusterMopUpAlgorithm::ClusterMopUp(), and ClusterMopUp().
|
privatevirtual |
Reimplemented from lar_content::ClusterMopUpBaseAlgorithm.
Definition at line 170 of file BoundedClusterMopUpAlgorithm.cc.
References m_minBoundedFraction, m_showerEdgeMultiplier, m_slidingFitWindow, and lar_content::ClusterMopUpBaseAlgorithm::ReadSettings().
|
protectedvirtualinherited |
Definition at line 28 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::ClusterMopUpBaseAlgorithm::ClusterMopUp(), lar_content::ClusterMopUpBaseAlgorithm::GetDaughterClusterLists(), and lar_content::ClusterMopUpBaseAlgorithm::GetPfoClusterLists().
|
protectedinherited |
The list of potential daughter object list names.
Definition at line 35 of file MopUpBaseAlgorithm.h.
Referenced by lar_content::SlidingConeClusterMopUpAlgorithm::GetAvailableTwoDClusters(), lar_content::ClusterMopUpBaseAlgorithm::GetDaughterClusterLists(), lar_content::SlidingConePfoMopUpAlgorithm::ReadSettings(), and lar_content::VertexBasedPfoMopUpAlgorithm::ReadSettings().
|
protectedinherited |
Whether to exclude any pfos containing clusters flagged as fixed tracks.
Definition at line 84 of file ClusterMopUpBaseAlgorithm.h.
Referenced by lar_content::ClusterMopUpBaseAlgorithm::GetPfoClusterLists(), lar_content::IsolatedClusterMopUpAlgorithm::IsolatedClusterMopUpAlgorithm(), and lar_content::ClusterMopUpBaseAlgorithm::ReadSettings().
|
private |
The minimum cluster bounded fraction for merging.
Definition at line 84 of file BoundedClusterMopUpAlgorithm.h.
Referenced by ClusterMopUp(), and ReadSettings().
|
protectedinherited |
The list of pfo list names.
Definition at line 83 of file ClusterMopUpBaseAlgorithm.h.
Referenced by lar_content::ClusterMopUpBaseAlgorithm::GetPfoClusterLists(), and lar_content::ClusterMopUpBaseAlgorithm::ReadSettings().
|
private |
Artificially tune width of shower envelope so as to make it more/less inclusive.
Definition at line 83 of file BoundedClusterMopUpAlgorithm.h.
Referenced by ClusterMopUp(), and ReadSettings().
|
private |
The layer window for the sliding linear fits.
Definition at line 82 of file BoundedClusterMopUpAlgorithm.h.
Referenced by ClusterMopUp(), and ReadSettings().