Belle II Software  release-05-02-19
ClusterUtils Class Reference

Class to provide momentum-related information from ECLClusters. More...

#include <ClusterUtils.h>

Collaboration diagram for ClusterUtils:

Public Member Functions

 ClusterUtils ()
 Constructor.
 
const TLorentzVector GetCluster4MomentumFromCluster (const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
 Returns cluster four momentum vector. More...
 
const TLorentzVector Get4MomentumFromCluster (const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
 Returns four momentum vector. More...
 
const TLorentzVector Get4MomentumFromCluster (const ECLCluster *cluster, const TVector3 &vertex, ECLCluster::EHypothesisBit hypo)
 Returns four momentum vector. More...
 
const TMatrixDSym GetCovarianceMatrix4x4FromCluster (const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
 Returns 4x4 covariance matrix (px, py, pz, E) More...
 
const TMatrixDSym GetCovarianceMatrix4x4FromCluster (const ECLCluster *cluster, const TVector3 &vertex, const TMatrixDSym &covmatvertex, ECLCluster::EHypothesisBit hypo)
 Returns 4x4 covariance matrix (px, py, pz, E) More...
 
const TMatrixDSym GetCovarianceMatrix7x7FromCluster (const ECLCluster *cluster, ECLCluster::EHypothesisBit hypo)
 Returns 7x7 covariance matrix (px, py, pz, E, x, y, z) More...
 
const TMatrixDSym GetCovarianceMatrix7x7FromCluster (const ECLCluster *cluster, const TVector3 &vertex, const TMatrixDSym &covmatvertex, ECLCluster::EHypothesisBit hypo)
 Returns 7x7 covariance matrix (px, py, pz, E, x, y, z) More...
 
const TVector3 GetIPPosition ()
 Returns default IP position from beam parameters. More...
 
const TMatrixDSym GetIPPositionCovarianceMatrix ()
 Returns default IP position covariance matrix from beam parameters. More...
 

Private Attributes

DBObjPtr< BeamSpotm_beamSpotDB
 Beam spot database object.
 

Detailed Description

Class to provide momentum-related information from ECLClusters.

This requires the prior knowledge of the particle type (e.g., photon), and a vertex hypothesis. The default vertex hypothesis is taken from the beamparameters.

Definition at line 44 of file ClusterUtils.h.

Member Function Documentation

◆ Get4MomentumFromCluster() [1/2]

const TLorentzVector Get4MomentumFromCluster ( const ECLCluster cluster,
const TVector3 &  vertex,
ECLCluster::EHypothesisBit  hypo 
)

Returns four momentum vector.

Returns
const four momentum vector

Definition at line 33 of file ClusterUtils.cc.

35 {
36 
37  // Get particle direction from vertex and reconstructed cluster position.
38  TVector3 direction = cluster->getClusterPosition() - vertex;
39 
40  // Always ignore mass here (even for neutral hadrons) therefore the magnitude
41  // of the momentum is equal to the cluster energy under this hypo.
42  const double E = cluster->getEnergy(hypo); //must not be changed or clusterE getters will be wrong
43  const double px = E * sin(direction.Theta()) * cos(direction.Phi());
44  const double py = E * sin(direction.Theta()) * sin(direction.Phi());
45  const double pz = E * cos(direction.Theta());
46 
47  const TLorentzVector l(px, py, pz, E);
48  return l;
49 }

◆ Get4MomentumFromCluster() [2/2]

const TLorentzVector Get4MomentumFromCluster ( const ECLCluster cluster,
ECLCluster::EHypothesisBit  hypo 
)

Returns four momentum vector.

Returns
const four momentum vector

Definition at line 26 of file ClusterUtils.cc.

◆ GetCluster4MomentumFromCluster()

const TLorentzVector GetCluster4MomentumFromCluster ( const ECLCluster cluster,
ECLCluster::EHypothesisBit  hypo 
)

Returns cluster four momentum vector.

Returns
const cluster four momentum vector

Definition at line 20 of file ClusterUtils.cc.

◆ GetCovarianceMatrix4x4FromCluster() [1/2]

const TMatrixDSym GetCovarianceMatrix4x4FromCluster ( const ECLCluster cluster,
const TVector3 &  vertex,
const TMatrixDSym &  covmatvertex,
ECLCluster::EHypothesisBit  hypo 
)

Returns 4x4 covariance matrix (px, py, pz, E)

Returns
const TMatrixDSym

Definition at line 59 of file ClusterUtils.cc.

◆ GetCovarianceMatrix4x4FromCluster() [2/2]

const TMatrixDSym GetCovarianceMatrix4x4FromCluster ( const ECLCluster cluster,
ECLCluster::EHypothesisBit  hypo 
)

Returns 4x4 covariance matrix (px, py, pz, E)

Returns
const TMatrixDSym

Definition at line 53 of file ClusterUtils.cc.

◆ GetCovarianceMatrix7x7FromCluster() [1/2]

const TMatrixDSym GetCovarianceMatrix7x7FromCluster ( const ECLCluster cluster,
const TVector3 &  vertex,
const TMatrixDSym &  covmatvertex,
ECLCluster::EHypothesisBit  hypo 
)

Returns 7x7 covariance matrix (px, py, pz, E, x, y, z)

Returns
const TMatrixDSym

Definition at line 155 of file ClusterUtils.cc.

◆ GetCovarianceMatrix7x7FromCluster() [2/2]

const TMatrixDSym GetCovarianceMatrix7x7FromCluster ( const ECLCluster cluster,
ECLCluster::EHypothesisBit  hypo 
)

Returns 7x7 covariance matrix (px, py, pz, E, x, y, z)

Returns
const TMatrixDSym

Definition at line 149 of file ClusterUtils.cc.

◆ GetIPPosition()

const TVector3 GetIPPosition ( )

Returns default IP position from beam parameters.

Returns
const TVector3

Definition at line 182 of file ClusterUtils.cc.

◆ GetIPPositionCovarianceMatrix()

const TMatrixDSym GetIPPositionCovarianceMatrix ( )

Returns default IP position covariance matrix from beam parameters.

Returns
const TMatrixDSym

Definition at line 191 of file ClusterUtils.cc.


The documentation for this class was generated from the following files: