ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <coresoftware/blob/master/offline/packages/trackreco/PHSimpleKFProp.h>
Classes | |
struct | KDPointCloud |
Public Member Functions | |
PHSimpleKFProp (const std::string &name="PHSimpleKFProp") | |
~PHSimpleKFProp () override=default | |
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_field_dir (const double rescale) |
void | set_max_window (double s) |
void | useConstBField (bool opt) |
void | useFixedClusterError (bool opt) |
void | setFixedClusterError (int i, double val) |
void | use_truth_clusters (bool truth) |
void | set_track_map_name (const std::string &map_name) |
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. | |
Private Member Functions | |
int | get_nodes (PHCompositeNode *topNode) |
fetch node pointers | |
Acts::Vector3D | getGlobalPosition (TrkrCluster *) const |
get global position for a given cluster | |
PositionMap | PrepareKDTrees () |
void | MoveToFirstTPCCluster (const PositionMap &) |
std::vector< TrkrDefs::cluskey > | PropagateTrack (SvtxTrack *track, const PositionMap &globalPositions) const |
std::vector< std::vector < TrkrDefs::cluskey > > | RemoveBadClusters (const std::vector< std::vector< TrkrDefs::cluskey >> &seeds, const PositionMap &globalPositions) const |
double | get_Bz (double x, double y, double z) const |
void | publishSeeds (const std::vector< SvtxTrack_v2 > &) |
void | publishSeeds (const std::vector< SvtxTrack > &) |
Private Attributes | |
ActsTransformations | m_transform |
acts transformation object | |
TpcDistortionCorrection | m_distortionCorrection |
tpc distortion correction utility class | |
bool | _use_truth_clusters = false |
std::vector< double > | radii |
std::vector< double > | _vertex_x |
std::vector< double > | _vertex_y |
std::vector< double > | _vertex_z |
std::vector< double > | _vertex_xerr |
std::vector< double > | _vertex_yerr |
std::vector< double > | _vertex_zerr |
std::vector< double > | _vertex_ids |
double | _Bzconst = 10*0.000299792458f |
double | _max_dist = .05 |
size_t | _min_clusters_per_track = 20 |
double | _fieldDir = -1 |
double | _max_sin_phi = 1. |
double | _rz_outlier_threshold = .1 |
double | _xy_outlier_threshold = .1 |
TrkrClusterContainer * | _cluster_map = nullptr |
SvtxTrackMap * | _track_map = nullptr |
TrkrHitSetContainer * | _hitsets = nullptr |
PHField * | _field_map = nullptr |
ActsTrackingGeometry * | _tgeometry = nullptr |
acts geometry | |
ActsSurfaceMaps * | _surfmaps = nullptr |
acts surface map | |
TpcDistortionCorrectionContainer * | m_dcc = nullptr |
distortion correction container | |
std::vector< std::shared_ptr < KDPointCloud< double > > > | _ptclouds |
std::vector< std::shared_ptr < nanoflann::KDTreeSingleIndexAdaptor < nanoflann::L2_Simple_Adaptor < double, KDPointCloud< double > >, KDPointCloud< double >, 3 > > > | _kdtrees |
std::unique_ptr< ALICEKF > | fitter |
bool | _use_const_field = false |
bool | _use_fixed_clus_err = false |
std::array< double, 3 > | _fixed_clus_err = {.1,.1,.1} |
TrkrClusterIterationMapv1 * | _iteration_map = nullptr |
int | _n_iteration = 0 |
std::string | _track_map_name = "SvtxTrackMap" |
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 = INT_MAX - 10 } |
Protected Member Functions inherited from SubsysReco | |
SubsysReco (const std::string &name="NONAME") | |
Definition at line 41 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 41 of file PHSimpleKFProp.h
PHSimpleKFProp::PHSimpleKFProp | ( | const std::string & | name = "PHSimpleKFProp" | ) |
Definition at line 236 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 236 of file PHSimpleKFProp.cc
|
overridedefault |
|
overridevirtual |
Called at the end of all processing.
Reimplemented from SubsysReco.
Definition at line 240 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 240 of file PHSimpleKFProp.cc
References Fun4AllReturnCodes::EVENT_OK.
|
private |
Definition at line 281 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 281 of file PHSimpleKFProp.cc
References _field_map, _use_const_field, cm, PHField::GetFieldValue(), and tesla.
Referenced by PropagateTrack().
|
private |
fetch node pointers
Definition at line 290 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 290 of file PHSimpleKFProp.cc
References _cluster_map, _hitsets, _track_map, _use_truth_clusters, Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::ABORTRUN, Fun4AllReturnCodes::EVENT_OK, PHG4CylinderCellGeom::get_radius(), PHG4CylinderCellGeomContainer::GetLayerCellGeom(), PHWHERE, and radii.
Referenced by InitRun().
|
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 385 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 385 of file PHSimpleKFProp.cc
References _surfmaps, _tgeometry, TpcDistortionCorrection::get_corrected_position(), ActsTransformations::getGlobalPosition(), m_dcc, m_distortionCorrection, and m_transform.
Referenced by PrepareKDTrees().
|
overridevirtual |
Called for first event when run number is known. Typically this is where you may want to fetch data from database, because you know the run number.
Reimplemented from SubsysReco.
Definition at line 245 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 245 of file PHSimpleKFProp.cc
References _cluster_map, _field_map, _fieldDir, _fixed_clus_err, _max_sin_phi, _min_clusters_per_track, _surfmaps, _tgeometry, _use_const_field, _use_fixed_clus_err, Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, fitter, get_nodes(), PHFieldUtility::GetFieldMapNode(), m_dcc, and Fun4AllBase::Verbosity().
|
private |
Definition at line 468 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 468 of file PHSimpleKFProp.cc
References _track_map, field_utils::copy(), dx, dy, TrkrDefs::getLayer(), TrkrDefs::getTrkrId(), M_PI, phi, pt, Acts::IntegrationTest::R, TrkrDefs::tpcId, track, and Fun4AllBase::Verbosity().
Referenced by process_event().
|
private |
Definition at line 398 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 398 of file PHSimpleKFProp.cc
References _cluster_map, _hitsets, _iteration_map, _kdtrees, _n_iteration, _ptclouds, TrkrCluster::getClusKey(), TrkrClusterContainer::getClusters(), getGlobalPosition(), TrkrHitSetContainer::getHitSets(), TrkrClusterIterationMapv1::getIteration(), TrkrDefs::getLayer(), it, G4TTL::layer, TrkrDefs::tpcId, and Fun4AllBase::Verbosity().
Referenced by process_event().
|
overridevirtual |
Called for each event. This is where you do the real work.
Reimplemented from SubsysReco.
Definition at line 338 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 338 of file PHSimpleKFProp.cc
References _iteration_map, _n_iteration, _track_map, Fun4AllReturnCodes::ABORTEVENT, SvtxTrackMap::begin(), SvtxTrack::begin_cluster_keys(), SvtxTrackMap::end(), SvtxTrack::end_cluster_keys(), Fun4AllReturnCodes::EVENT_OK, fitter, TrkrDefs::getTrkrId(), MoveToFirstTPCCluster(), PHWHERE, PrepareKDTrees(), PropagateTrack(), publishSeeds(), RemoveBadClusters(), PHObject::Reset(), TrkrDefs::tpcId, track, and Fun4AllBase::Verbosity().
|
private |
Definition at line 535 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 535 of file PHSimpleKFProp.cc
References _Bzconst, _cluster_map, _kdtrees, _max_dist, _max_sin_phi, _ptclouds, a, kdfinder::abs(), alpha, b, SvtxTrack::begin_cluster_keys(), field_utils::copy(), SvtxTrack::end_cluster_keys(), GPUTPCTrackParam::Filter(), TrkrClusterContainer::findCluster(), fitter, get_Bz(), SvtxTrack::get_charge(), TpcDistortionCorrection::get_corrected_position(), SvtxTrack::get_error(), SvtxTrack::get_pt(), SvtxTrack::get_px(), SvtxTrack::get_py(), SvtxTrack::get_pz(), SvtxTrack::get_x(), SvtxTrack::get_y(), SvtxTrack::get_z(), GPUTPCTrackParam::GetCov(), GPUTPCTrackParam::GetDzDs(), TrkrDefs::getLayer(), GPUTPCTrackParam::GetNDF(), GPUTPCTrackParam::GetQPt(), GPUTPCTrackParam::GetSinPhi(), GPUTPCTrackParam::GetX(), GPUTPCTrackParam::GetY(), GPUTPCTrackParam::GetZ(), GPUTPCTrackParam::InitParam(), int(), k, m_dcc, m_distortionCorrection, radii, radius, reverse, GPUTPCTrackParam::Rotate(), GPUTPCTrackParam::SetCov(), GPUTPCTrackParam::SetDzDs(), GPUTPCTrackParam::SetNDF(), GPUTPCTrackParam::SetQPt(), GPUTPCTrackParam::SetSignCosPhi(), GPUTPCTrackParam::SetSinPhi(), GPUTPCTrackParam::SetX(), GPUTPCTrackParam::SetY(), GPUTPCTrackParam::SetZ(), square(), Acts::Test::transform, GPUTPCTrackParam::TransportToX(), and Fun4AllBase::Verbosity().
Referenced by process_event().
|
private |
Definition at line 1199 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1199 of file PHSimpleKFProp.cc
References _track_map, SvtxTrackMap::insert(), and seed.
Referenced by process_event().
Definition at line 1205 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1205 of file PHSimpleKFProp.cc
References _track_map, SvtxTrackMap::insert(), and seed.
|
private |
Definition at line 1158 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1158 of file PHSimpleKFProp.cc
References _xy_outlier_threshold, A(), B(), fitter, r, Acts::IntegrationTest::R, and Fun4AllBase::Verbosity().
Referenced by process_event().
|
inline |
Definition at line 52 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 52 of file PHSimpleKFProp.h
References _fieldDir.
|
inline |
Definition at line 59 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 59 of file PHSimpleKFProp.h
References _max_dist.
|
inline |
Definition at line 65 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 65 of file PHSimpleKFProp.h
References _track_map_name.
Definition at line 62 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 62 of file PHSimpleKFProp.h
References _fixed_clus_err.
Definition at line 66 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 66 of file PHSimpleKFProp.h
References _n_iteration.
|
inline |
Definition at line 63 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 63 of file PHSimpleKFProp.h
References _use_truth_clusters.
|
inline |
Definition at line 60 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 60 of file PHSimpleKFProp.h
References _use_const_field.
|
inline |
Definition at line 61 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 61 of file PHSimpleKFProp.h
References _use_fixed_clus_err.
|
private |
Definition at line 88 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 88 of file PHSimpleKFProp.h
Referenced by PropagateTrack().
|
private |
Definition at line 97 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 97 of file PHSimpleKFProp.h
Referenced by get_nodes(), InitRun(), PrepareKDTrees(), and PropagateTrack().
|
private |
Definition at line 100 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 100 of file PHSimpleKFProp.h
|
private |
Definition at line 92 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 92 of file PHSimpleKFProp.h
Referenced by InitRun(), and set_field_dir().
|
private |
Definition at line 165 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 165 of file PHSimpleKFProp.h
Referenced by InitRun(), and setFixedClusterError().
|
private |
Definition at line 99 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 99 of file PHSimpleKFProp.h
Referenced by get_nodes(), and PrepareKDTrees().
|
private |
Definition at line 166 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 166 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), and process_event().
|
private |
Definition at line 156 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 156 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), and PropagateTrack().
|
private |
Definition at line 90 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 90 of file PHSimpleKFProp.h
Referenced by PropagateTrack(), and set_max_window().
|
private |
Definition at line 93 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 93 of file PHSimpleKFProp.h
Referenced by InitRun(), and PropagateTrack().
|
private |
Definition at line 91 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 91 of file PHSimpleKFProp.h
Referenced by InitRun().
|
private |
Definition at line 167 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 167 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), process_event(), and SetIteration().
|
private |
Definition at line 155 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 155 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), and PropagateTrack().
|
private |
Definition at line 94 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 94 of file PHSimpleKFProp.h
|
private |
acts surface map
Definition at line 106 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 106 of file PHSimpleKFProp.h
Referenced by getGlobalPosition(), and InitRun().
|
private |
acts geometry
Definition at line 103 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 103 of file PHSimpleKFProp.h
Referenced by getGlobalPosition(), and InitRun().
|
private |
Definition at line 98 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 98 of file PHSimpleKFProp.h
Referenced by get_nodes(), MoveToFirstTPCCluster(), process_event(), and publishSeeds().
|
private |
Definition at line 168 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 168 of file PHSimpleKFProp.h
Referenced by set_track_map_name().
|
private |
Definition at line 163 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 163 of file PHSimpleKFProp.h
Referenced by get_Bz(), InitRun(), and useConstBField().
|
private |
Definition at line 164 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 164 of file PHSimpleKFProp.h
Referenced by InitRun(), and useFixedClusterError().
|
private |
Definition at line 76 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 76 of file PHSimpleKFProp.h
Referenced by get_nodes(), and use_truth_clusters().
|
private |
Definition at line 87 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 87 of file PHSimpleKFProp.h
|
private |
Definition at line 81 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 81 of file PHSimpleKFProp.h
|
private |
Definition at line 84 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 84 of file PHSimpleKFProp.h
|
private |
Definition at line 82 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 82 of file PHSimpleKFProp.h
|
private |
Definition at line 85 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 85 of file PHSimpleKFProp.h
|
private |
Definition at line 83 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 83 of file PHSimpleKFProp.h
|
private |
Definition at line 86 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 86 of file PHSimpleKFProp.h
|
private |
Definition at line 95 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 95 of file PHSimpleKFProp.h
Referenced by RemoveBadClusters().
|
private |
Definition at line 157 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 157 of file PHSimpleKFProp.h
Referenced by InitRun(), process_event(), PropagateTrack(), and RemoveBadClusters().
|
private |
distortion correction container
Definition at line 109 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 109 of file PHSimpleKFProp.h
Referenced by getGlobalPosition(), InitRun(), and PropagateTrack().
|
private |
tpc distortion correction utility class
Definition at line 74 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 74 of file PHSimpleKFProp.h
Referenced by getGlobalPosition(), and PropagateTrack().
|
private |
acts transformation object
Definition at line 71 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 71 of file PHSimpleKFProp.h
Referenced by getGlobalPosition().
|
private |
Definition at line 80 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 80 of file PHSimpleKFProp.h
Referenced by get_nodes(), and PropagateTrack().