CMS 3D CMS Logo

SmartPointingConstraint.h
Go to the documentation of this file.
1 #ifndef SmartPointingConstraint_H
2 #define SmartPointingConstraint_H
3 
5 
20 public:
22 
27  std::pair<AlgebraicVector, AlgebraicVector> value(const AlgebraicVector& exPoint) const override;
28 
29  std::pair<AlgebraicMatrix, AlgebraicVector> derivative(const AlgebraicVector& exPoint) const override;
30 
35  std::pair<AlgebraicMatrix, AlgebraicVector> derivative(
36  const std::vector<RefCountedKinematicParticle>& par) const override;
37 
38  std::pair<AlgebraicVector, AlgebraicVector> value(const std::vector<RefCountedKinematicParticle>& par) const override;
39 
40  AlgebraicVector deviations(int nStates) const override;
41 
47  int numberOfEquations() const override;
48 
49  SmartPointingConstraint* clone() const override { return new SmartPointingConstraint(*this); }
50 
51 private:
52  std::pair<AlgebraicVector, AlgebraicVector> makeValue(const AlgebraicVector& exPoint) const;
53  std::pair<AlgebraicMatrix, AlgebraicVector> makeDerivative(const AlgebraicVector& exPoint) const;
54 
56 };
57 
58 #endif
SmartPointingConstraint::numberOfEquations
int numberOfEquations() const override
Definition: SmartPointingConstraint.cc:84
KinematicConstraint.h
SmartPointingConstraint::derivative
std::pair< AlgebraicMatrix, AlgebraicVector > derivative(const AlgebraicVector &exPoint) const override
Definition: SmartPointingConstraint.cc:26
AlgebraicVector
CLHEP::HepVector AlgebraicVector
Definition: AlgebraicObjects.h:13
SmartPointingConstraint::SmartPointingConstraint
SmartPointingConstraint(const GlobalPoint &ref)
Definition: SmartPointingConstraint.h:21
KinematicConstraint
Definition: KinematicConstraint.h:21
Point3DBase< float, GlobalTag >
SmartPointingConstraint::deviations
AlgebraicVector deviations(int nStates) const override
Definition: SmartPointingConstraint.cc:82
SmartPointingConstraint::makeDerivative
std::pair< AlgebraicMatrix, AlgebraicVector > makeDerivative(const AlgebraicVector &exPoint) const
Definition: SmartPointingConstraint.cc:119
SmartPointingConstraint::makeValue
std::pair< AlgebraicVector, AlgebraicVector > makeValue(const AlgebraicVector &exPoint) const
Definition: SmartPointingConstraint.cc:86
SmartPointingConstraint::clone
SmartPointingConstraint * clone() const override
Definition: SmartPointingConstraint.h:49
SmartPointingConstraint::refPoint
GlobalPoint refPoint
Definition: SmartPointingConstraint.h:55
SmartPointingConstraint::value
std::pair< AlgebraicVector, AlgebraicVector > value(const AlgebraicVector &exPoint) const override
Definition: SmartPointingConstraint.cc:4
SmartPointingConstraint
Definition: SmartPointingConstraint.h:19