Belle II Software development
PIDCalibrationWeight Class Reference

Class for handling the PID calibration weight matrix. More...

#include <PIDCalibrationWeight.h>

Inheritance diagram for PIDCalibrationWeight:

Public Member Functions

 PIDCalibrationWeight ()
 Constructor.
 
 PIDCalibrationWeight (WeightMatrix weightMatrix)
 Constructor with the initial WeightMatrix.
 
void setWeightMatrix (WeightMatrix weightMatrix)
 Set the WeightMatrix.
 
WeightMatrix getWeightMatrix () const
 Get the WeightMatrix.
 
double getWeight (int pdg, std::string detector) const
 Get the weight for the given combination of the PDG code and the detector name.
 
double getWeight (int pdg, Const::EDetector det) const
 Get the weight for the given combination of the PDG code and the detector in Const::EDetector.
 
std::vector< double > getWeights (int pdg) const
 Get the weights for the given PDG code.
 

Private Member Functions

 ClassDef (PIDCalibrationWeight, 1)
 ClassDef as this is a TObject.
 

Private Attributes

WeightMatrix m_weightMatrix
 PID calibration weight matrix.
 

Detailed Description

Class for handling the PID calibration weight matrix.

Definition at line 35 of file PIDCalibrationWeight.h.

Constructor & Destructor Documentation

◆ PIDCalibrationWeight() [1/2]

Constructor.

Definition at line 39 of file PIDCalibrationWeight.h.

39{};

◆ PIDCalibrationWeight() [2/2]

PIDCalibrationWeight ( WeightMatrix weightMatrix)
inline

Constructor with the initial WeightMatrix.

Definition at line 42 of file PIDCalibrationWeight.h.

43 {
44 m_weightMatrix = weightMatrix;
45 };

Member Function Documentation

◆ getWeight() [1/2]

double getWeight ( int pdg,
Const::EDetector det ) const
inline

Get the weight for the given combination of the PDG code and the detector in Const::EDetector.

Parameters
pdgis the PDG code
detis the detector in Const::EDetector
Returns
weight for the given set of the PDG code and the detector in Const::EDetector

Definition at line 94 of file PIDCalibrationWeight.h.

95 {
96 std::vector<double> weightVector = getWeights(pdg);
97
98 int det_index = Const::PIDDetectors::c_set.getIndex(det);
99 return weightVector[det_index];
100 };
Eigen::VectorXd getWeights(int Size)
Get the vector of weights to calculate the integral over the Chebyshev nodes The nodes are by definit...
Definition nodes.cc:29

◆ getWeight() [2/2]

double getWeight ( int pdg,
std::string detector ) const
inline

Get the weight for the given combination of the PDG code and the detector name.

Parameters
pdgis the PDG code
detectoris the detector name
Returns
weight for the given combination of the PDG code and the detector name

Definition at line 70 of file PIDCalibrationWeight.h.

71 {
72 std::vector<double> weightVector = getWeights(pdg);
73
74 Const::EDetector det;
75 boost::to_lower(detector);
76 if (detector == "svd") det = Const::SVD;
77 else if (detector == "cdc") det = Const::CDC;
78 else if (detector == "top") det = Const::TOP;
79 else if (detector == "arich") det = Const::ARICH;
80 else if (detector == "ecl") det = Const::ECL;
81 else if (detector == "klm") det = Const::KLM;
82 else B2FATAL("Unknown detector component: " << detector);
83 int det_index = Const::PIDDetectors::c_set.getIndex(det);
84
85 return weightVector[det_index];
86 };

◆ getWeightMatrix()

WeightMatrix getWeightMatrix ( ) const
inline

Get the WeightMatrix.

Definition at line 59 of file PIDCalibrationWeight.h.

60 {
61 return m_weightMatrix;
62 };

◆ getWeights()

std::vector< double > getWeights ( int pdg) const
inline

Get the weights for the given PDG code.

Parameters
pdgis the PDG code
Returns
weights for the given PDG code

Definition at line 107 of file PIDCalibrationWeight.h.

108 {
109 int p_index = -1;
110 for (const auto& pdgIter : Const::chargedStableSet) {
111 if (pdgIter.getPDGCode() == pdg) {
112 p_index = pdgIter.getIndex();
113 break;
114 }
115 }
116 if (p_index == -1)
117 B2FATAL("Invalid particle: " << pdg);
118
119 return m_weightMatrix[p_index];
120 };

◆ setWeightMatrix()

void setWeightMatrix ( WeightMatrix weightMatrix)
inline

Set the WeightMatrix.

Parameters
weightMatrixis the weight matrix to be set.

Definition at line 51 of file PIDCalibrationWeight.h.

52 {
53 m_weightMatrix = weightMatrix;
54 };

Member Data Documentation

◆ m_weightMatrix

WeightMatrix m_weightMatrix
private

PID calibration weight matrix.

Definition at line 127 of file PIDCalibrationWeight.h.


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