![]() |
Belle II Software
release-08-02-06
|
Class for monitoring beam background hit rates of SVD. More...
#include <SVDHitRateCounter.h>


Classes | |
| struct | TreeStruct |
| tree structure More... | |
Public Member Functions | |
| SVDHitRateCounter (const std::string &svdShaperDigitsName, double thrCharge, bool ignoreHotStripsPayload=false, bool ignoreMaskedStripsPayload=false) | |
| Constructor. More... | |
| virtual void | initialize (TTree *tree) override |
| Class initializer: set branch addresses and other staf. More... | |
| virtual void | clear () override |
| Clear time-stamp buffer to prepare for 'accumulate'. | |
| virtual void | accumulate (unsigned timeStamp) override |
| Accumulate hits. More... | |
| virtual void | normalize (unsigned timeStamp) override |
| Normalize accumulated hits (e.g. More... | |
| void | normalizeRates (TreeStruct &rates, bool isU=false, bool isV=false) |
| Normalize TreeStruct. More... | |
| void | normalizeEnergyRates (TreeStruct &rates) |
| Normalize a TreeStruct that stores charge/energy, not hits. More... | |
| int | nStripsOnLayerSide (int layer, bool isU) |
| Return number of strips on a sensor. More... | |
| double | massOfSensor (int layer, int ladder, int sensor) |
| Returns the (active) mass of the given sensor in Kg. More... | |
| bool | isStripActive (const VxdID &sensorID, const bool &isU, const unsigned short &strip) |
| Returns wether a strips is active (neither hot nor masked), taking into account the ignoreHotStrips and ignoreMaskedStrips settings. More... | |
Private Attributes | |
| int | m_nLayers = 4 |
| number of layers | |
| int | m_nLadders [4] = {7, 10, 12, 16} |
| number of ladders on each layer | |
| int | m_nSensors [4] = {2, 3, 4, 5} |
| number of sensors on a ladder on each layer | |
| TreeStruct | m_rates |
| tree variables for fired strips | |
| TreeStruct | m_ratesU |
| tree variables for fired U-strips | |
| TreeStruct | m_ratesV |
| tree variables for fired V-strips | |
| TreeStruct | m_rates_highE |
| tree variables for high-energy clusters | |
| TreeStruct | m_rates_lowE |
| tree variables for low-energy clusters | |
| TreeStruct | m_clustersU |
| tree variables for U-side clusters | |
| TreeStruct | m_clustersV |
| tree variables for V-side clusters | |
| TreeStruct | m_rates_energyU |
| Tree variables for deposited charge per unit time, then converted to dose rate (U-side) | |
| TreeStruct | m_rates_energyV |
| Tree variables for deposited charge per unit time, then converted to dose rate (V-side) | |
| std::map< unsigned, TreeStruct > | m_buffer |
| average strip occupancies in time stamps | |
| std::map< unsigned, TreeStruct > | m_bufferU |
| average U-strip occupancies in time stamps | |
| std::map< unsigned, TreeStruct > | m_bufferV |
| average V-strip occupancies in time stamps | |
| std::map< unsigned, TreeStruct > | m_buffer_highE |
| average cluster occupancies (high energy) in time stamps | |
| std::map< unsigned, TreeStruct > | m_buffer_lowE |
| average cluster occupancies (low energy) in time stamps | |
| std::map< unsigned, TreeStruct > | m_buffer_clustersU |
| average cluster occupancies (U-side) in time stamps | |
| std::map< unsigned, TreeStruct > | m_buffer_clustersV |
| average cluster occupancies (V-side) in time stamps | |
| std::map< unsigned, TreeStruct > | m_buffer_energyU |
| Average deposited energy (U-side) per event in time stamps. | |
| std::map< unsigned, TreeStruct > | m_buffer_energyV |
| Average deposited energy (V-side) per event in time stamps. | |
| StoreArray< SVDShaperDigit > | m_digits |
| collection of digits | |
| StoreArray< SVDCluster > | m_clusters |
| collection of clusters | |
| StoreObjPtr< SoftwareTriggerResult > | m_resultStoreObjectPointer |
| trigger decision | |
| StoreObjPtr< SVDEventInfo > | m_eventInfo |
| For number of APV samples taken (3 or 6). | |
| SVDHotStripsCalibrations | m_HotStripsCalib |
| payload for hot strips | |
| SVDFADCMaskedStrips | m_FADCMaskedStrips |
| payload for strips masked on FADC level | |
| OptionalDBObjPtr< HardwareClockSettings > | m_clockSettings |
| hardware clock settings | |
| std::string | m_svdShaperDigitsName |
| name of the input SVDShaperDigits collection | |
| int | m_activeStrips = 0 |
| number of active strips | |
| int | m_layerActiveStrips [4] = {0} |
| number of active strips in each layer | |
| int | m_layerLadderActiveStrips [4][16] = {{0}} |
| number of active strips in each layer, ladder | |
| int | m_layerSensorActiveStrips [4][5] = {{0}} |
| number of active strips in each layer, sensor position | |
| int | m_l3LadderSensorActiveStrips [7][2] = {{0}} |
| number of active strips in each sensor in Layer 3 | |
| int | m_activeStripsU = 0 |
| number of active U-strips | |
| int | m_layerActiveStripsU [4] = {0} |
| number of active U-strips in each layer | |
| int | m_layerLadderActiveStripsU [4][16] = {{0}} |
| number of active U-strips in each layer, ladder | |
| int | m_layerSensorActiveStripsU [4][5] = {{0}} |
| number of active U-strips in each layer, sensor position | |
| int | m_l3LadderSensorActiveStripsU [7][2] = {{0}} |
| number of active U-strips in each sensor in Layer 3 | |
| int | m_activeStripsV = 0 |
| number of active V-strips | |
| int | m_layerActiveStripsV [4] = {0} |
| number of active V-strips in each layer | |
| int | m_layerLadderActiveStripsV [4][16] = {{0}} |
| number of active V-strips in each layer, ladder | |
| int | m_layerSensorActiveStripsV [4][5] = {{0}} |
| number of active V-strips in each layer, sensor position | |
| int | m_l3LadderSensorActiveStripsV [7][2] = {{0}} |
| number of active V-strips in each sensor in Layer 3 | |
| double | m_thrCharge = 0 |
| cut on cluster energy in electrons | |
| bool | m_ignoreHotStripsPayload |
| count hot strips as active | |
| bool | m_ignoreMaskedStripsPayload |
| SVD: count FAD-masked strips as active. | |
| double | m_massKg = 0 |
| Active mass of the whole SVD in Kg. | |
| double | m_layerMassKg [4] = {0} |
| Active mass of each layer in Kg. | |
| double | m_layerLadderMassKg [4][16] = {{0}} |
| Active mass of each ladder of each layer, in Kg. | |
| double | m_layerSensorMassKg [4][5] = {{0}} |
| Active mass of each ladder/sensor position, in Kg. | |
Static Private Attributes | |
| static constexpr double | c_SVDSamplingClockFrequency = 0.03175 |
| SVD Sampling Clock frequency (approximated) in GHz (standard unit of frequency in basf2). More... | |
Class for monitoring beam background hit rates of SVD.
Definition at line 36 of file SVDHitRateCounter.h.
|
inline |
Constructor.
| svdShaperDigitsName | name of the input SVDShaperDigits collection |
| thrCharge | cut on cluster energy in electrons |
| ignoreHotStripsPayload | Count also hot strips as active |
| ignoreMaskedStripsPayload | Count also FADC-masked strips as active |
Definition at line 85 of file SVDHitRateCounter.h.
|
overridevirtual |
Accumulate hits.
| timeStamp | time stamp |
Implements HitRateBase.
Definition at line 144 of file SVDHitRateCounter.cc.
|
overridevirtual |
Class initializer: set branch addresses and other staf.
| tree | a valid TTree pointer |
Implements HitRateBase.
Definition at line 30 of file SVDHitRateCounter.cc.
| bool isStripActive | ( | const VxdID & | sensorID, |
| const bool & | isU, | ||
| const unsigned short & | strip | ||
| ) |
Returns wether a strips is active (neither hot nor masked), taking into account the ignoreHotStrips and ignoreMaskedStrips settings.
| sensorID | The VxdID of the sensor |
| isU | The side of the sensor |
| strip | The strip index |
Definition at line 398 of file SVDHitRateCounter.cc.
| double massOfSensor | ( | int | layer, |
| int | ladder, | ||
| int | sensor | ||
| ) |
Returns the (active) mass of the given sensor in Kg.
| layer | tha layer number (starting from 0, not 3) |
| ladder | the ladder number (starting from 0, not 1) |
| sensor | the sensor number (starting from 0, not 1) |
Definition at line 388 of file SVDHitRateCounter.cc.
|
overridevirtual |
Normalize accumulated hits (e.g.
transform to rates)
| timeStamp | time stamp |
Implements HitRateBase.
Definition at line 303 of file SVDHitRateCounter.cc.
| void normalizeEnergyRates | ( | TreeStruct & | rates | ) |
Normalize a TreeStruct that stores charge/energy, not hits.
| rates | TreeStruct to be normalized. |
Assumes the TreeStruct contains the total accumulated cluster charge (in e-), and uses Const::ehEnergy and the mass of the sensors to convert to the average dose rate per event in mrad/s.
Assumes the integration time is 155 ns (6 samples).
Definition at line 364 of file SVDHitRateCounter.cc.
| void normalizeRates | ( | TreeStruct & | rates, |
| bool | isU = false, |
||
| bool | isV = false |
||
| ) |
Normalize TreeStruct.
| rates | TreeStruct to be normalized |
| isU | Whether the TreeStruct only contains U-side hits |
| isV | Whether the TreeStruct only contains V-side hits |
Definition at line 328 of file SVDHitRateCounter.cc.
|
inline |
Return number of strips on a sensor.
| layer | layer number of the sensor (starting from 0) |
| isU | true if the sensor is U side, false if V. |
Definition at line 142 of file SVDHitRateCounter.h.
|
staticconstexprprivate |
SVD Sampling Clock frequency (approximated) in GHz (standard unit of frequency in basf2).
This is used as a fallback value when HardwareClockSettings' payload is not available.
Definition at line 245 of file SVDHitRateCounter.h.