CMS 3D CMS Logo

MassKinematicConstraint.h
Go to the documentation of this file.
1 #ifndef MassKinematicConstraint_H
2 #define MassKinematicConstraint_H
3 
6 
18 {
19 
20 public:
21 
25  MassKinematicConstraint(const ParticleMass& m, const float sigma);
26 
27 
32 std::pair<AlgebraicVector,AlgebraicVector> value(const AlgebraicVector& exPoint) const override;
33 
34 std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const AlgebraicVector& exPoint) const override;
35 
40 std::pair<AlgebraicVector, AlgebraicVector> value(const std::vector<RefCountedKinematicParticle> &par) const override;
41 
42 std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const std::vector<RefCountedKinematicParticle> &par) const override;
43 
49 int numberOfEquations() const override;
50 
51 AlgebraicVector deviations(int nStates) const override;
52 
53 MassKinematicConstraint * clone() const override
54  {return new MassKinematicConstraint(*this);}
55 
56 private:
59 };
60 
61 #endif
AlgebraicVector deviations(int nStates) const override
double ParticleMass
Definition: ParticleMass.h:5
CLHEP::HepVector AlgebraicVector
std::pair< AlgebraicMatrix, AlgebraicVector > derivative(const AlgebraicVector &exPoint) const override
int numberOfEquations() const override
MassKinematicConstraint * clone() const override
std::pair< AlgebraicVector, AlgebraicVector > value(const AlgebraicVector &exPoint) const override
MassKinematicConstraint(const ParticleMass &m, const float sigma)