Analysis Software
Documentation for sPHENIX simulation software
|
#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 | setConstBField (float b) |
void | useFixedClusterError (bool opt) |
void | setFixedClusterError (int i, double val) |
void | use_truth_clusters (bool truth) |
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::Vector3 | getGlobalPosition (TrkrDefs::cluskey, TrkrCluster *) const |
get global position for a given cluster | |
PositionMap | PrepareKDTrees () |
std::vector< TrkrDefs::cluskey > | PropagateTrack (TrackSeed *track, Eigen::Matrix< double, 6, 6 > &xyzCov, 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 (std::vector< TrackSeed_v1 > &seeds, PositionMap &positions) |
void | publishSeeds (const std::vector< TrackSeed_v1 > &) |
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 Member Functions inherited from SubsysReco | |
SubsysReco (const std::string &name="NONAME") | |
Definition at line 38 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 38 of file PHSimpleKFProp.h
PHSimpleKFProp::PHSimpleKFProp | ( | const std::string & | name = "PHSimpleKFProp" | ) |
Definition at line 72 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 72 of file PHSimpleKFProp.cc
|
overridedefault |
|
overridevirtual |
Called at the end of all processing.
Reimplemented from SubsysReco.
Definition at line 76 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 76 of file PHSimpleKFProp.cc
References Fun4AllReturnCodes::EVENT_OK.
Definition at line 110 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 110 of file PHSimpleKFProp.cc
References _const_field, _field_map, _use_const_field, Acts::UnitConstants::cm, and merge_hashes::p.
Referenced by PropagateTrack().
|
private |
fetch node pointers
Definition at line 131 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 131 of file PHSimpleKFProp.cc
References _cluster_map, _tgeometry, _track_map, _use_truth_clusters, Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::ABORTRUN, Fun4AllReturnCodes::EVENT_OK, PHG4TpcCylinderGeom::get_radius(), PHG4TpcCylinderGeomContainer::GetLayerCellGeom(), i, m_dcc, 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 350 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 350 of file PHSimpleKFProp.cc
References _tgeometry, TpcDistortionCorrection::get_corrected_position(), ActsGeometry::getGlobalPosition(), m_dcc, and m_distortionCorrection.
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 81 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 81 of file PHSimpleKFProp.cc
References _cluster_map, _const_field, _field_map, _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, get_nodes(), PHFieldConfigv1::set_field_config(), PHFieldConfigv1::set_filename(), and Fun4AllBase::Verbosity().
|
private |
Definition at line 361 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 361 of file PHSimpleKFProp.cc
References _cluster_map, _iteration_map, _kdtrees, _n_iteration, _ptclouds, TrkrClusterContainer::getClusters(), getGlobalPosition(), TrkrClusterContainer::getHitSetKeys(), TrkrClusterIterationMapv1::getIteration(), TrkrDefs::getLayer(), i, it, layer, size, TrkrDefs::tpcId, and Fun4AllBase::Verbosity().
Referenced by process_event().
|
overridevirtual |
Called for each event. This is where you do the real work.
Can't circle fit a seed with less than 3 clusters, skip it
This will by definition return a single pair with each vector in the pair length 1 corresponding to the seed info
circle fit back to update track parameters
Remove tracks that are duplicates from the KFProp
Reimplemented from SubsysReco.
Definition at line 183 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 183 of file PHSimpleKFProp.cc
References _iteration_map, _n_iteration, _track_map, Fun4AllReturnCodes::ABORTEVENT, TrackSeed::begin_cluster_keys(), TrackSeed::circleFitByTaubin(), PHTimer::elapsed(), TrackSeed::end_cluster_keys(), Fun4AllReturnCodes::EVENT_OK, fitter, TrackSeedContainer::get(), TrkrDefs::getTrkrId(), TrackSeed::lineFit(), PHWHERE, Acts::Test::pos, PHGhostRejection::positionMap(), PrepareKDTrees(), PropagateTrack(), publishSeeds(), PHGhostRejection::rejectGhostTracks(), RemoveBadClusters(), PHObject::Reset(), PHTimer::restart(), TrackSeedContainer::size(), PHTimer::stop(), TrkrDefs::tpcId, PHGhostRejection::trackSeedContainer(), and Fun4AllBase::Verbosity().
|
private |
Definition at line 431 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 431 of file PHSimpleKFProp.cc
References _Bzconst, _cluster_map, _const_field, _kdtrees, _max_dist, _max_sin_phi, _ptclouds, _tgeometry, _use_const_field, KFPMath::a, alpha, KFPMath::b, TrackSeed::begin_cluster_keys(), GPUTPCTrackParam::CalculateFitParameters(), INTTVtxZ::dphi, dy, TrackSeed::end_cluster_keys(), GPUTPCTrackParam::Filter(), TrkrClusterContainer::findCluster(), fitter, get_Bz(), TrackSeed::get_charge(), TpcDistortionCorrection::get_corrected_position(), TrackSeed::get_eta(), TrackSeed::get_phi(), TrackSeed::get_px(), TrackSeed::get_py(), TrackSeed::get_pz(), TrackSeed::get_qOverR(), TrackSeed::get_theta(), TrackSeed::get_x(), TrackSeed::get_X0(), TrackSeed::get_y(), TrackSeed::get_Y0(), TrackSeed::get_z(), GPUTPCTrackParam::GetCov(), GPUTPCTrackParam::GetDzDs(), TrkrDefs::getLayer(), GPUTPCTrackParam::GetNDF(), GPUTPCTrackParam::GetQPt(), GPUTPCTrackParam::GetSinPhi(), TrkrDefs::getTrkrId(), GPUTPCTrackParam::GetX(), GPUTPCTrackParam::GetY(), GPUTPCTrackParam::GetZ(), i, GPUTPCTrackParam::InitParam(), j, k, m_dcc, m_distortionCorrection, ActsTests::PropagationDatasets::phi, physmon_track_finding_ttbar::pt, radii, GPUTPCTrackParam::Rotate(), GPUTPCTrackParam::SetCov(), GPUTPCTrackParam::SetDzDs(), GPUTPCTrackParam::SetNDF(), GPUTPCTrackParam::SetQPt(), GPUTPCTrackParam::SetSignCosPhi(), GPUTPCTrackParam::SetSinPhi(), GPUTPCTrackParam::SetX(), GPUTPCTrackParam::SetY(), GPUTPCTrackParam::SetZ(), Acts::Experimental::detail::BlueprintHelper::sort(), square(), TrkrDefs::tpcId, Acts::Test::transform, GPUTPCTrackParam::TransportToXWithMaterial(), and Fun4AllBase::Verbosity().
Referenced by process_event().
|
private |
The ALICEKF gives a better charge determination at high pT
Definition at line 1184 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1184 of file PHSimpleKFProp.cc
References _cluster_map, _tgeometry, _track_map, TrackSeedContainer::insert(), and seed.
Referenced by process_event().
|
private |
Definition at line 1198 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1198 of file PHSimpleKFProp.cc
References _track_map, TrackSeedContainer::insert(), and seed.
|
private |
Definition at line 1143 of file PHSimpleKFProp.cc.
View newest version in sPHENIX GitHub at line 1143 of file PHSimpleKFProp.cc
References A, TrackFitUtils::circle_fit_by_taubin(), TrackFitUtils::getCircleClusterResiduals(), TrackFitUtils::getLineClusterResiduals(), i, TrackFitUtils::line_fit(), Acts::IntegrationTest::R, physmon_track_finding_ttbar::r, Fun4AllBase::Verbosity(), X0, and Y0.
Referenced by process_event().
|
inline |
Definition at line 48 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 48 of file PHSimpleKFProp.h
References _fieldDir.
|
inline |
Definition at line 54 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 54 of file PHSimpleKFProp.h
References _max_dist, and physmon_simulation::s.
|
inline |
Definition at line 56 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 56 of file PHSimpleKFProp.h
References _const_field, and KFPMath::b.
|
inline |
Definition at line 58 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 58 of file PHSimpleKFProp.h
References _fixed_clus_err.
|
inline |
Definition at line 61 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 61 of file PHSimpleKFProp.h
References _n_iteration.
|
inline |
Definition at line 59 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 59 of file PHSimpleKFProp.h
References _use_truth_clusters.
|
inline |
Definition at line 55 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 55 of file PHSimpleKFProp.h
References _use_const_field.
|
inline |
Definition at line 57 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 57 of file PHSimpleKFProp.h
References _use_fixed_clus_err.
|
private |
Definition at line 80 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 80 of file PHSimpleKFProp.h
Referenced by PropagateTrack().
|
private |
Definition at line 89 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 89 of file PHSimpleKFProp.h
Referenced by get_nodes(), InitRun(), PrepareKDTrees(), PropagateTrack(), and publishSeeds().
|
private |
Definition at line 152 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 152 of file PHSimpleKFProp.h
Referenced by get_Bz(), InitRun(), PropagateTrack(), and setConstBField().
|
private |
Definition at line 93 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 93 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
Referenced by InitRun(), and set_field_dir().
|
private |
Definition at line 154 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 154 of file PHSimpleKFProp.h
Referenced by InitRun(), and setFixedClusterError().
|
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 process_event().
|
private |
Definition at line 144 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 144 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), and PropagateTrack().
|
private |
Definition at line 82 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 82 of file PHSimpleKFProp.h
Referenced by PropagateTrack(), and set_max_window().
|
private |
Definition at line 85 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 85 of file PHSimpleKFProp.h
Referenced by InitRun(), and PropagateTrack().
|
private |
Definition at line 83 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 83 of file PHSimpleKFProp.h
Referenced by InitRun().
|
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(), process_event(), and SetIteration().
|
private |
Definition at line 143 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 143 of file PHSimpleKFProp.h
Referenced by PrepareKDTrees(), and PropagateTrack().
|
private |
Definition at line 86 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 86 of file PHSimpleKFProp.h
|
private |
acts geometry
Definition at line 96 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 96 of file PHSimpleKFProp.h
Referenced by get_nodes(), getGlobalPosition(), PropagateTrack(), and publishSeeds().
|
private |
Definition at line 91 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 91 of file PHSimpleKFProp.h
Referenced by get_nodes(), process_event(), and publishSeeds().
|
private |
Definition at line 151 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 151 of file PHSimpleKFProp.h
Referenced by get_Bz(), InitRun(), PropagateTrack(), and useConstBField().
|
private |
Definition at line 153 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 153 of file PHSimpleKFProp.h
Referenced by InitRun(), and useFixedClusterError().
|
private |
Definition at line 68 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 68 of file PHSimpleKFProp.h
Referenced by get_nodes(), and use_truth_clusters().
|
private |
Definition at line 79 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 79 of file PHSimpleKFProp.h
|
private |
Definition at line 73 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 73 of file PHSimpleKFProp.h
|
private |
Definition at line 76 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 76 of file PHSimpleKFProp.h
|
private |
Definition at line 74 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 74 of file PHSimpleKFProp.h
|
private |
Definition at line 77 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 77 of file PHSimpleKFProp.h
|
private |
Definition at line 75 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 75 of file PHSimpleKFProp.h
|
private |
Definition at line 78 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 78 of file PHSimpleKFProp.h
|
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 145 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 145 of file PHSimpleKFProp.h
Referenced by InitRun(), process_event(), and PropagateTrack().
|
private |
distortion correction container
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(), getGlobalPosition(), and PropagateTrack().
|
private |
tpc distortion correction utility class
Definition at line 66 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 66 of file PHSimpleKFProp.h
Referenced by getGlobalPosition(), and PropagateTrack().
|
private |
Definition at line 72 of file PHSimpleKFProp.h.
View newest version in sPHENIX GitHub at line 72 of file PHSimpleKFProp.h
Referenced by get_nodes(), and PropagateTrack().