CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
L1MuonPixelTrackFitter::Circle Class Reference

#include <L1MuonPixelTrackFitter.h>

Public Types

typedef Point3DBase< long double, GlobalTagPoint
 
typedef Vector3DBase< long double, GlobalTagVector
 

Public Member Functions

const Pointcenter () const
 
 Circle ()
 
 Circle (const GlobalPoint &h1, const GlobalPoint &h2, double curvature)
 
const long double & curvature () const
 
bool isValid () const
 

Private Attributes

Point theCenter
 
long double theCurvature
 
bool theValid
 

Detailed Description

Definition at line 26 of file L1MuonPixelTrackFitter.h.

Member Typedef Documentation

Definition at line 29 of file L1MuonPixelTrackFitter.h.

Definition at line 28 of file L1MuonPixelTrackFitter.h.

Constructor & Destructor Documentation

L1MuonPixelTrackFitter::Circle::Circle ( )
inline

Definition at line 30 of file L1MuonPixelTrackFitter.h.

L1MuonPixelTrackFitter::Circle::Circle ( const GlobalPoint h1,
const GlobalPoint h2,
double  curvature 
)
inline

Definition at line 31 of file L1MuonPixelTrackFitter.h.

References funct::abs(), ALCARECOTkAlJpsiMuMu_cff::charge, Vector3DBase< T, FrameTag >::cross(), reco::dp, RecoEcal_EventContent_cff::ec, p1, p2, PV3DBase< T, PVType, FrameType >::perp2(), and mathSSE::sqrt().

32  Point p1(h1); Point p2(h2); Vector dp = (p2-p1)/2.; int charge = theCurvature > 0 ? 1 : -1;
33  Vector ec = charge * dp.cross(Vector(0,0,1)).unit();
34  long double dist_tmp = 1./theCurvature/theCurvature - dp.perp2();
35  theValid = (dist_tmp > 0.);
36  theCenter = p1+dp + ec*sqrt( std::abs(dist_tmp ) );
37  }
Vector3DBase< long double, GlobalTag > Vector
ROOT::Math::Plane3D::Vector Vector
Definition: EcalHitMaker.cc:29
T sqrt(T t)
Definition: SSEVec.h:18
math::XYZPoint Point
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
double p2[4]
Definition: TauolaWrapper.h:90
const long double & curvature() const
auto dp
Definition: deltaR.h:22
double p1[4]
Definition: TauolaWrapper.h:89

Member Function Documentation

const Point& L1MuonPixelTrackFitter::Circle::center ( ) const
inline
const long double& L1MuonPixelTrackFitter::Circle::curvature ( ) const
inline

Definition at line 40 of file L1MuonPixelTrackFitter.h.

bool L1MuonPixelTrackFitter::Circle::isValid ( void  ) const
inline

Member Data Documentation

Point L1MuonPixelTrackFitter::Circle::theCenter
private

Definition at line 44 of file L1MuonPixelTrackFitter.h.

long double L1MuonPixelTrackFitter::Circle::theCurvature
private

Definition at line 43 of file L1MuonPixelTrackFitter.h.

bool L1MuonPixelTrackFitter::Circle::theValid
private

Definition at line 42 of file L1MuonPixelTrackFitter.h.