ATLAS Offline Software
Loading...
Searching...
No Matches
IKinematicConstraint.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TrkVertexFitterInterfaces_IKinematicConstraint_h
6#define TrkVertexFitterInterfaces_IKinematicConstraint_h
7
10
25
26namespace Trk {
27
28// class KinematicParticle;
29
31{
32
33public:
34 /*** Virtual destructor */
35 virtual ~IKinematicConstraint() = default;
36
37 /*** Actual access methods: */
39 std::vector<Amg::VectorX>& cart_coordList,
40 std::vector<int>& charges,
41 Amg::Vector3D refPoint,
42 double b_fieldTesla) const = 0;
43
45 std::vector<Amg::VectorX>& cart_coordList,
46 std::vector<int>& charges,
47 Amg::Vector3D refPoint,
48 double b_fieldTesla) const = 0;
49
50 virtual int numberOfEquations() const = 0;
51
52}; // end of class definitions
53} // end of namespace definitions
54
55#endif // TrkVertexKinematicFitInterfaces_IKinematicConstraint_h
virtual Amg::MatrixX matrixOfDerivatives(std::vector< Amg::VectorX > &cart_coordList, std::vector< int > &charges, Amg::Vector3D refPoint, double b_fieldTesla) const =0
virtual Amg::VectorX vectorOfValues(std::vector< Amg::VectorX > &cart_coordList, std::vector< int > &charges, Amg::Vector3D refPoint, double b_fieldTesla) const =0
virtual int numberOfEquations() const =0
virtual ~IKinematicConstraint()=default
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 3, 1 > Vector3D
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
Ensure that the ATLAS eigen extensions are properly loaded.