Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHActsVertexPropagator Class Reference

#include <coresoftware/blob/master/offline/packages/trackreco/PHActsVertexPropagator.h>

+ Inheritance diagram for PHActsVertexPropagator:
+ Collaboration diagram for PHActsVertexPropagator:

Public Types

using BoundTrackParam = const Acts::BoundTrackParameters
 
using BoundTrackParamResult = Acts::Result< BoundTrackParam >
 
using SurfacePtr = std::shared_ptr< const Acts::Surface >
 
using Trajectory = ActsExamples::Trajectories
 

Public Member Functions

 PHActsVertexPropagator (const std::string &name="PHActsVertexPropagator")
 
int Init (PHCompositeNode *topNode) 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 fieldMap (std::string &fieldmap)
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int EndRun (const int)
 Called at the end of each run.
 
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 getNodes (PHCompositeNode *topNode)
 
ActsPropagator::BTPPairResult propagateTrack (const Acts::BoundTrackParameters &params, const unsigned int vtxid)
 
Acts::Vector3 getVertex (const unsigned int vtxid)
 
void updateSvtxTrack (SvtxTrack *track, const Acts::BoundTrackParameters &params)
 
void setVtxChi2 ()
 

Private Attributes

ActsGeometrym_tGeometry = nullptr
 
SvtxVertexMapm_vertexMap = nullptr
 
SvtxTrackMapm_trackMap = nullptr
 
std::map< const unsigned int,
Trajectory > * 
m_trajectories = nullptr
 
std::string m_fieldMap = ""
 

Additional Inherited Members

- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Definition at line 21 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 21 of file PHActsVertexPropagator.h

Member Typedef Documentation

Definition at line 25 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 25 of file PHActsVertexPropagator.h

Definition at line 26 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 26 of file PHActsVertexPropagator.h

using PHActsVertexPropagator::SurfacePtr = std::shared_ptr<const Acts::Surface>

Definition at line 27 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 27 of file PHActsVertexPropagator.h

Definition at line 28 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 28 of file PHActsVertexPropagator.h

Constructor & Destructor Documentation

PHActsVertexPropagator::PHActsVertexPropagator ( const std::string &  name = "PHActsVertexPropagator")

Definition at line 25 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 25 of file PHActsVertexPropagator.cc

Member Function Documentation

int PHActsVertexPropagator::End ( PHCompositeNode )
overridevirtual

Called at the end of all processing.

Reimplemented from SubsysReco.

Definition at line 215 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 215 of file PHActsVertexPropagator.cc

References Fun4AllReturnCodes::EVENT_OK.

void PHActsVertexPropagator::fieldMap ( std::string &  fieldmap)
inline

Definition at line 37 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 37 of file PHActsVertexPropagator.h

References m_fieldMap.

int PHActsVertexPropagator::getNodes ( PHCompositeNode topNode)
private

Definition at line 220 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 220 of file PHActsVertexPropagator.cc

References Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, m_tGeometry, m_trackMap, m_trajectories, m_vertexMap, and PHWHERE.

Referenced by InitRun().

+ Here is the caller graph for this function:

Acts::Vector3 PHActsVertexPropagator::getVertex ( const unsigned int  vtxid)
private

check that a vertex exists

Definition at line 201 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 201 of file PHActsVertexPropagator.cc

References Acts::UnitConstants::cm, SvtxVertexMap::get(), and m_vertexMap.

Referenced by propagateTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHActsVertexPropagator::Init ( PHCompositeNode )
overridevirtual

Called during initialization. Typically this is where you can book histograms, and e.g. register them to Fun4AllServer (so they can be output to file using Fun4AllServer::dumpHistos() method).

Reimplemented from SubsysReco.

Definition at line 31 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 31 of file PHActsVertexPropagator.cc

References Fun4AllReturnCodes::EVENT_OK.

int PHActsVertexPropagator::InitRun ( PHCompositeNode )
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 36 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 36 of file PHActsVertexPropagator.cc

References getNodes().

+ Here is the call graph for this function:

int PHActsVertexPropagator::process_event ( PHCompositeNode )
overridevirtual

Called for each event. This is where you do the real work.

Key was removed by the track cleaner, remove it from the trajectory list too

Erase the trajectories that were removed from the track cleaner

Reimplemented from SubsysReco.

Definition at line 41 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 41 of file PHActsVertexPropagator.cc

References Fun4AllReturnCodes::EVENT_OK, SvtxTrackMap::get(), m_trackMap, m_trajectories, m_vertexMap, PHWHERE, propagateTrack(), setVtxChi2(), SvtxVertexMap::size(), trajectory, updateSvtxTrack(), and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

ActsPropagator::BTPPairResult PHActsVertexPropagator::propagateTrack ( const Acts::BoundTrackParameters params,
const unsigned int  vtxid 
)
private

create perigee surface

Definition at line 181 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 181 of file PHActsVertexPropagator.cc

References Acts::UnitConstants::cm, getVertex(), m_fieldMap, m_tGeometry, and Fun4AllBase::Verbosity().

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHActsVertexPropagator::setVtxChi2 ( )
private

independent chisq sum additively

Each track contributes independently to x,y,z, so the total ndf is total tracks * 3 minus 1*3 for each independent x,y,z

Definition at line 102 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 102 of file PHActsVertexPropagator.cc

References SvtxTrackMap::get(), SvtxTrack::get_error(), SvtxTrack::get_x(), SvtxTrack::get_y(), SvtxTrack::get_z(), m_trackMap, and m_vertexMap.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHActsVertexPropagator::updateSvtxTrack ( SvtxTrack track,
const Acts::BoundTrackParameters params 
)
private

Update covariance

Definition at line 142 of file PHActsVertexPropagator.cc.

View newest version in sPHENIX GitHub at line 142 of file PHActsVertexPropagator.cc

References Acts::UnitConstants::cm, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::covariance(), ActsGeometry::geometry(), SvtxTrack::get_x(), SvtxTrack::get_y(), SvtxTrack::get_z(), ActsTrackingGeometry::getGeoContext(), i, j, m_tGeometry, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::momentum(), Acts::GenericBoundTrackParameters< particle_hypothesis_t >::position(), position, ActsTransformations::rotateActsCovToSvtxTrack(), SvtxTrack::set_error(), SvtxTrack::set_px(), SvtxTrack::set_py(), SvtxTrack::set_pz(), SvtxTrack::set_x(), SvtxTrack::set_y(), SvtxTrack::set_z(), ActsTransformations::setVerbosity(), and Fun4AllBase::Verbosity().

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

std::string PHActsVertexPropagator::m_fieldMap = ""
private

Definition at line 53 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 53 of file PHActsVertexPropagator.h

Referenced by fieldMap(), and propagateTrack().

ActsGeometry* PHActsVertexPropagator::m_tGeometry = nullptr
private

Definition at line 49 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 49 of file PHActsVertexPropagator.h

Referenced by getNodes(), propagateTrack(), and updateSvtxTrack().

SvtxTrackMap* PHActsVertexPropagator::m_trackMap = nullptr
private

Definition at line 51 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 51 of file PHActsVertexPropagator.h

Referenced by getNodes(), process_event(), and setVtxChi2().

std::map<const unsigned int, Trajectory>* PHActsVertexPropagator::m_trajectories = nullptr
private

Definition at line 52 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 52 of file PHActsVertexPropagator.h

Referenced by getNodes(), and process_event().

SvtxVertexMap* PHActsVertexPropagator::m_vertexMap = nullptr
private

Definition at line 50 of file PHActsVertexPropagator.h.

View newest version in sPHENIX GitHub at line 50 of file PHActsVertexPropagator.h

Referenced by getNodes(), getVertex(), process_event(), and setVtxChi2().


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