Belle II Software development
PerigeeParameters.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 <tracking/trackFindingCDC/geometry/UncertainParameters.h>
11
12namespace Belle2 {
18 namespace TrackFindingCDC {
19
21 namespace NPerigeeParameterIndices {
22
26 c_Curv = 0,
27
29 c_Phi0 = 1,
30
32 c_I = 2,
33
35 c_N = 3,
36 };
37 }
38
40 using EPerigeeParameter = NPerigeeParameterIndices::EPerigeeParameter;
41
42 // Guard to prevent repeated template symbol emission
43 struct PerigeeUtil;
44 extern template struct UncertainParametersUtil<PerigeeUtil, EPerigeeParameter>;
45
48
51 {
52 return ParameterVector({ -1.0, 1.0, -1.0});
53 }
54
61 static double average(const PerigeeUtil::ParameterVector& fromPar,
62 const PerigeeUtil::CovarianceMatrix& fromCov,
67 };
68
70 using PerigeeParameters = PerigeeUtil::ParameterVector;
71
73 using PerigeeCovariance = PerigeeUtil::CovarianceMatrix;
74
76 using PerigeePrecision = PerigeeUtil::PrecisionMatrix;
77
79 using PerigeeJacobian = PerigeeUtil::JacobianMatrix;
80
81 }
82
84}
A matrix implementation to be used as an interface typ through out the track finder.
Definition: PlainMatrix.h:40
EPerigeeParameter
Enumeration to address the individual perigee parameters in a vector or matrix.
@ c_I
Constant to address the impact parameter.
@ c_Phi0
Constant to address the azimuth angle of the direction of flight at the perigee.
@ c_Curv
Constant to address the curvature.
@ c_N
Constant for the total number of indices.
Abstract base class for different kinds of events.
Utility struct for functions and types related to the perigee parameters.
static ParameterVector reversalSigns()
Getter for the signs which have to be applied to reverse the traversal direction.
Utility struct to instantiate a couple of helper function related to a set of uncertain parameters.
TrackFindingCDC::CovarianceMatrix< c_N > CovarianceMatrix
The matrix type representing the covariance of the n related parameters.
TrackFindingCDC::ParameterVector< c_N > ParameterVector
The vector type representing the n related parameters.
TrackFindingCDC::JacobianMatrix< c_N > JacobianMatrix
The matrix type used to translate covariances and precisions im auto mapping of the parameter space.
TrackFindingCDC::PrecisionMatrix< c_N > PrecisionMatrix
The matrix type representing the precision of the n related parameters.