CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
PixelHitMatcher::ForwardMeasurementEstimator Struct Reference

Public Member Functions

bool operator() (const GlobalPoint &vprim, const TrajectoryStateOnSurface &, const GlobalPoint &, int charge) const
 

Public Attributes

float thePhiMax
 
float thePhiMin
 
float theRMax
 
const float theRMaxI
 
float theRMin
 
const float theRMinI
 

Detailed Description

Definition at line 79 of file PixelHitMatcher.h.

Member Function Documentation

bool PixelHitMatcher::ForwardMeasurementEstimator::operator() ( const GlobalPoint vprim,
const TrajectoryStateOnSurface absolute_ts,
const GlobalPoint absolute_gp,
int  charge 
) const

Definition at line 15 of file PixelHitMatcher.cc.

References funct::abs(), PV3DBase< T, PVType, FrameType >::barePhi(), validate-o2o-wbm::f, TrajectoryStateOnSurface::globalParameters(), runTauDisplay::gp, normalizedPhi(), PV3DBase< T, PVType, FrameType >::perp(), GlobalTrajectoryParameters::position(), and PV3DBase< T, PVType, FrameType >::z().

18  {
19  GlobalVector ts = absolute_ts.globalParameters().position() - vprim;
20  GlobalVector gp = absolute_gp - vprim;
21 
22  float rDiff = gp.perp() - ts.perp();
23  float rMin = theRMin;
24  float rMax = theRMax;
25  float myZ = gp.z();
26  if ((std::abs(myZ) > 70.f) & (std::abs(myZ) < 170.f)) {
27  rMin = theRMinI;
28  rMax = theRMaxI;
29  }
30 
31  if ((rDiff >= rMax) | (rDiff <= rMin))
32  return false;
33 
34  float phiDiff = -charge * normalizedPhi(gp.barePhi() - ts.barePhi());
35 
36  return (phiDiff < thePhiMax) & (phiDiff > thePhiMin);
37 }
T perp() const
Definition: PV3DBase.h:69
constexpr T normalizedPhi(T phi)
Definition: normalizedPhi.h:8
T barePhi() const
Definition: PV3DBase.h:65
T z() const
Definition: PV3DBase.h:61
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
const GlobalTrajectoryParameters & globalParameters() const

Member Data Documentation

float PixelHitMatcher::ForwardMeasurementEstimator::thePhiMax

Definition at line 83 of file PixelHitMatcher.h.

Referenced by PixelHitMatcher::set1stLayer(), and PixelHitMatcher::set2ndLayer().

float PixelHitMatcher::ForwardMeasurementEstimator::thePhiMin

Definition at line 82 of file PixelHitMatcher.h.

Referenced by PixelHitMatcher::set1stLayer(), and PixelHitMatcher::set2ndLayer().

float PixelHitMatcher::ForwardMeasurementEstimator::theRMax

Definition at line 85 of file PixelHitMatcher.h.

Referenced by PixelHitMatcher::set1stLayerZRange().

const float PixelHitMatcher::ForwardMeasurementEstimator::theRMaxI

Definition at line 87 of file PixelHitMatcher.h.

float PixelHitMatcher::ForwardMeasurementEstimator::theRMin

Definition at line 84 of file PixelHitMatcher.h.

Referenced by PixelHitMatcher::set1stLayerZRange().

const float PixelHitMatcher::ForwardMeasurementEstimator::theRMinI

Definition at line 86 of file PixelHitMatcher.h.