Parametrization of background PDF in pixels of single module.
More...
#include <BackgroundPDF.h>
|
| BackgroundPDF (int moduleID) |
| Class constructor.
|
|
int | getModuleID () const |
| Returns slot ID.
|
|
double | getPDFValue (int pixelID) const |
| Returns PDF value for given pixel.
|
|
const std::vector< double > & | getPDF () const |
| Returns pixel part of PDF.
|
|
double | getEfficiency () const |
| Returns average of pixel relative efficiencies.
|
|
|
void | set () |
| Sets the PDF.
|
|
|
int | m_moduleID |
| slot ID
|
|
std::vector< double > | m_pdf |
| pixel part of PDF (index = pixelID - 1)
|
|
double | m_effi = 0 |
| average relative efficiency
|
|
Parametrization of background PDF in pixels of single module.
Definition at line 23 of file BackgroundPDF.h.
◆ BackgroundPDF()
Class constructor.
- Parameters
-
Definition at line 22 of file BackgroundPDF.cc.
22 :
24 {
26 if (not yScanner) B2FATAL("TOP::BackgroundPDF: invalid slot number, moduleID = " << moduleID);
27
28 const auto& pixelPositions = yScanner->getPixelPositions().getPixels();
29 const auto& pixelMasks = yScanner->getPixelMasks().getMasks();
30 const auto& pixelEfficiencies = yScanner->getPixelEfficiencies().getEfficiencies();
31
32 if (pixelMasks.size() != pixelPositions.size() or pixelEfficiencies.size() != pixelPositions.size()) {
33 B2FATAL("TOP::BackgroundPDF: pixel positions, masks and efficiencies have different sizes for slot " << moduleID
34 <<
LogVar(
"pixelPositions.size()", pixelPositions.size())
35 <<
LogVar(
"pixelMasks.size()", pixelMasks.size())
36 <<
LogVar(
"pixelEfficiencies.size()", pixelEfficiencies.size()));
37 }
38
39 m_pdf.resize(pixelPositions.size(), 0);
41 }
std::vector< double > m_pdf
pixel part of PDF (index = pixelID - 1)
static const YScanner * getYScanner(int moduleID)
Returns y-scanner of a given module.
Class to store variables with their name which were sent to the logging service.
◆ getEfficiency()
double getEfficiency |
( |
| ) |
const |
|
inline |
Returns average of pixel relative efficiencies.
- Returns
- average of pixel relative efficiencies
Definition at line 56 of file BackgroundPDF.h.
double m_effi
average relative efficiency
◆ getModuleID()
int getModuleID |
( |
| ) |
const |
|
inline |
◆ getPDF()
const std::vector< double > & getPDF |
( |
| ) |
const |
|
inline |
Returns pixel part of PDF.
- Returns
- pixel part of PDF (index = pixelID - 1)
Definition at line 50 of file BackgroundPDF.h.
◆ getPDFValue()
double getPDFValue |
( |
int |
pixelID | ) |
const |
Returns PDF value for given pixel.
- Parameters
-
- Returns
- PDF value
Definition at line 72 of file BackgroundPDF.cc.
73 {
74 unsigned k = pixelID - 1;
76 return 0;
77 }
static double getTimeWindowSize()
Returns size of time window.
◆ set()
Sets the PDF.
Definition at line 44 of file BackgroundPDF.cc.
45 {
47 const auto& pixelPositions = yScanner->getPixelPositions().getPixels();
48 const auto& pixelMasks = yScanner->getPixelMasks().getMasks();
49 const auto& pixelEfficiencies = yScanner->getPixelEfficiencies().getEfficiencies();
50
51 double S = 0;
52 for (
size_t i = 0; i <
m_pdf.size(); i++) {
53 const auto& pixel = pixelPositions[i];
54 double s = pixel.Dx * pixel.Dy;
55 S += s;
56 if (pixelMasks[i]) {
57 m_pdf[i] = s * pixelEfficiencies[i];
58 } else {
60 }
61 }
62
63 double sum = 0;
64 for (
auto pdf :
m_pdf) sum += pdf;
65 if (sum == 0) return;
66
67 for (
auto& pdf :
m_pdf) pdf /= sum;
69 }
◆ TOPRecoManager
◆ m_effi
◆ m_moduleID
◆ m_pdf
std::vector<double> m_pdf |
|
private |
pixel part of PDF (index = pixelID - 1)
Definition at line 66 of file BackgroundPDF.h.
The documentation for this class was generated from the following files: