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

dE/dx special large cosine calibration to fix bending shoulder at large costh More...

#include <CDCDedxCosineEdge.h>

Inheritance diagram for CDCDedxCosineEdge:
Collaboration diagram for CDCDedxCosineEdge:

Public Member Functions

 CDCDedxCosineEdge ()
 Default constructor.
 
 CDCDedxCosineEdge (const std::vector< std::vector< double >> &largecosth)
 Constructor.
 
 ~CDCDedxCosineEdge ()
 Destructor.
 
int getSize (const int side) const
 Get the number of bins of requested side. More...
 
double getMean (int side, unsigned int ibin) const
 return calibration constant for given side and bin # More...
 
double getMean (double costh) const
 return calibration constant for cosine value More...
 
double getCosEdgePar (int side, unsigned int ibin) const
 return specific large cosine constants on give side More...
 
void printCosEdgePars (int side)
 print large cosine constants array on requested side More...
 
void setCosthEdgePar (int side, unsigned int ibin, double value)
 set specific hadron parameter More...
 

Private Member Functions

 ClassDef (CDCDedxCosineEdge, 1)
 ClassDef.
 

Private Attributes

std::vector< std::vector< double > > m_largeCos
 ADC vs corrected ADC mapping.
 

Detailed Description

dE/dx special large cosine calibration to fix bending shoulder at large costh

Definition at line 35 of file CDCDedxCosineEdge.h.

Member Function Documentation

◆ getCosEdgePar()

double getCosEdgePar ( int  side,
unsigned int  ibin 
) const
inline

return specific large cosine constants on give side

Parameters
side<0 for backward and >0 for forward
ibinis bin number for given costh

Definition at line 136 of file CDCDedxCosineEdge.h.

137  {
138  temp = m_largeCos[1];
139  coslow = 0.950; coshigh = 0.960;
140  } else {
141  B2ERROR("CDCDedxCosineEdge:choose > 0 for forward and <0 for backward side");
142  return -99.0;
143  }
144 
145  if (ibin >= temp.size()) {
146  B2ERROR("CDCDedxCosineEdge:Problem with bin index: choose 0 and " << temp.size() - 1); //
147  return -99.0;
148  }
149 
150  if (temp.size() == 0)return -99.0;
151  double bw = abs(coshigh - coslow) / temp.size();
152  double bc = coslow + (0.5 + ibin) * bw; //bin centre
153  std::cout << "Par # " << ibin << ", costh bin centre = " << bc << ", const =" << temp[ibin] << std::endl;
154  return temp[ibin];
155  };
156 
157 
161  void printCosEdgePars(int side)
162  {

◆ getMean() [1/2]

double getMean ( double  costh) const
inline

return calibration constant for cosine value

Parameters
costhis a signed cosine theta value so by definitioi it recog it's side

Definition at line 97 of file CDCDedxCosineEdge.h.

◆ getMean() [2/2]

double getMean ( int  side,
unsigned int  ibin 
) const
inline

return calibration constant for given side and bin #

Parameters
side<0 for backward and >0 for forward
ibinis bin number for given costh

Definition at line 74 of file CDCDedxCosineEdge.h.

◆ getSize()

int getSize ( const int  side) const
inline

Get the number of bins of requested side.

Parameters
side<0 for backward and >0 for forward

Definition at line 57 of file CDCDedxCosineEdge.h.

◆ printCosEdgePars()

void printCosEdgePars ( int  side)
inline

print large cosine constants array on requested side

Parameters
side<0 for backward and >0 for forward constants

Definition at line 168 of file CDCDedxCosineEdge.h.

◆ setCosthEdgePar()

void setCosthEdgePar ( int  side,
unsigned int  ibin,
double  value 
)
inline

set specific hadron parameter

Parameters
side0 for backward and 1 for forward
ibinnumber starts from 0
valueof parameter to set

Definition at line 199 of file CDCDedxCosineEdge.h.


The documentation for this class was generated from the following file:
Belle2::CDCDedxCosineEdge::printCosEdgePars
void printCosEdgePars(int side)
print large cosine constants array on requested side
Definition: CDCDedxCosineEdge.h:168
Belle2::CDCDedxCosineEdge::m_largeCos
std::vector< std::vector< double > > m_largeCos
ADC vs corrected ADC mapping.
Definition: CDCDedxCosineEdge.h:218