CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
KinematicConstraint.h
Go to the documentation of this file.
1 #ifndef KinematicConstraint_H
2 #define KinematicConstraint_H
3 
7 
23 
24 
25 public:
26 
32 
34 
42 virtual std::pair<AlgebraicVector, AlgebraicVector> value(const AlgebraicVector& exPoint) const = 0;
43 
44 virtual std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const AlgebraicVector& exPoint) const = 0;
45 
46 
53 virtual std::pair<AlgebraicVector, AlgebraicVector> value(const std::vector<RefCountedKinematicParticle> &par) const = 0;
54 
55 virtual std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const std::vector<RefCountedKinematicParticle> &par) const = 0;
56 
65 virtual AlgebraicVector deviations(int nStates) const = 0;
66 
73 virtual int numberOfEquations() const = 0;
74 
78 virtual KinematicConstraint * clone() const = 0;
79 
80 };
81 
82 #endif
virtual KinematicConstraint * clone() const =0
virtual int numberOfEquations() const =0
CLHEP::HepVector AlgebraicVector
virtual AlgebraicVector deviations(int nStates) const =0
virtual std::pair< AlgebraicMatrix, AlgebraicVector > derivative(const AlgebraicVector &exPoint) const =0
virtual std::pair< AlgebraicVector, AlgebraicVector > value(const AlgebraicVector &exPoint) const =0