Belle II Software  release-05-01-25
HMatrixQP.cc
1 #include <tracking/trackFitting/measurementCreator/measurements/HMatrixQP.h>
2 #include <TMatrixT.h> // for TMatrixT
3 #include <TMatrixTSym.h> // for TMatrixTSym
4 #include <TVectorT.h> // for TVectorT
5 #include <cassert> // for assert
6 #include <iostream> // for operator<<, basic_ostream, etc
7 
8 using namespace genfit;
9 
10 namespace Belle2 {
16  const TMatrixD& HMatrixQP::getMatrix() const
17  {
18  static const double HMatrixContent[5] = {1, 0, 0, 0, 0};
19 
20  static const TMatrixD HMatrix(1, 5, HMatrixContent);
21 
22  return HMatrix;
23  }
24 
25 
26  TVectorD HMatrixQP::Hv(const TVectorD& v) const
27  {
28  assert(v.GetNrows() == 5);
29 
30  TVectorD returnValue(1);
31 
32  returnValue(0) = v(0);
33 
34  return returnValue;
35  }
36 
37 
38  TMatrixD HMatrixQP::MHt(const TMatrixDSym& M) const
39  {
40  assert(M.GetNcols() == 5);
41 
42  TMatrixD returnVector(5, 1);
43 
44  for (unsigned int i = 0; i < 5; ++i) {
45  returnVector(i, 0) = M(0, i);
46  }
47 
48  return returnVector;
49  }
50 
51 
52  TMatrixD HMatrixQP::MHt(const TMatrixD& M) const
53  {
54  assert(M.GetNcols() == 5);
55 
56  TMatrixD returnMatrix(M.GetNrows(), 1);
57 
58  for (int i = 0; i < M.GetNrows(); ++i) {
59  returnMatrix(i, 0) = M(0, i);
60  }
61 
62  return returnMatrix;
63  }
64 
65 
66  void HMatrixQP::HMHt(TMatrixDSym& M) const
67  {
68  assert(M.GetNrows() == 5);
69  // Just use the 0,0 entry
70  M.ResizeTo(1, 1);
71  }
72 
73 
74  void HMatrixQP::Print(const Option_t*) const
75  {
76  std::cout << "V" << std::endl;
77  }
78 
80 }
genfit
Defines for I/O streams used for error and debug printing.
Definition: AlignablePXDRecoHit.h:19
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19