Belle II Software  release-08-01-10
ClusterUtils.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 // BEAMSPOT AND DATABASE
12 #include <mdst/dbobjects/BeamSpot.h>
13 #include <framework/database/DBObjPtr.h>
14 
15 // MDST
16 #include <mdst/dataobjects/ECLCluster.h>
17 
18 // ROOT
19 #include <Math/Vector3D.h>
20 #include <Math/Vector4D.h>
21 #include <TMatrixD.h>
22 
23 namespace Belle2 {
35  class ClusterUtils {
36 
37  public:
38 
43 
48  const ROOT::Math::PxPyPzEVector GetCluster4MomentumFromCluster(const ECLCluster* cluster, ECLCluster::EHypothesisBit hypo);
49 
54  const ROOT::Math::PxPyPzEVector Get4MomentumFromCluster(const ECLCluster* cluster, ECLCluster::EHypothesisBit hypo);
55 
60  const ROOT::Math::PxPyPzEVector Get4MomentumFromCluster(const ECLCluster* cluster, const ROOT::Math::XYZVector& vertex,
66  const TMatrixD GetJacobiMatrix4x6FromCluster(const ECLCluster* cluster, ECLCluster::EHypothesisBit hypo);
67 
72  const TMatrixD GetJacobiMatrix4x6FromCluster(const ECLCluster* cluster, const ROOT::Math::XYZVector& vertex,
74 
79  const TMatrixDSym GetCovarianceMatrix4x4FromCluster(const ECLCluster* cluster, const TMatrixD& jacobiMatrix);
80 
85  const TMatrixDSym GetCovarianceMatrix4x4FromCluster(const ECLCluster* cluster,
86  const TMatrixDSym& covmatvertex,
87  const TMatrixD& jacobiMatrix);
88 
93  const TMatrixDSym GetCovarianceMatrix7x7FromCluster(const ECLCluster* cluster, const TMatrixD& jacobiMatrix);
94 
99  const TMatrixDSym GetCovarianceMatrix7x7FromCluster(const ECLCluster* cluster,
100  const TMatrixDSym& covmatvertex,
101  const TMatrixD& jacobiMatrix);
102 
107  const ROOT::Math::XYZVector GetIPPosition();
108 
113  const TMatrixDSym GetIPPositionCovarianceMatrix();
114 
115  private:
116 
118  };
119 
121 } // Belle2 namespace
Class to provide momentum-related information from ECLClusters.
Definition: ClusterUtils.h:35
const TMatrixDSym GetCovarianceMatrix7x7FromCluster(const ECLCluster *cluster, const TMatrixD &jacobiMatrix)
Returns 7x7 covariance matrix (px, py, pz, E, x, y, z)
const ROOT::Math::PxPyPzEVector Get4MomentumFromCluster(const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
Returns four momentum vector.
Definition: ClusterUtils.cc:25
const TMatrixD GetJacobiMatrix4x6FromCluster(const ECLCluster *cluster, const ROOT::Math::XYZVector &vertex, ECLCluster::EHypothesisBit hypo)
Returns 4x6 Jacobi matrix (px, py, pz, E)
const TMatrixD GetJacobiMatrix4x6FromCluster(const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
Returns 4x6 Jacobi matrix (px, py, pz, E)
Definition: ClusterUtils.cc:54
const ROOT::Math::PxPyPzEVector GetCluster4MomentumFromCluster(const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
Returns cluster four momentum vector.
Definition: ClusterUtils.cc:19
const TMatrixDSym GetCovarianceMatrix4x4FromCluster(const ECLCluster *cluster, const TMatrixD &jacobiMatrix)
Returns 4x4 covariance matrix (px, py, pz, E)
const ROOT::Math::PxPyPzEVector Get4MomentumFromCluster(const ECLCluster *cluster, const ROOT::Math::XYZVector &vertex, ECLCluster::EHypothesisBit hypo)
Returns four momentum vector.
DBObjPtr< BeamSpot > m_beamSpotDB
Beam spot database object.
Definition: ClusterUtils.h:117
const TMatrixDSym GetIPPositionCovarianceMatrix()
Returns default IP position covariance matrix from beam parameters.
ClusterUtils()
Constructor.
const ROOT::Math::XYZVector GetIPPosition()
Returns default IP position from beam parameters.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
ECL cluster data.
Definition: ECLCluster.h:27
EHypothesisBit
The hypothesis bits for this ECLCluster (Connected region (CR) is split using this hypothesis.
Definition: ECLCluster.h:31
Abstract base class for different kinds of events.