33 : theGeometricSearchTracker(tkLayout), theOutLayerOnlyFlag(outOnly), theEpsilon(-0.01) {}
43 vector<const DetLayer*>
output;
53 else if (eta0 < -1.55)
56 if (fabs(eta0) < 1.67)
61 else if (eta0 < -1.17)
65 if (fabs(eta0) < 1.35)
70 else if (eta0 < -0.97)
74 LogTrace(
"Muon|RecoMuon|DirectionTrackerNavigation") <<
"No implementation for inward state at this moment. ";
180 float radius = bc.radius();
181 float length = bc.bounds().length() / 2.;
185 return (fabs(eta0) <= (fabs(eta) +
theEpsilon));
196 float outRadius = bd.outerRadius();
197 float inRadius = bd.innerRadius();
198 float z = bd.position().z();
221 return -
log((
tan(atan(r / z) / 2.)));
222 return log(-(
tan(atan(r / z) / 2.)));
void inOutPx(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutTIB(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
std::vector< ForwardDetLayer const * > const & posPixelForwardLayers() const
void inOutFTID(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutBTID(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
std::vector< BarrelDetLayer const * > const & tobLayers() const
virtual const BoundCylinder & specificSurface() const final
Extension of the interface.
void inOutTOB(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
std::vector< ForwardDetLayer const * > const & negPixelForwardLayers() const
edm::ESHandle< GeometricSearchTracker > theGeometricSearchTracker
DirectTrackerNavigation(const edm::ESHandle< GeometricSearchTracker > &, bool outOnly=true)
constructor
Tan< T >::type tan(const T &t)
std::vector< BarrelDetLayer const * > const & pixelBarrelLayers() const
bool checkCompatible(const FreeTrajectoryState &, const BarrelDetLayer *) const
GlobalVector momentum() const
void inOutFPx(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
GlobalPoint position() const
float calculateEta(float r, float z) const
void inOutBTEC(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
virtual const BoundDisk & specificSurface() const final
std::vector< BarrelDetLayer const * > const & tibLayers() const
std::vector< ForwardDetLayer const * > const & posTecLayers() const
bool outward(const FreeTrajectoryState &) const
void inOutFTEC(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
std::vector< ForwardDetLayer const * > const & negTidLayers() const
std::vector< ForwardDetLayer const * > const & posTidLayers() const
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection timeDirection) const
find compatible layers for a given trajectory state
std::vector< ForwardDetLayer const * > const & negTecLayers() const
const BasicVectorType & basicVector() const
void inOutBPx(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
T dot(const Basic3DVector &rh) const
Scalar product, or "dot" product, with a vector of same type.