Belle II Software development
UncertainHelix.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#pragma once
9
10#include <framework/dataobjects/Helix.h>
11
12#include <TMatrixDSym.h>
13
14
15namespace Belle2 {
36 class UncertainHelix : public Helix {
37 public:
40
53 UncertainHelix(const ROOT::Math::XYZVector& position,
54 const ROOT::Math::XYZVector& momentum,
55 const short int charge,
56 const double bZ,
57 const TMatrixDSym& cartesianCovariance,
58 const double pValue);
59
72 UncertainHelix(const double& d0,
73 const double& phi0,
74 const double& omega,
75 const double& z0,
76 const double& tanLambda,
77 const TMatrixDSym& covariance,
78 const double pValue);
79
91 TMatrixDSym getCartesianCovariance(const double bZ_tesla = 1.5) const;
92
94 double getPValue() const
95 { return m_pValue; }
96
100 const TMatrixDSym& getCovariance() const
101 { return m_covariance; }
102
110 void reverse();
111
117 double passiveMoveBy(const ROOT::Math::XYZVector& by)
118 { return passiveMoveBy(by.X(), by.Y(), by.Z()); }
119
128 double passiveMoveBy(const double& byX,
129 const double& byY,
130 const double& byZ);
131
132 private:
134 TMatrixDSym m_covariance;
135
137 Double32_t m_pValue;
138
140 };
142}
143
Helix parameter class.
Definition: Helix.h:48
double phi0(void) const
Return helix parameter phi0.
Definition: Helix.h:388
Hep3Vector momentum(double dPhi=0.) const
returns momentum vector after rotating angle dPhi in phi direction.
Definition: Helix.cc:259
This class represents an ideal helix in perigee parameterization including the covariance matrix of t...
UncertainHelix()
Default constuctor initialising all members to zero.
void reverse()
Reverses the direction of travel of the helix in place.
TMatrixDSym getCartesianCovariance(const double bZ_tesla=1.5) const
Getter for the position and momentum covariance matrix.
double getPValue() const
Getter for Chi2 Probability of the track fit.
Double32_t m_pValue
Chi2 Probability of the fit.
ClassDef(UncertainHelix, 2)
represents an ideal helix in perigee parameterization including covariance matrix
double passiveMoveBy(const ROOT::Math::XYZVector &by)
Moves origin of the coordinate system (passive transformation) by the given vector.
TMatrixDSym m_covariance
5x5 covariance of the perigee parameters.
const TMatrixDSym & getCovariance() const
Getter for covariance matrix of perigee parameters in matrix form.
Abstract base class for different kinds of events.