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 27 of file L1MuonPixelTrackFitter.h.

Member Typedef Documentation

◆ Point

Definition at line 30 of file L1MuonPixelTrackFitter.h.

◆ Vector

Definition at line 29 of file L1MuonPixelTrackFitter.h.

Constructor & Destructor Documentation

◆ Circle() [1/2]

L1MuonPixelTrackFitter::Circle::Circle ( )
inline

Definition at line 31 of file L1MuonPixelTrackFitter.h.

◆ Circle() [2/2]

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

Definition at line 32 of file L1MuonPixelTrackFitter.h.

References funct::abs(), ALCARECOTkAlJpsiMuMu_cff::charge, Calorimetry_cff::dp, LaserDQM_cfg::p1, SiStripOfflineCRack_cfg::p2, mathSSE::sqrt(), theCenter, theCurvature, and theValid.

33  Point p1(h1);
34  Point p2(h2);
35  Vector dp = (p2 - p1) / 2.;
36  int charge = theCurvature > 0 ? 1 : -1;
37  Vector ec = charge * dp.cross(Vector(0, 0, 1)).unit();
38  long double dist_tmp = 1. / theCurvature / theCurvature - dp.perp2();
39  theValid = (dist_tmp > 0.);
40  theCenter = p1 + dp + ec * sqrt(std::abs(dist_tmp));
41  }
Vector3DBase< long double, GlobalTag > Vector
const long double & curvature() const
ROOT::Math::Plane3D::Vector Vector
Definition: EcalHitMaker.cc:29
T sqrt(T t)
Definition: SSEVec.h:23
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
Structure Point Contains parameters of Gaussian fits to DMRs.

Member Function Documentation

◆ center()

const Point& L1MuonPixelTrackFitter::Circle::center ( ) const
inline

◆ curvature()

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

Definition at line 44 of file L1MuonPixelTrackFitter.h.

References theCurvature.

◆ isValid()

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

Member Data Documentation

◆ theCenter

Point L1MuonPixelTrackFitter::Circle::theCenter
private

Definition at line 49 of file L1MuonPixelTrackFitter.h.

Referenced by center(), and Circle().

◆ theCurvature

long double L1MuonPixelTrackFitter::Circle::theCurvature
private

Definition at line 48 of file L1MuonPixelTrackFitter.h.

Referenced by Circle(), and curvature().

◆ theValid

bool L1MuonPixelTrackFitter::Circle::theValid
private

Definition at line 47 of file L1MuonPixelTrackFitter.h.

Referenced by Circle(), and isValid().