1 #ifndef RecoMuon_TrackerSeedGenerator_L1MuonPixelTrackFitter_H 2 #define RecoMuon_TrackerSeedGenerator_L1MuonPixelTrackFitter_H 15 namespace reco {
class Track;}
32 Point
p1(h1); Point
p2(h2); Vector dp = (p2-
p1)/2.;
int charge = theCurvature > 0 ? 1 : -1;
34 long double dist_tmp = 1./theCurvature/theCurvature - dp.
perp2();
35 theValid = (dist_tmp > 0.);
39 const Point &
center()
const {
return theCenter; }
40 const long double &
curvature()
const {
return theCurvature; }
58 const std::vector<const TrackingRecHit *>& hits,
61 static double getBending(
double invPt,
double eta,
int charge);
62 static double getBendingError(
double invPt,
double eta);
65 double valInversePt(
double phi0,
double phiL1,
double eta)
const;
66 double errInversePt(
double invPt,
double eta)
const;
68 double valPhi(
const Circle &
c,
int charge)
const;
69 double errPhi(
double invPt,
double eta)
const;
72 double errCotTheta(
double invPt,
double eta)
const;
75 double errZip(
double invPt,
double eta)
const;
77 double valTip(
const Circle &c,
double curvature)
const;
78 double errTip(
double invPt,
double eta)
const;
80 double findPt(
double phi0,
double phiL1,
double eta,
int charge)
const;
81 double deltaPhi(
double phi1,
double phi2)
const;
82 static void param(
double eta,
double &p1,
double&
p2,
double&
p3);
103 friend class L1Seeding;
Vector3DBase< long double, GlobalTag > Vector
ROOT::Math::Plane3D::Vector Vector
const Point & center() const
virtual ~L1MuonPixelTrackFitter()
Point3DBase< long double, GlobalTag > Point
T curvature(T InversePt, const edm::EventSetup &iSetup)
Vector3DBase< typename PreciseFloatType< T, U >::Type, FrameTag > cross(const Vector3DBase< U, FrameTag > &v) const
Abs< T >::type abs(const T &t)
const double phiErrorScale
const long double & curvature() const
const double zipErrorScale
edm::ParameterSet theConfig
const double cotThetaErrorScale
Circle(const GlobalPoint &h1, const GlobalPoint &h2, double curvature)
const double invPtErrorScale
const double tipErrorScale