Belle II Software development
TOPPmtQE Class Reference

Nagoya measurements of quantum efficiency. More...

#include <TOPPmtQE.h>

Inheritance diagram for TOPPmtQE:

Public Types

enum  { c_NumPmtPixels = 16 }
 number of PMT pixels More...
 

Public Member Functions

 TOPPmtQE ()
 Default constructor.
 
 TOPPmtQE (const std::string &serialNumber, float lambdaFirst, float lambdaStep, float CE0, float CE)
 Useful constructor.
 
void setQE (unsigned pmtPixel, const std::vector< float > &qe)
 Set quantum efficiency data points for a given pmtPixel.
 
const std::string & getSerialNumber () const
 Returns PMT serial number.
 
const std::vector< float > & getQE (unsigned pmtPixel) const
 Returns quantum efficiency data points for a given pixel.
 
double getQE (unsigned pmtPixel, double lambda) const
 Returns quantum efficiency for a given pixel and wavelength, using linear interpolation.
 
const std::vector< float > & getEnvelopeQE () const
 Returns envelope quantum efficiency data points (maximum over pixels)
 
double getEnvelopeQE (double lambda) const
 Returns envelope quantum efficiency for a given wavelength (maximum over pixels), using linear interpolation.
 
double getEfficiency (unsigned pmtPixel, double lambda, bool BfieldOn) const
 Returns quantum times collection efficiency for a given pixel and wavelength, using linear interpolation.
 
double getLambdaFirst () const
 Returns wavelenght of the first data point.
 
double getLambdaLast () const
 Returns wavelenght of the last data point (maximal of pixels)
 
double getLambdaLast (unsigned pmtPixel) const
 Returns wavelenght of the last data point for a given pixel.
 
double getLambdaStep () const
 Returns wavelenght step.
 
double getCE (bool BfieldOn) const
 Returns collection efficiency.
 

Private Member Functions

void setEnvelopeQE () const
 Sets envelope quantum efficiency.
 
double interpolate (double lambda, const std::vector< float > &QE) const
 Interpolate between QE datapoints (linear interpolation).
 
 ClassDef (TOPPmtQE, 3)
 don't write out
 

Private Attributes

std::string m_serialNumber
 serial number, e.g.
 
std::vector< float > m_QE [c_NumPmtPixels]
 QE data points.
 
float m_lambdaFirst = 0
 wavelength of the first data point [nm]
 
float m_lambdaStep = 0
 wavelength step [nm]
 
float m_CE_noB = 0
 relative collection efficiency, without B field
 
float m_CE_withB = 0
 relative collection efficiency, with B field
 
std::vector< float > m_envelopeQE
 cache for envelope QE
 

Detailed Description

Nagoya measurements of quantum efficiency.

Definition at line 23 of file TOPPmtQE.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

number of PMT pixels

Definition at line 28 of file TOPPmtQE.h.

28{c_NumPmtPixels = 16};

Constructor & Destructor Documentation

◆ TOPPmtQE() [1/2]

TOPPmtQE ( )
inline

Default constructor.

Definition at line 33 of file TOPPmtQE.h.

34 {}

◆ TOPPmtQE() [2/2]

TOPPmtQE ( const std::string &  serialNumber,
float  lambdaFirst,
float  lambdaStep,
float  CE0,
float  CE 
)
inline

Useful constructor.

Parameters
serialNumberserial number
lambdaFirstwavelenght of the first data point [nm]
lambdaStepwavelength step [nm]
CE0collection efficiency at B = 0T
CEcollection efficiency at B = 1.5T

Definition at line 44 of file TOPPmtQE.h.

45 :
46 m_serialNumber(serialNumber), m_lambdaFirst(lambdaFirst), m_lambdaStep(lambdaStep),
47 m_CE_noB(CE0), m_CE_withB(CE)
48 {}
float m_CE_withB
relative collection efficiency, with B field
Definition: TOPPmtQE.h:160
float m_CE_noB
relative collection efficiency, without B field
Definition: TOPPmtQE.h:159
std::string m_serialNumber
serial number, e.g.
Definition: TOPPmtQE.h:155
float m_lambdaStep
wavelength step [nm]
Definition: TOPPmtQE.h:158
float m_lambdaFirst
wavelength of the first data point [nm]
Definition: TOPPmtQE.h:157

Member Function Documentation

◆ ClassDef()

ClassDef ( TOPPmtQE  ,
 
)
private

don't write out

ClassDef

◆ getLambdaFirst()

double getLambdaFirst ( ) const
inline

Returns wavelenght of the first data point.

Returns
wavelength in [nm]

Definition at line 111 of file TOPPmtQE.h.

111{return m_lambdaFirst;}

◆ getLambdaStep()

double getLambdaStep ( ) const
inline

Returns wavelenght step.

Returns
wavelength step in [nm]

Definition at line 130 of file TOPPmtQE.h.

130{return m_lambdaStep;}

◆ getSerialNumber()

const std::string & getSerialNumber ( ) const
inline

Returns PMT serial number.

Returns
serial number

Definition at line 65 of file TOPPmtQE.h.

65{return m_serialNumber;}

◆ setQE()

void setQE ( unsigned  pmtPixel,
const std::vector< float > &  qe 
)
inline

Set quantum efficiency data points for a given pmtPixel.

Parameters
pmtPixelpmtPixel number (1-based)
qequantum efficiency data points

Definition at line 55 of file TOPPmtQE.h.

56 {
57 pmtPixel--;
58 if (pmtPixel < c_NumPmtPixels) m_QE[pmtPixel] = qe;
59 }
std::vector< float > m_QE[c_NumPmtPixels]
QE data points.
Definition: TOPPmtQE.h:156

Member Data Documentation

◆ m_CE_noB

float m_CE_noB = 0
private

relative collection efficiency, without B field

Definition at line 159 of file TOPPmtQE.h.

◆ m_CE_withB

float m_CE_withB = 0
private

relative collection efficiency, with B field

Definition at line 160 of file TOPPmtQE.h.

◆ m_envelopeQE

std::vector<float> m_envelopeQE
mutableprivate

cache for envelope QE

Definition at line 163 of file TOPPmtQE.h.

◆ m_lambdaFirst

float m_lambdaFirst = 0
private

wavelength of the first data point [nm]

Definition at line 157 of file TOPPmtQE.h.

◆ m_lambdaStep

float m_lambdaStep = 0
private

wavelength step [nm]

Definition at line 158 of file TOPPmtQE.h.

◆ m_QE

std::vector<float> m_QE[c_NumPmtPixels]
private

QE data points.

Definition at line 156 of file TOPPmtQE.h.

◆ m_serialNumber

std::string m_serialNumber
private

serial number, e.g.

JTxxxx

Definition at line 155 of file TOPPmtQE.h.


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