CMS 3D CMS Logo

Public Member Functions | Private Attributes

KinematicState Class Reference

#include <KinematicState.h>

List of all members.

Public Member Functions

FreeTrajectoryState freeTrajectoryState () const
GlobalVector globalMomentum () const
GlobalPoint globalPosition () const
bool isValid () const
KinematicParameters const & kinematicParameters () const
KinematicParametersError const & kinematicParametersError () const
 KinematicState ()
 KinematicState (const KinematicParameters &parameters, const KinematicParametersError &error, const TrackCharge &charge, const MagneticField *field)
const MagneticFieldmagneticField () const
ParticleMass mass () const
bool operator== (const KinematicState &other) const
TrackCharge particleCharge () const

Private Attributes

TrackCharge ch
KinematicParametersError err
KinematicParameters param
const MagneticFieldtheField
bool vl

Detailed Description

Class providing a state of particle needed for Kinematic Fit.

Kirill Prokofiev, March 2003

Definition at line 18 of file KinematicState.h.


Constructor & Destructor Documentation

KinematicState::KinematicState ( ) [inline]

Default constructor for internal KinematicFitPrimitives library needs only

Definition at line 27 of file KinematicState.h.

References vl.

 {vl = false;}
KinematicState::KinematicState ( const KinematicParameters parameters,
const KinematicParametersError error,
const TrackCharge charge,
const MagneticField field 
)

Constructor taking directly KinematicParameters KinematicError and Charge. To be used with proper KinematicStateBuilder.

Definition at line 4 of file KinematicState.cc.

                                    :
        theField(field), param(parameters),err(error), ch(charge), vl(true)
{}

Member Function Documentation

FreeTrajectoryState KinematicState::freeTrajectoryState ( ) const

KinematicState -> FreeTrajectoryState converter

Definition at line 20 of file KinematicState.cc.

References globalMomentum(), globalPosition(), kinematicParametersError(), KinematicParametersError::matrix(), particleCharge(), and theField.

Referenced by PerigeeKinematicState::PerigeeKinematicState(), TrackKinematicStatePropagator::propagateToTheTransversePCACharged(), and TrackKinematicStatePropagator::propagateToTheTransversePCANeutral().

{
 GlobalTrajectoryParameters globalPar(globalPosition(), globalMomentum(),
        particleCharge(), theField);
 AlgebraicSymMatrix66 cError =
        kinematicParametersError().matrix().Sub<AlgebraicSymMatrix66>(0,0);
 CartesianTrajectoryError cartError(cError);
// cout<<"conversion called"<<endl;
// cout<<"parameters::position"<<globalPosition()<<endl;
// cout<<"parameters::momentum"<<globalMomentum()<<endl;
// cout<<"parameters::error"<<cError<<endl;
 return FreeTrajectoryState(globalPar,cartError);
}
GlobalVector KinematicState::globalMomentum ( ) const [inline]
GlobalPoint KinematicState::globalPosition ( ) const [inline]
bool KinematicState::isValid ( void  ) const [inline]
KinematicParameters const& KinematicState::kinematicParameters ( ) const [inline]
KinematicParametersError const& KinematicState::kinematicParametersError ( ) const [inline]
const MagneticField* KinematicState::magneticField ( ) const [inline]
ParticleMass KinematicState::mass ( ) const [inline]
bool KinematicState::operator== ( const KinematicState other) const

Definition at line 11 of file KinematicState.cc.

References kinematicParameters(), kinematicParametersError(), KinematicParametersError::matrix(), and KinematicParameters::vector().

{
 bool res = false;
 if((kinematicParameters().vector() == other.kinematicParameters().vector())&&
    (kinematicParametersError().matrix() == other.kinematicParametersError().matrix())) res = true;
 return res;
}
TrackCharge KinematicState::particleCharge ( ) const [inline]

Member Data Documentation

Definition at line 80 of file KinematicState.h.

Referenced by particleCharge().

Definition at line 79 of file KinematicState.h.

Referenced by kinematicParametersError().

Definition at line 78 of file KinematicState.h.

Referenced by globalMomentum(), globalPosition(), kinematicParameters(), and mass().

Definition at line 77 of file KinematicState.h.

Referenced by freeTrajectoryState(), and magneticField().

bool KinematicState::vl [private]

Definition at line 82 of file KinematicState.h.

Referenced by isValid(), and KinematicState().