CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
MultiTrackKinematicConstraint Class Referenceabstract

#include <MultiTrackKinematicConstraint.h>

Inheritance diagram for MultiTrackKinematicConstraint:
ColinearityKinematicConstraint CombinedKinematicConstraint MultiTrackMassKinematicConstraint MultiTrackPointingKinematicConstraint MultiTrackVertexLinkKinematicConstraint TwoTrackMassKinematicConstraint VertexKinematicConstraint

Public Member Functions

virtual
MultiTrackKinematicConstraint
clone () const =0
 
 MultiTrackKinematicConstraint ()
 
virtual int numberOfEquations () const =0
 
virtual AlgebraicMatrix parametersDerivative (const std::vector< KinematicState > &, const GlobalPoint &) const =0
 
virtual AlgebraicMatrix positionDerivative (const std::vector< KinematicState > &, const GlobalPoint &) const =0
 
virtual AlgebraicVector value (const std::vector< KinematicState > &, const GlobalPoint &) const =0
 
virtual ~MultiTrackKinematicConstraint ()
 

Detailed Description

Pure abstract class implementing constraint application on multiple tracks (back to back, collinearity etc.) To be used by KinematicConstraindeVertexFitter only Class caches the information about calculation of of constraint equation derivatives and values at given linearization point. Point should be of 7*n+3 dimensions Where n - number of particles. 7 - parametrization for particles is (x,y,z,p_x,p_y,p_z,m), for vertex (x_v,y_v,z_v) Fitter usually takes current parameters as the first step point and the change it to the result of the first iteration.

Kirill Prokofiev, October 2003

Definition at line 24 of file MultiTrackKinematicConstraint.h.

Constructor & Destructor Documentation

MultiTrackKinematicConstraint::MultiTrackKinematicConstraint ( )
inline

Default constructor and destructor

Definition at line 32 of file MultiTrackKinematicConstraint.h.

32 {}
virtual MultiTrackKinematicConstraint::~MultiTrackKinematicConstraint ( )
inlinevirtual

Definition at line 34 of file MultiTrackKinematicConstraint.h.

34 {}

Member Function Documentation

virtual MultiTrackKinematicConstraint* MultiTrackKinematicConstraint::clone ( ) const
pure virtual
virtual int MultiTrackKinematicConstraint::numberOfEquations ( ) const
pure virtual
virtual AlgebraicMatrix MultiTrackKinematicConstraint::parametersDerivative ( const std::vector< KinematicState > &  ,
const GlobalPoint  
) const
pure virtual
virtual AlgebraicMatrix MultiTrackKinematicConstraint::positionDerivative ( const std::vector< KinematicState > &  ,
const GlobalPoint  
) const
pure virtual
virtual AlgebraicVector MultiTrackKinematicConstraint::value ( const std::vector< KinematicState > &  ,
const GlobalPoint  
) const
pure virtual

Methods making vector of values and derivative matrices with respect to vertex position and particle parameters. Input paramters are put into one vector: (Vertex position, particle_parameters_1,..., particle_parameters_n)

Implemented in TwoTrackMassKinematicConstraint, CombinedKinematicConstraint, MultiTrackMassKinematicConstraint, MultiTrackPointingKinematicConstraint, ColinearityKinematicConstraint, MultiTrackVertexLinkKinematicConstraint, and VertexKinematicConstraint.

Referenced by KinematicConstrainedVertexUpdator::update().