Belle II Software development
HMatrixQP.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <TMatrixDSymfwd.h> // for TMatrixDSym
12#include <TMatrixDfwd.h> // for TMatrixD
13#include <TVectorDfwd.h> // for TVectorD
14#include <genfit/AbsHMatrix.h> // for AbsHMatrix
15
16namespace Belle2 {
27 class HMatrixQP : public genfit::AbsHMatrix {
28
29 public:
30
33
35 const TMatrixD& getMatrix() const override;
36
38 TVectorD Hv(const TVectorD& v) const override;
39
41 TMatrixD MHt(const TMatrixDSym& M) const override;
42
44 TMatrixD MHt(const TMatrixD& M) const override;
45
47 void HMHt(TMatrixDSym& M) const override;
48
50 virtual HMatrixQP* clone() const override {return new HMatrixQP(*this);}
51
53 virtual bool isEqual(const genfit::AbsHMatrix& other) const override {return (dynamic_cast<const HMatrixQP*>(&other) != nullptr);}
54
56 virtual void Print(const Option_t* = "") const override;
57 };
58
60}
AbsHMatrix implementation for one-dimensional MeasurementOnPlane and RKTrackRep parameterization.
Definition: HMatrixQP.h:27
virtual bool isEqual(const genfit::AbsHMatrix &other) const override
Check for equality.
Definition: HMatrixQP.h:53
virtual HMatrixQP * clone() const override
Clone the matrix.
Definition: HMatrixQP.h:50
HMatrixQP()
Constructor.
Definition: HMatrixQP.h:32
TMatrixD MHt(const TMatrixDSym &M) const override
Calculate M * H^T = first column of M.
Definition: HMatrixQP.cc:45
void HMHt(TMatrixDSym &M) const override
Calculate H * M * H^T = M_00.
Definition: HMatrixQP.cc:73
virtual void Print(const Option_t *="") const override
Print a symbol for the matrix for debugging.
Definition: HMatrixQP.cc:81
const TMatrixD & getMatrix() const override
Return the underlying matrix.
Definition: HMatrixQP.cc:23
TVectorD Hv(const TVectorD &v) const override
Calculate H * v = v_0.
Definition: HMatrixQP.cc:33
Abstract base class for different kinds of events.