Algorithm that digitizes the Monte Carlo FIT hits simulating the response of the SIPM reading.
More...
#include <algorithms/digitization/FitDigitizerAlgo.h>
Algorithm that digitizes the Monte Carlo FIT hits simulating the response of the SIPM reading.
TODO: description to be added
Needed event objects:
name | type | store | optional | description |
fitParticleHitsCollMC | FitParticleHitsColl | evStore | yes | The particle hits in the FIT produced by MC simulation. |
Needed global objects:
name | type | store | optional | description |
fitGeoParamsColl | FitGeoParamsColl | globStore | yes | Geometric parameters of the FIT. |
Produced event objects:
name | alias | type | store | description |
fitDigHitsCollMC | fitHitsCollADC | FitHitsColl | evStore | The hits in the digitized SiPMs of the FIT. |
Produced global objects:
name | alias | type | store | description |
fitDigitizedGeoParamsColl | fitGeoParamsColl | FitGeoParamsColl | globStore | Geometric parameters of the FIT after digitization. |
fitDigitizedChannelInfoColl | fitChannelInfoColl | FitChannelInfoColl | globStore | Channel info of the FIT (if enabled). |
Parameters:
name | type | default value | description |
nTopMatsPerLayer | int | 11 | Number of mats per each top FIT layer |
nSideShortMatsPerLayer | int | 10 | Number of short mats per each side FIT layer |
nSideLongMatsPerLayer | int | 7 | Number of long per each side FIT layer |
publishChannelInfo | bool | true | Decide if fill and publish a FitChannelInfo object |
simulateNoise | bool | true | Decide if simulate channel noise |
simulateIntraChannelXTalk | bool | true | Decide if simulate channel crosstalk |
◆ FitDigitizerAlgo()
Herd::FitDigitizerAlgo::FitDigitizerAlgo |
( |
const std::string & |
name | ) |
|
Constructor.
- Parameters
-
name | The name of the algorithm. |
◆ _CreateChannelInfo()
◆ _CreateGeoParams()
◆ _GenerateSipmGains()
std::vector< float > Herd::FitDigitizerAlgo::_GenerateSipmGains |
( |
const FitGeoParams & |
digGeoParams | ) |
|
|
private |
◆ Initialize()
bool Herd::FitDigitizerAlgo::Initialize |
( |
| ) |
|
|
override |
Initialization of the algorithm.
- Returns
- false if the aggregation parameters are not exact divisors of tile/bar numbers
◆ Process()
bool Herd::FitDigitizerAlgo::Process |
( |
| ) |
|
|
override |
Process a single event.
This method also sets the geometry parameters of digitized FIT.
- Returns
- If event processing is successful.
◆ _adcNoise
double Herd::FitDigitizerAlgo::_adcNoise = 0.1 |
|
private |
◆ _digFitChannelInfoColl
◆ _digFitGeoParamsColl
◆ _evStore
StorePtr Herd::FitDigitizerAlgo::_evStore |
|
private |
◆ _fitParticleHitsColl
FitHitsColl Herd::FitDigitizerAlgo::_fitParticleHitsColl |
|
private |
◆ _globStore
StorePtr Herd::FitDigitizerAlgo::_globStore |
|
private |
◆ _nSideLongMatsPerLayer
unsigned int Herd::FitDigitizerAlgo::_nSideLongMatsPerLayer = 7 |
|
private |
◆ _nSideShortMatsPerLayer
unsigned int Herd::FitDigitizerAlgo::_nSideShortMatsPerLayer = 10 |
|
private |
◆ _nTopMatsPerLayer
unsigned int Herd::FitDigitizerAlgo::_nTopMatsPerLayer = 11 |
|
private |
◆ _origFitGeoParamsColl
◆ _publishChannelInfo
bool Herd::FitDigitizerAlgo::_publishChannelInfo = true |
|
private |
◆ _simulateIntraChannelXTalk
bool Herd::FitDigitizerAlgo::_simulateIntraChannelXTalk = true |
|
private |
◆ _simulateNoise
bool Herd::FitDigitizerAlgo::_simulateNoise = true |
|
private |
◆ _sipmGainVariation
double Herd::FitDigitizerAlgo::_sipmGainVariation = 0.0125 |
|
private |
◆ m_distrFiberTool
◆ m_gauss_dist
std::normal_distribution<double> Herd::FitDigitizerAlgo::m_gauss_dist |
|
private |
◆ m_generator
std::mt19937 Herd::FitDigitizerAlgo::m_generator |
|
private |
◆ m_photonTool
◆ m_sipmGains
SidesArray<std::vector<std::vector<float> > > Herd::FitDigitizerAlgo::m_sipmGains |
|
private |
◆ m_sipmTool
The documentation for this class was generated from the following files: