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. ";
78 std::reverse(output.begin(), output.end());
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.)));
static std::vector< std::string > checklist log
void inOutPx(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutTIB(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutFTID(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutBTID(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
void inOutTOB(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
edm::ESHandle< GeometricSearchTracker > theGeometricSearchTracker
DirectTrackerNavigation(const edm::ESHandle< GeometricSearchTracker > &, bool outOnly=true)
constructor
Tan< T >::type tan(const T &t)
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 BoundCylinder & specificSurface() const final
Extension of the interface.
bool outward(const FreeTrajectoryState &) const
void inOutFTEC(const FreeTrajectoryState &, std::vector< const DetLayer * > &) const
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection timeDirection) const
find compatible layers for a given trajectory state
virtual const BoundDisk & specificSurface() const final
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.