23 if (newStatePair.first) {
41 if (newStatePair.first) {
71 double pxOrig = pvecOrig.
x();
72 double pyOrig = pvecOrig.
y();
73 double pzOrig = pvecOrig.
z();
74 double xOrig = xvecOrig.
x();
75 double yOrig = xvecOrig.
y();
76 double zOrig = xvecOrig.
z();
79 double fac = 1./originalFTS.
charge()/
102 std::pair<bool,double> propResult = planeCrossing.
pathLength(*plane);
103 if ( !propResult.first ) {
104 edm::LogWarning (
"TSCPBuilderNoMaterial") <<
"Propagation to perigee plane failed!";
107 double s = propResult.second;
112 pGen *= pvecOrig.
mag()/pGen.mag();
144 double xOrig = xvecOrig.
x();
145 double yOrig = xvecOrig.
y();
146 double zOrig = xvecOrig.
z();
147 double xR = referencePoint.
x();
148 double yR = referencePoint.
y();
150 double s2D = (xR - xOrig) *
cos(phi) + (yR - yOrig) *
sin(phi);
151 double s = s2D /
sin(theta);
152 double xGen = xOrig + s2D*
cos(phi);
153 double yGen = yOrig + s2D*
sin(phi);
154 double zGen = zOrig + s2D/
tan(theta);
virtual PositionType position(double s) const
T y() const
Cartesian y coordinate.
T x() const
Cartesian x coordinate.
virtual TrajectoryStateClosestToPoint operator()(const FTS &originalFTS, const GlobalPoint &referencePoint) const
const GlobalTrajectoryParameters & parameters() const
Sin< T >::type sin(const T &t)
TrajectoryStateClosestToPoint constructTSCP(const FTS &originalFTS, const GlobalPoint &referencePoint) const
PairBoolFTS createFTSatTransverseImpactPointCharged(const FTS &originalFTS, const GlobalPoint &referencePoint) const
Geom::Phi< T > phi() const
Global3DPoint GlobalPoint
GlobalPoint globalPosition() const
Geom::Theta< T > theta() const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
TrackCharge charge() const
std::pair< bool, FreeTrajectoryState > PairBoolFTS
const CurvilinearTrajectoryError & curvilinearError() const
Geom::Theta< T > theta() const
virtual GlobalVector inInverseGeV(const GlobalPoint &gp) const
Field value ad specified global point, in 1/Gev.
FreeTrajectoryState * freeState(bool withErrors=true) const
T z() const
Cartesian z coordinate.
bool positionEqual(const GlobalPoint &ptB, const GlobalPoint &ptA) const
Cos< T >::type cos(const T &t)
Vector3DBase< double, GlobalTag > GlobalVectorDouble
Tan< T >::type tan(const T &t)
virtual const AlgebraicMatrix55 & jacobian() const
GlobalVector momentum() const
virtual std::pair< bool, double > pathLength(const Plane &)
Vector3DBase unit() const
GlobalPoint position() const
double transverseCurvature() const
const AlgebraicSymMatrix55 & matrix() const
const MagneticField & magneticField() const
PairBoolFTS createFTSatTransverseImpactPointNeutral(const FTS &originalFTS, const GlobalPoint &referencePoint) const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepStd< double, 5, 5 > > AlgebraicMatrix55
virtual DirectionType direction(double s) const
Global3DVector GlobalVector
PairBoolFTS createFTSatTransverseImpactPoint(const FTS &originalFTS, const GlobalPoint &referencePoint) const