CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FourMomentumKinematicConstraint.h
Go to the documentation of this file.
1 #ifndef FourMomentumKinematicConstraint_H
2 #define FourMomentumKinematicConstraint_H
3 
6 
18 {
19 
20 public:
21 
28  const AlgebraicVector& deviation);
29 
34 virtual std::pair<AlgebraicVector,AlgebraicVector> value(const AlgebraicVector& exPoint) const;
35 
36 virtual std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const AlgebraicVector& exPoint) const;
37 
38 
43 virtual std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const std::vector<RefCountedKinematicParticle> &par) const;
44 
45 virtual std::pair<AlgebraicVector, AlgebraicVector> value(const std::vector<RefCountedKinematicParticle> &par) const;
46 
47 
52 virtual int numberOfEquations() const;
53 
54 virtual AlgebraicVector deviations(int nStates) const;
55 
57  {return new FourMomentumKinematicConstraint(*this);}
58 
59 private:
60 
63 
64 };
65 #endif
virtual std::pair< AlgebraicMatrix, AlgebraicVector > derivative(const AlgebraicVector &exPoint) const
virtual std::pair< AlgebraicVector, AlgebraicVector > value(const AlgebraicVector &exPoint) const
virtual FourMomentumKinematicConstraint * clone() const
virtual AlgebraicVector deviations(int nStates) const
CLHEP::HepVector AlgebraicVector
FourMomentumKinematicConstraint(const AlgebraicVector &momentum, const AlgebraicVector &deviation)