![]() |
Belle II Software
release-05-01-25
|
This object contains ECL DSP coefs – electromagnetic calorimeter digital signal processing coefficients. More...
#include <ECLDspData.h>
Public Member Functions | |
ECLDspData (unsigned char board_number=0) | |
Initialize DSP coefficients class from binary file. More... | |
std::vector< short int > | getExtraData () const |
void | getF (std::vector< short int > &dst) const |
Array with tabulated signal waveform. | |
void | getF1 (std::vector< short int > &dst) const |
Array with tabulated derivative of signal waveform. | |
void | getF31 (std::vector< short int > &dst) const |
Array FG31, used to estimate signal amplitude. More... | |
void | getF32 (std::vector< short int > &dst) const |
Array FG32, used to estimate A * delta_t. More... | |
void | getF33 (std::vector< short int > &dst) const |
Array FG33, used to estimate pedestal height in signal. More... | |
void | getF41 (std::vector< short int > &dst) const |
Alternative for FG31 for signals with small amplitude. | |
void | getF43 (std::vector< short int > &dst) const |
Alternative for FG33 for signals with small amplitude. | |
unsigned char | getverMaj () const |
unsigned char | getverMin () const |
short int | getaAT () const |
short int | getlAT () const |
short int | getsT () const |
short int | gethT () const |
short int | getchiThresh () const |
chi2 threshold for fit quality flag | |
unsigned char | getk1 () const |
multipliers power of 2 for f, f1 | |
unsigned char | getk2 () const |
multipliers power of 2 for chi2 calculation | |
unsigned char | getka () const |
Number of bits for FG31, FG41. | |
unsigned char | getkb () const |
Number of bits for FG32. | |
unsigned char | getkc () const |
Number of bits for FG33, FG43. | |
unsigned char | gety0Startr () const |
start point for pedestal calculation | |
unsigned char | getBoardNumber () const |
Return ShaperDSP board number, 0..11. | |
void | setExtraData (const std::vector< short int > &newval) |
SETTERS. More... | |
void | setF (std::vector< short int > &src) |
Array with tabulated signal waveform. | |
void | setF1 (std::vector< short int > &src) |
Array with tabulated derivative of signal waveform. | |
void | setF31 (std::vector< short int > &src) |
Array FG31, used to estimate signal amplitude. More... | |
void | setF32 (std::vector< short int > &src) |
Array FG32, used to estimate A * delta_t. More... | |
void | setF33 (std::vector< short int > &src) |
Array FG33, used to estimate pedestal height in signal. More... | |
void | setF41 (std::vector< short int > &src) |
Alternative for FG31 for signals with small amplitude. | |
void | setF43 (std::vector< short int > &src) |
Alternative for FG33 for signals with small amplitude. | |
void | setverMaj (unsigned char val) |
Sets major version of DSP coefficients. | |
void | setverMin (unsigned char val) |
Sets minor version of DSP coefficients. | |
void | setaAT (short int val) |
Set Low amp threshold (https://confluence.desy.de/display/BI/Electronics+Thresholds) | |
void | setlAT (short int val) |
Set Low amp threshold (https://confluence.desy.de/display/BI/Electronics+Thresholds) | |
void | setsT (short int val) |
Set Skip threshold (https://confluence.desy.de/display/BI/Electronics+Thresholds) | |
void | sethT (short int val) |
Set Hit threshold (https://confluence.desy.de/display/BI/Electronics+Thresholds) | |
void | setchiThresh (short int val) |
Set chi2 threshold for fit quality flag. | |
void | setk1 (unsigned char val) |
Set multipliers power of 2 for f, f1. | |
void | setk2 (unsigned char val) |
Set multipliers power of 2 for chi2 calculation. | |
void | setka (unsigned char val) |
Set number of bits for FG31, FG41. | |
void | setkb (unsigned char val) |
Set number of bits for FG32. | |
void | setkc (unsigned char val) |
Set number of bits for FG33, FG43. | |
void | sety0Startr (unsigned char val) |
Set start point for pedestal calculation. | |
Static Public Member Functions | |
static short int | getPackerVersion () |
GETTERS. More... | |
Private Member Functions | |
void | packCoefVector (const std::vector< short int > &src, std::vector< short int > &dst) |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst). More... | |
void | unpackCoefVector (const std::vector< short int > &src, std::vector< short int > &dst) const |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst). More... | |
ClassDef (ECLDspData, 1) | |
ClassDef. | |
Private Attributes | |
unsigned char | m_boardNumber |
ShaperDSP board number, 0..11. | |
unsigned char | m_verMaj |
Major version of DSP coefficients. | |
unsigned char | m_verMin |
Minor version of DSP coefficients. | |
unsigned char | m_ka |
Number of bits for FG31, FG41. | |
unsigned char | m_kb |
Number of bits for FG32. | |
unsigned char | m_kc |
Number of bits for FG33, FG43. | |
unsigned char | m_y0Startr |
start point for pedestal calculation | |
short int | m_chiThresh |
chi2 threshold for quality bit More... | |
unsigned char | m_k1Chi |
multipliers power of 2 for f, f1 | |
unsigned char | m_k2Chi |
multipliers power of 2 for chi2 calculation | |
short int | m_hitThresh |
See https://confluence.desy.de/display/BI/Electronics+Thresholds. | |
short int | m_lowAmpThresh |
See https://confluence.desy.de/display/BI/Electronics+Thresholds. | |
short int | m_skipThresh |
See https://confluence.desy.de/display/BI/Electronics+Thresholds. | |
short int | m_adcAlwThresh |
See https://confluence.desy.de/display/BI/Electronics+Thresholds. | |
std::vector< short int > | m_fg31 |
See documentation for method 'getF31'. | |
std::vector< short int > | m_fg32 |
See documentation for method 'getF32'. | |
std::vector< short int > | m_fg33 |
See documentation for method 'getF33'. | |
std::vector< short int > | m_fg41 |
See documentation for method 'getF41'. | |
std::vector< short int > | m_fg43 |
See documentation for method 'getF43'. | |
std::vector< short int > | m_f |
See documentation for method 'getF'. | |
std::vector< short int > | m_f1 |
See documentation for method 'getF1'. | |
std::vector< short int > | m_extraData |
This vector contains all parameters that didn't exist in the initial version of ECL DSP file format. More... | |
Static Private Attributes | |
static const short int | c_packerVersion = 2 |
Version of packer used in packCoefVector by default Versioon of unpacker is dynamically determined from the data. | |
This object contains ECL DSP coefs – electromagnetic calorimeter digital signal processing coefficients.
Payloads with these objects are used in two use cases.
For detailed overview of ECLDSP file structure see Confluence, https://confluence.desy.de/display/BI/ECL+Technical+Notes Attached file ECL-TN-2013-02 (digi.pdf)
Definition at line 44 of file ECLDspData.h.
|
inlineexplicit |
Initialize DSP coefficients class from binary file.
board_number | Id of specific shaperDSP, 0..11 |
Definition at line 115 of file ECLDspData.h.
|
inline |
Definition at line 195 of file ECLDspData.h.
|
inline |
Definition at line 152 of file ECLDspData.h.
|
inline |
Array FG31, used to estimate signal amplitude.
Calculated from F and covariance matrix.
Definition at line 166 of file ECLDspData.h.
|
inline |
Array FG32, used to estimate A * delta_t.
(A – amplitude, delta_t – time shift for linearization)
Calculated from F and covariance matrix.
Definition at line 173 of file ECLDspData.h.
|
inline |
Array FG33, used to estimate pedestal height in signal.
Calculated from F and covariance matrix.
Definition at line 179 of file ECLDspData.h.
|
inline |
Definition at line 207 of file ECLDspData.h.
|
inline |
Definition at line 199 of file ECLDspData.h.
|
inlinestatic |
GETTERS.
Return version of packer algorithm used in [un]packCoefVector
Definition at line 146 of file ECLDspData.h.
|
inline |
Definition at line 203 of file ECLDspData.h.
|
inline |
Definition at line 189 of file ECLDspData.h.
|
inline |
Definition at line 191 of file ECLDspData.h.
|
private |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst).
The internal format of coefficient vectors stored in this object is different from their real values: this improves data compression by ~200%. Thus, any accessor methods to m_f* vectors utilize packCoefVector and unpackCoefVector.
Definition at line 5 of file ECLDspData.cc.
|
inline |
SETTERS.
Sets vector with all parameters that haven't been included in basic ECL DSP file format
Definition at line 234 of file ECLDspData.h.
|
inline |
Array FG31, used to estimate signal amplitude.
Calculated from F and covariance matrix.
Definition at line 248 of file ECLDspData.h.
|
inline |
Array FG32, used to estimate A * delta_t.
(A – amplitude, delta_t – time shift for linearization)
Calculated from F and covariance matrix.
Definition at line 255 of file ECLDspData.h.
|
inline |
Array FG33, used to estimate pedestal height in signal.
Calculated from F and covariance matrix.
Definition at line 261 of file ECLDspData.h.
|
private |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst).
See documentation for packCoefVector on why this was necessary.
Definition at line 72 of file ECLDspData.cc.
|
private |
chi2 threshold for quality bit
We use condition chi^2 < (Amp^2 / (2^{k2Chi}) + chiThresh)
Definition at line 65 of file ECLDspData.h.
|
private |
This vector contains all parameters that didn't exist in the initial version of ECL DSP file format.
This vector allows loose coupling between ECLDspData class and ECL DSP file format.
m_extraData[0] – FORMAT_VERSION m_extraData[1] – PACKER_VERSION
Definition at line 102 of file ECLDspData.h.