Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/offline/packages/trackreco/PHCASeeding.h>
Public Member Functions | |
PHCASeeding (const std::string &name="PHCASeeding", unsigned int start_layer=7, unsigned int end_layer=55, unsigned int min_nhits_per_cluster=0, unsigned int min_clusters_per_track=5, const unsigned int nlayers_maps=3, const unsigned int nlayers_intt=4, const unsigned int nlayers_tpc=48, float neighbor_phi_width=.02, float neighbor_eta_width=.01, float maxSinPhi=0.999, float cosTheta_limit=-0.8) | |
~PHCASeeding () override | |
void | SetLayerRange (unsigned int layer_low, unsigned int layer_up) |
void | SetSearchWindow (float eta_width, float phi_width) |
void | SetMinHitsPerCluster (unsigned int minHits) |
void | SetMinClustersPerTrack (unsigned int minClus) |
void | set_field_dir (const double rescale) |
void | useConstBField (bool opt) |
void | constBField (float b) |
void | useFixedClusterError (bool opt) |
void | setFixedClusterError (int i, double val) |
Public Member Functions inherited from PHTrackSeeding | |
PHTrackSeeding (const std::string &name="PHTrackSeeding") | |
~PHTrackSeeding () override | |
int | InitRun (PHCompositeNode *topNode) override |
int | process_event (PHCompositeNode *topNode) override |
int | End (PHCompositeNode *topNode) override |
Called at the end of all processing. | |
void | set_track_map_name (const std::string &map_name) |
void | set_do_hit_association (bool do_assoc) |
void | SetUseTruthClusters (bool setit) |
void | SetIteration (int iter) |
Public Member Functions inherited from SubsysReco | |
~SubsysReco () override | |
virtual int | EndRun (const int) |
Called at the end of each run. | |
virtual int | Init (PHCompositeNode *) |
virtual int | Reset (PHCompositeNode *) |
Reset. | |
virtual int | ResetEvent (PHCompositeNode *) |
Clean up after each event. | |
void | Print (const std::string &="ALL") const override |
Public Member Functions inherited from Fun4AllBase | |
virtual | ~Fun4AllBase () |
virtual const std::string | Name () const |
Returns the name of this module. | |
virtual void | Name (const std::string &name) |
Sets the name of this module. | |
virtual void | Verbosity (const int ival) |
Sets the verbosity of this module (0 by default=quiet). | |
virtual void | Verbosity (enu_Verbosity ival) |
Sets the verbosity of this module (0 by default=quiet). | |
virtual int | Verbosity () const |
Gets the verbosity of this module. | |
Protected Member Functions | |
int | Setup (PHCompositeNode *topNode) override |
int | Process (PHCompositeNode *topNode) override |
int | InitializeGeometry (PHCompositeNode *topNode) |
int | FindSeedsLayerSkip (double cosTheta_limit) |
int | End () override |
Called in SubsysReco::End. | |
Private Types | |
enum | skip_layers { on, off } |
Private Member Functions | |
Acts::Vector3 | getGlobalPosition (TrkrDefs::cluskey, TrkrCluster *) const |
get global position for a given cluster | |
PositionMap | FillTree () |
int | FindSeedsWithMerger (const PositionMap &) |
std::pair< std::vector < std::unordered_set< keylink > >, std::vector < std::unordered_set< keylink > > > | CreateLinks (const std::vector< coordKey > &clusters, const PositionMap &globalPositions) const |
std::vector< std::vector < keylink > > | FindBiLinks (const std::vector< std::unordered_set< keylink >> &belowLinks, const std::vector< std::unordered_set< keylink >> &aboveLinks) const |
std::vector< keylist > | FollowBiLinks (const std::vector< std::vector< keylink >> &bidirectionalLinks, const PositionMap &globalPositions) const |
void | QueryTree (const bgi::rtree< pointKey, bgi::quadratic< 16 >> &rtree, double phimin, double etamin, double lmin, double phimax, double etamax, double lmax, std::vector< pointKey > &returned_values) const |
std::vector< TrackSeed_v1 > | RemoveBadClusters (const std::vector< keylist > &seeds, const PositionMap &globalPositions) const |
double | getMengerCurvature (TrkrDefs::cluskey a, TrkrDefs::cluskey b, TrkrDefs::cluskey c, const PositionMap &globalPositions) const |
void | publishSeeds (const std::vector< TrackSeed_v1 > &seeds) |
Private Attributes | |
TpcDistortionCorrection | m_distortionCorrection |
tpc distortion correction utility class | |
const unsigned int | _nlayers_maps |
const unsigned int | _nlayers_intt |
const unsigned int | _nlayers_tpc |
unsigned int | _start_layer |
unsigned int | _end_layer |
unsigned int | _min_nhits_per_cluster |
unsigned int | _min_clusters_per_track |
float | _neighbor_phi_width |
float | _neighbor_eta_width |
float | _max_sin_phi |
float | _cosTheta_limit |
double | _rz_outlier_threshold = 0.1 |
double | _xy_outlier_threshold = 0.1 |
double | _fieldDir = -1 |
bool | _use_const_field = false |
float | _const_field = 1.4 |
bool | _use_fixed_clus_err = false |
std::array< double, 3 > | _fixed_clus_err = {.1,.1,.1} |
ActsGeometry * | tGeometry {nullptr} |
acts geometry | |
TpcDistortionCorrectionContainer * | m_dcc = nullptr |
distortion correction container | |
std::unique_ptr< ALICEKF > | fitter |
std::unique_ptr< PHTimer > | t_seed |
std::unique_ptr< PHTimer > | t_fill |
bgi::rtree< pointKey, bgi::quadratic< 16 > > | _rtree |
Additional Inherited Members | |
Public Types inherited from Fun4AllBase | |
enum | enu_Verbosity { VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3, VERBOSITY_A_LOT = 4, VERBOSITY_MAX = std::numeric_limits<int>::max() - 10 } |
Protected Attributes inherited from PHTrackSeeding | |
TrkrClusterContainer * | _cluster_map = nullptr |
TrkrClusterHitAssoc * | _cluster_hit_map = nullptr |
TrkrClusterIterationMapv1 * | _iteration_map |
int | _n_iteration |
bool | do_hit_assoc = true |
SvtxVertexMap * | _vertex_map = nullptr |
TrackSeedContainer * | _track_map = nullptr |
TrkrHitSetContainer * | _hitsets = nullptr |
std::string | _track_map_name = "TpcTrackSeedContainer" |
bool | _use_truth_clusters = false |
Definition at line 61 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 61 of file PHCASeeding.h
|
private |
Definition at line 106 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 106 of file PHCASeeding.h
PHCASeeding::PHCASeeding | ( | const std::string & | name = "PHCASeeding" , |
unsigned int | start_layer = 7 , |
||
unsigned int | end_layer = 55 , |
||
unsigned int | min_nhits_per_cluster = 0 , |
||
unsigned int | min_clusters_per_track = 5 , |
||
const unsigned int | nlayers_maps = 3 , |
||
const unsigned int | nlayers_intt = 4 , |
||
const unsigned int | nlayers_tpc = 48 , |
||
float | neighbor_phi_width = .02 , |
||
float | neighbor_eta_width = .01 , |
||
float | maxSinPhi = 0.999 , |
||
float | cosTheta_limit = -0.8 |
||
) |
Definition at line 174 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 174 of file PHCASeeding.cc
|
inlineoverride |
Definition at line 78 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 78 of file PHCASeeding.h
|
inline |
Definition at line 93 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 93 of file PHCASeeding.h
References _const_field, and KFPMath::b.
|
private |
Definition at line 365 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 365 of file PHCASeeding.cc
References _end_layer, _neighbor_eta_width, _neighbor_phi_width, _nlayers_intt, _nlayers_maps, _nlayers_tpc, _rtree, _start_layer, LogDebug, QueryTree(), t_seed, Acts::Test::transform, and Fun4AllBase::Verbosity().
Referenced by FindSeedsWithMerger().
|
overrideprotectedvirtual |
Called in SubsysReco::End.
Implements PHTrackSeeding.
Definition at line 965 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 965 of file PHCASeeding.cc
References Fun4AllReturnCodes::EVENT_OK, and Fun4AllBase::Verbosity().
|
private |
Definition at line 234 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 234 of file PHCASeeding.cc
References PHTrackSeeding::_cluster_map, _end_layer, PHTrackSeeding::_iteration_map, PHTrackSeeding::_n_iteration, _rtree, TrkrClusterContainer::getClusters(), ActsGeometry::getGlobalPosition(), getGlobalPosition(), TrkrClusterContainer::getHitSetKeys(), TrkrClusterIterationMapv1::getIteration(), TrkrDefs::getLayer(), j, layer, QueryTree(), t_fill, tGeometry, TrkrDefs::tpcId, and Fun4AllBase::Verbosity().
Referenced by Process().
|
private |
Definition at line 590 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 590 of file PHCASeeding.cc
References _nlayers_intt, _nlayers_maps, _nlayers_tpc, parse_cmake_options::begin, end, TrkrDefs::getLayer(), layer, cpp.ast::reversed(), t_seed, and Fun4AllBase::Verbosity().
Referenced by FindSeedsWithMerger().
|
protected |
|
private |
Definition at line 336 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 336 of file PHCASeeding.cc
References _end_layer, _nlayers_tpc, _rtree, _start_layer, CreateLinks(), FindBiLinks(), FollowBiLinks(), LogDebug, publishSeeds(), QueryTree(), RemoveBadClusters(), t_seed, and Fun4AllBase::Verbosity().
Referenced by Process().
|
private |
Definition at line 634 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 634 of file PHCASeeding.cc
References _nlayers_intt, _nlayers_maps, _nlayers_tpc, parse_cmake_options::begin, end, TrkrDefs::getLayer(), i, j, k, layer, LogDebug, seed, t_seed, and Fun4AllBase::Verbosity().
Referenced by FindSeedsWithMerger().
|
private |
get global position for a given cluster
uses ActsTransformation to convert cluster local position into global coordinates incorporates TPC distortion correction, if present
Definition at line 214 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 214 of file PHCASeeding.cc
References TpcDistortionCorrection::get_corrected_position(), ActsGeometry::getGlobalPosition(), m_dcc, m_distortionCorrection, and tGeometry.
Referenced by FillTree().
|
private |
Definition at line 616 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 616 of file PHCASeeding.cc
|
protected |
Definition at line 202 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 202 of file PHCASeeding.cc
References Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, PHWHERE, and tGeometry.
Referenced by Setup().
|
overrideprotectedvirtual |
process event interface for trackers, called in process_event. implemented in derived classes
Implements PHTrackSeeding.
Definition at line 304 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 304 of file PHCASeeding.cc
References PHTrackSeeding::_iteration_map, PHTrackSeeding::_n_iteration, _rtree, Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, FillTree(), FindSeedsWithMerger(), PHWHERE, t_seed, and Fun4AllBase::Verbosity().
|
private |
Definition at line 901 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 901 of file PHCASeeding.cc
References PHTrackSeeding::_track_map, TrackSeedContainer::insert(), seed, and Fun4AllBase::Verbosity().
Referenced by FindSeedsWithMerger().
|
private |
Definition at line 225 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 225 of file PHCASeeding.cc
References MATSCAN::phimin.
Referenced by CreateLinks(), FillTree(), and FindSeedsWithMerger().
|
private |
Definition at line 859 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 859 of file PHCASeeding.cc
References TrackFitUtils::circle_fit_by_taubin(), TrackFitUtils::getCircleClusterResiduals(), i, TrackSeed_v1::insert_cluster_key(), Acts::IntegrationTest::R, TrackSeed_v1::size_cluster_keys(), Fun4AllBase::Verbosity(), X0, and Y0.
Referenced by FindSeedsWithMerger().
|
inline |
Definition at line 84 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 84 of file PHCASeeding.h
References _fieldDir.
|
inline |
Definition at line 95 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 95 of file PHCASeeding.h
References _fixed_clus_err.
|
inline |
Definition at line 79 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 79 of file PHCASeeding.h
References _end_layer, and _start_layer.
|
inline |
Definition at line 82 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 82 of file PHCASeeding.h
References _min_clusters_per_track.
|
inline |
Definition at line 81 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 81 of file PHCASeeding.h
References _min_nhits_per_cluster.
|
inline |
Definition at line 80 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 80 of file PHCASeeding.h
References _neighbor_eta_width, and _neighbor_phi_width.
|
overrideprotectedvirtual |
setup interface for trackers, called in InitRun, setup things like pointers to nodes. overrided in derived classes
Reimplemented from PHTrackSeeding.
Definition at line 913 of file PHCASeeding.cc.
View newest version in sPHENIX GitHub at line 913 of file PHCASeeding.cc
References PHTrackSeeding::_cluster_map, _const_field, _fieldDir, _fixed_clus_err, _max_sin_phi, _min_clusters_per_track, _use_const_field, _use_fixed_clus_err, assert, PHFieldUtility::BuildFieldMap(), Fun4AllReturnCodes::EVENT_OK, fitter, InitializeGeometry(), m_dcc, PHFieldConfigv1::set_field_config(), PHFieldConfigv1::set_filename(), PHTrackSeeding::Setup(), t_fill, t_seed, and Fun4AllBase::Verbosity().
|
inline |
Definition at line 92 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 92 of file PHCASeeding.h
References _use_const_field.
|
inline |
Definition at line 94 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 94 of file PHCASeeding.h
References _use_fixed_clus_err.
|
private |
Definition at line 150 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 150 of file PHCASeeding.h
Referenced by constBField(), and Setup().
|
private |
Definition at line 145 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 145 of file PHCASeeding.h
|
private |
Definition at line 137 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 137 of file PHCASeeding.h
Referenced by CreateLinks(), FillTree(), FindSeedsWithMerger(), and SetLayerRange().
|
private |
Definition at line 148 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 148 of file PHCASeeding.h
Referenced by set_field_dir(), and Setup().
|
private |
Definition at line 152 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 152 of file PHCASeeding.h
Referenced by setFixedClusterError(), and Setup().
|
private |
Definition at line 144 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 144 of file PHCASeeding.h
Referenced by Setup().
|
private |
Definition at line 139 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 139 of file PHCASeeding.h
Referenced by SetMinClustersPerTrack(), and Setup().
|
private |
Definition at line 138 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 138 of file PHCASeeding.h
Referenced by SetMinHitsPerCluster().
|
private |
Definition at line 143 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 143 of file PHCASeeding.h
Referenced by CreateLinks(), and SetSearchWindow().
|
private |
Definition at line 142 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 142 of file PHCASeeding.h
Referenced by CreateLinks(), and SetSearchWindow().
|
private |
Definition at line 134 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 134 of file PHCASeeding.h
Referenced by CreateLinks(), FindBiLinks(), and FollowBiLinks().
|
private |
Definition at line 133 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 133 of file PHCASeeding.h
Referenced by CreateLinks(), FindBiLinks(), and FollowBiLinks().
|
private |
Definition at line 135 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 135 of file PHCASeeding.h
Referenced by CreateLinks(), FindBiLinks(), FindSeedsWithMerger(), and FollowBiLinks().
|
private |
Definition at line 164 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 164 of file PHCASeeding.h
Referenced by CreateLinks(), FillTree(), FindSeedsWithMerger(), and Process().
|
private |
Definition at line 146 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 146 of file PHCASeeding.h
|
private |
Definition at line 136 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 136 of file PHCASeeding.h
Referenced by CreateLinks(), FindSeedsWithMerger(), and SetLayerRange().
|
private |
Definition at line 149 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 149 of file PHCASeeding.h
Referenced by Setup(), and useConstBField().
|
private |
Definition at line 151 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 151 of file PHCASeeding.h
Referenced by Setup(), and useFixedClusterError().
|
private |
Definition at line 147 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 147 of file PHCASeeding.h
|
private |
Definition at line 160 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 160 of file PHCASeeding.h
Referenced by Setup().
|
private |
distortion correction container
Definition at line 158 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 158 of file PHCASeeding.h
Referenced by getGlobalPosition(), and Setup().
|
private |
tpc distortion correction utility class
Definition at line 109 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 109 of file PHCASeeding.h
Referenced by getGlobalPosition().
|
private |
Definition at line 163 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 163 of file PHCASeeding.h
Referenced by FillTree(), and Setup().
|
private |
Definition at line 162 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 162 of file PHCASeeding.h
Referenced by CreateLinks(), FindBiLinks(), FindSeedsWithMerger(), FollowBiLinks(), Process(), and Setup().
|
private |
acts geometry
Definition at line 155 of file PHCASeeding.h.
View newest version in sPHENIX GitHub at line 155 of file PHCASeeding.h
Referenced by FillTree(), getGlobalPosition(), and InitializeGeometry().