CMS 3D CMS Logo

Public Member Functions | Private Attributes

PerigeeTrajectoryParameters Class Reference

#include <PerigeeTrajectoryParameters.h>

List of all members.

Public Member Functions

TrackCharge charge () const
double longitudinalImpactParameter () const
 PerigeeTrajectoryParameters ()
 PerigeeTrajectoryParameters (const AlgebraicVector5 &aVector, bool charged=true)
 PerigeeTrajectoryParameters (double aCurv, double aTheta, double aPhi, double aTip, double aLip, bool charged=true)
double phi () const
double theta () const
double transverseCurvature () const
double transverseImpactParameter () const
const AlgebraicVector5vector () const

Private Attributes

TrackCharge theCharge
AlgebraicVector5 theVector

Detailed Description

Class providing access to the Perigee parameters of a trajectory. These parameters consist of
rho : charged particles: transverse curvature (signed)
neutral particles: inverse magnitude of transverse momentum
theta, phi, transverse impact parameter (signed), longitudinal i.p.

Definition at line 16 of file PerigeeTrajectoryParameters.h.


Constructor & Destructor Documentation

PerigeeTrajectoryParameters::PerigeeTrajectoryParameters ( ) [inline]

Definition at line 21 of file PerigeeTrajectoryParameters.h.

{}
PerigeeTrajectoryParameters::PerigeeTrajectoryParameters ( const AlgebraicVector5 aVector,
bool  charged = true 
) [inline, explicit]

Definition at line 25 of file PerigeeTrajectoryParameters.h.

References theCharge, and theVector.

                                                                                            :
        theVector(aVector) {
    if ( charged )
      theCharge = theVector[0]>0 ? -1 : 1;
    else
      theCharge = 0;
  }
PerigeeTrajectoryParameters::PerigeeTrajectoryParameters ( double  aCurv,
double  aTheta,
double  aPhi,
double  aTip,
double  aLip,
bool  charged = true 
) [inline]

Definition at line 33 of file PerigeeTrajectoryParameters.h.

References theCharge, and theVector.

                                                                             {
    theVector[0] = aCurv;
    theVector[1] = aTheta;
    theVector[2] = aPhi;
    theVector[3] = aTip;
    theVector[4] = aLip;

    if ( charged )
      theCharge = aCurv>0 ? -1 : 1;
    else
      theCharge = 0;
  }

Member Function Documentation

TrackCharge PerigeeTrajectoryParameters::charge ( void  ) const [inline]
double PerigeeTrajectoryParameters::longitudinalImpactParameter ( ) const [inline]

The longitudinal impact parameter

Definition at line 81 of file PerigeeTrajectoryParameters.h.

References theVector.

{return theVector[4];}
double PerigeeTrajectoryParameters::phi ( void  ) const [inline]
double PerigeeTrajectoryParameters::theta ( void  ) const [inline]
double PerigeeTrajectoryParameters::transverseCurvature ( ) const [inline]

The signed transverse curvature

Definition at line 57 of file PerigeeTrajectoryParameters.h.

References charge(), and theVector.

{return ((charge()!=0)?theVector[0]:0.);}
double PerigeeTrajectoryParameters::transverseImpactParameter ( ) const [inline]

The (signed) transverse impact parameter

Definition at line 75 of file PerigeeTrajectoryParameters.h.

References theVector.

Referenced by HLTMuon::analyze().

{return theVector[3];}
const AlgebraicVector5& PerigeeTrajectoryParameters::vector ( ) const [inline]

returns the perigee parameters as a vector. The order of the parameters are:
transverse curvature (signed), theta, phi, transverse impact parameter (signed), longitudinal i.p.

Definition at line 89 of file PerigeeTrajectoryParameters.h.

References theVector.

Referenced by VertexFitterResult::fillParameters(), MatcherUsingTracksAlgorithm::getChi2(), PerigeeRefittedTrackState::parameters(), PerigeeConversions::positionFromPerigee(), PerigeeLinearizedTrackState::predictedStateMomentumParameters(), and PerigeeLinearizedTrackState::predictedStateParameters().

{ return theVector;}

Member Data Documentation

Definition at line 94 of file PerigeeTrajectoryParameters.h.

Referenced by charge(), and PerigeeTrajectoryParameters().