![]() |
Belle II Software development
|
A mask for energy masking. More...
#include <EnergyMask.h>
Public Member Functions | |
| EnergyMask (double dyde, double dydL, double dydx, double dy, double dL, double dx, double dE) | |
| Constructor. | |
| double | getStep () const |
| Returns energy step size of the discrete mask. | |
| double | getFullWidth () const |
| Returns mask full width. | |
| const std::vector< double > & | getMask () const |
| Returns discrete mask (note: only half of the mask is stored) | |
| double | getMask (double E) const |
| Returns mask value at given energy difference by calling direct calculation of the convolution. | |
| double | getMask (int i) const |
| Returns mask value at given index from stored discrete mask. | |
| double | getMask (int i, double fract) const |
| Returns mask value with linear interpolation between stored discrete mask elements. | |
| double | getEnergyDifference (int i) |
| Returns energy difference w.r.t center of mask. | |
Static Public Member Functions | |
| static void | setNMin (unsigned Nmin) |
| Sets minimal size of discrete mask. | |
| static void | setNMax (unsigned Nmax) |
| Sets maximal size of discrete mask. | |
Private Member Functions | |
| double | twoSquareConvolution (double E) const |
| Returns a value of convolution of two square distributions at given photon energy using the largest two of full widths (m_A, m_B). | |
| double | threeSquareConvolution (double E) const |
| Returns a value of convolution of three square distributions at given photon energy. | |
| double | mask (int i) const |
| Returns mask value at given index from stored discrete mask. | |
Private Attributes | |
| double | m_dE = 0 |
| energy step | |
| double | m_Wy = 0 |
| enegy full width of dy | |
| double | m_A = 0 |
| the largest energy full width | |
| double | m_B = 0 |
| the middle energy full width | |
| double | m_C = 0 |
| the smallset energy full width | |
| std::vector< double > | m_mask |
| discrete mask (half of) | |
Static Private Attributes | |
| static unsigned | s_Nmin = 4 |
| minimal mask size | |
| static unsigned | s_Nmax = 256 |
| maximal mask size | |
A mask for energy masking.
Definition at line 24 of file EnergyMask.h.
| EnergyMask | ( | double | dyde, |
| double | dydL, | ||
| double | dydx, | ||
| double | dy, | ||
| double | dL, | ||
| double | dx, | ||
| double | dE ) |
Constructor.
| dyde | derivative dy/de [cm/eV] |
| dydL | derivative dy/dL |
| dydx | derivative dy/dx |
| dy | effective PMT pad size in y [cm] |
| dL | length of particle trajectory within the quartz [cm] |
| dx | PMT pad size in x [cm] |
| dE | energy step [eV] |
Definition at line 25 of file EnergyMask.cc.
|
inline |
Returns energy difference w.r.t center of mask.
| i | index (all values are valid) |
Definition at line 99 of file EnergyMask.h.
|
inline |
Returns mask full width.
Definition at line 62 of file EnergyMask.h.
|
inline |
Returns discrete mask (note: only half of the mask is stored)
Definition at line 68 of file EnergyMask.h.
| double getMask | ( | double | E | ) | const |
Returns mask value at given energy difference by calling direct calculation of the convolution.
| E | photon energy difference w.r.t center of mask [eV] |
Definition at line 62 of file EnergyMask.cc.
| double getMask | ( | int | i | ) | const |
Returns mask value at given index from stored discrete mask.
If discrete mask is empty it calls direct calculation of convolution.
| i | index (all values are valid) |
Definition at line 72 of file EnergyMask.cc.
| double getMask | ( | int | i, |
| double | fract ) const |
Returns mask value with linear interpolation between stored discrete mask elements.
If discrete mask is empty it calls direct calculation of convolution.
| i | index (all values are valid) |
| fract | fractional part for linear interpolation (values btw. -0.5 and 0.5) |
Definition at line 79 of file EnergyMask.cc.
|
inline |
Returns energy step size of the discrete mask.
Definition at line 56 of file EnergyMask.h.
|
inlineprivate |
Returns mask value at given index from stored discrete mask.
| i | index (all values are valid) |
Definition at line 138 of file EnergyMask.h.
|
inlinestatic |
Sets maximal size of discrete mask.
| Nmax | maximal size |
Definition at line 50 of file EnergyMask.h.
|
inlinestatic |
Sets minimal size of discrete mask.
| Nmin | minimal size |
Definition at line 44 of file EnergyMask.h.
|
private |
Returns a value of convolution of three square distributions at given photon energy.
| E | photon energy difference w.r.t center of mask [eV] |
Definition at line 107 of file EnergyMask.cc.
|
private |
Returns a value of convolution of two square distributions at given photon energy using the largest two of full widths (m_A, m_B).
| E | photon energy difference w.r.t center of mask [eV] |
Definition at line 91 of file EnergyMask.cc.
|
private |
the largest energy full width
Definition at line 127 of file EnergyMask.h.
|
private |
the middle energy full width
Definition at line 128 of file EnergyMask.h.
|
private |
the smallset energy full width
Definition at line 129 of file EnergyMask.h.
|
private |
energy step
Definition at line 125 of file EnergyMask.h.
|
private |
discrete mask (half of)
Definition at line 130 of file EnergyMask.h.
|
private |
enegy full width of dy
Definition at line 126 of file EnergyMask.h.
|
staticprivate |
maximal mask size
Definition at line 133 of file EnergyMask.h.
|
staticprivate |
minimal mask size
Definition at line 132 of file EnergyMask.h.