ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CylindricalHough Class Reference

#include <coresoftware/blob/master/offline/packages/HelixHough/helix_hough/CylindricalHough/CylindricalHough.h>

+ Inheritance diagram for CylindricalHough:
+ Collaboration diagram for CylindricalHough:

Public Member Functions

 CylindricalHough (std::vector< float > &detrad, unsigned int inv_radius_nbin, unsigned int center_angle_nbin, unsigned int dca_origin_nbin, CircleResolution &min_resolution, CircleResolution &max_resolution, CircleRange &range, unsigned int z0_nbin, unsigned int theta_nbin, ZResolution &minzres, ZResolution &maxzres, ZRange &zrange, double sxy=70.e-4, double sz=500.e-4)
 
 ~CylindricalHough ()
 
void customFindHelicesInit (std::vector< SimpleHit3D > &hits, unsigned int min_hits, unsigned int max_hits, unsigned int min_zhits, unsigned int max_zhits, double chi2_cut, float xydiffcut, std::vector< SimpleTrack3D > &tracks, unsigned int maxtracks=0)
 
void addHits (unsigned int zlevel, std::vector< SimpleTrack3D > &temptracks, std::vector< SimpleTrack3D > &tracks, std::vector< float > &params, int tracks_per_hit, float z_cut)
 
void init_ZHough (int z0_nbin, unsigned int theta_nbin, ZResolution &minzres, ZResolution &maxzres, ZRange &zrange)
 
void setVertex (double vx, double vy, double vz)
 
void setPhiCut (double pc)
 
bool intersect_circles (bool hel, double startx, double starty, double rad_det, double rad_trk, double cx, double cy, double &x, double &y)
 
void setLayerResolution (std::vector< double > &lxy, std::vector< double > &lz)
 
void setVertexResolution (double vxy, double vz)
 

Private Attributes

std::vector< AngleIndexListangle_list
 
std::vector< float > detector_radii
 
double vertex_x
 
double vertex_y
 
double vertex_z
 
double phicut
 

Detailed Description

Definition at line 185 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 185 of file CylindricalHough.h

Constructor & Destructor Documentation

CylindricalHough::CylindricalHough ( std::vector< float > &  detrad,
unsigned int  inv_radius_nbin,
unsigned int  center_angle_nbin,
unsigned int  dca_origin_nbin,
CircleResolution &  min_resolution,
CircleResolution &  max_resolution,
CircleRange &  range,
unsigned int  z0_nbin,
unsigned int  theta_nbin,
ZResolution &  minzres,
ZResolution &  maxzres,
ZRange &  zrange,
double  sxy = 70.e-4,
double  sz = 500.e-4 
)

Definition at line 61 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 61 of file CylindricalHough.cpp

References detector_radii, and init_ZHough().

+ Here is the call graph for this function:

CylindricalHough::~CylindricalHough ( )

Definition at line 71 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 71 of file CylindricalHough.cpp

Member Function Documentation

void CylindricalHough::addHits ( unsigned int  zlevel,
std::vector< SimpleTrack3D > &  temptracks,
std::vector< SimpleTrack3D > &  tracks,
std::vector< float > &  params,
int  tracks_per_hit,
float  z_cut 
)

Definition at line 125 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 125 of file CylindricalHough.cpp

References angle_list, Acts::VectorHelpers::cross(), D(), detector_radii, dz, dzdl, e, Acts::UnitConstants::h, hits(), int(), intersect_circles(), k, G4TTL::layer, M_PI, phi, phicut, r, temp1, temp2, and v.

+ Here is the call graph for this function:

void CylindricalHough::customFindHelicesInit ( std::vector< SimpleHit3D > &  hits,
unsigned int  min_hits,
unsigned int  max_hits,
unsigned int  min_zhits,
unsigned int  max_zhits,
double  chi2_cut,
float  xydiffcut,
std::vector< SimpleTrack3D > &  tracks,
unsigned int  maxtracks = 0 
)

Definition at line 107 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 107 of file CylindricalHough.cpp

References angle_list, and detector_radii.

void CylindricalHough::init_ZHough ( int  z0_nbin,
unsigned int  theta_nbin,
ZResolution &  minzres,
ZResolution &  maxzres,
ZRange &  zrange 
)

Definition at line 77 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 77 of file CylindricalHough.cpp

References detector_radii, setLayerResolution(), and setVertexResolution().

Referenced by CylindricalHough().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool CylindricalHough::intersect_circles ( bool  hel,
double  startx,
double  starty,
double  rad_det,
double  rad_trk,
double  cx,
double  cy,
double &  x,
double &  y 
)

Definition at line 8 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 8 of file CylindricalHough.cpp

References a, d, d2, Acts::UnitConstants::h, r2, ux, and uy.

Referenced by addHits().

+ Here is the caller graph for this function:

void CylindricalHough::setLayerResolution ( std::vector< double > &  lxy,
std::vector< double > &  lz 
)

Definition at line 95 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 95 of file CylindricalHough.cpp

Referenced by init_ZHough().

+ Here is the caller graph for this function:

void CylindricalHough::setPhiCut ( double  pc)
inline

Definition at line 205 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 205 of file CylindricalHough.h

References pc, and phicut.

void CylindricalHough::setVertex ( double  vx,
double  vy,
double  vz 
)
inline

Definition at line 197 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 197 of file CylindricalHough.h

References vertex_x, vertex_y, and vertex_z.

void CylindricalHough::setVertexResolution ( double  vxy,
double  vz 
)

Definition at line 101 of file CylindricalHough.cpp.

View newest version in sPHENIX GitHub at line 101 of file CylindricalHough.cpp

Referenced by init_ZHough().

+ Here is the caller graph for this function:

Member Data Documentation

std::vector<AngleIndexList> CylindricalHough::angle_list
private

Definition at line 213 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 213 of file CylindricalHough.h

Referenced by addHits(), and customFindHelicesInit().

std::vector<float> CylindricalHough::detector_radii
private

Definition at line 214 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 214 of file CylindricalHough.h

Referenced by addHits(), customFindHelicesInit(), CylindricalHough(), and init_ZHough().

double CylindricalHough::phicut
private

Definition at line 216 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 216 of file CylindricalHough.h

Referenced by addHits(), and setPhiCut().

double CylindricalHough::vertex_x
private

Definition at line 215 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 215 of file CylindricalHough.h

Referenced by setVertex().

double CylindricalHough::vertex_y
private

Definition at line 215 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 215 of file CylindricalHough.h

Referenced by setVertex().

double CylindricalHough::vertex_z
private

Definition at line 215 of file CylindricalHough.h.

View newest version in sPHENIX GitHub at line 215 of file CylindricalHough.h

Referenced by setVertex().


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