5#ifndef TRT_DIGITIZATION_TRTELECTRONICSNOISE_H
6#define TRT_DIGITIZATION_TRTELECTRONICSNOISE_H
8#include "CLHEP/Random/RandomEngine.h"
25 CLHEP::HepRandomEngine *rndmEngine );
39 unsigned long nsamplings,
40 CLHEP::HepRandomEngine *rndmEngine);
60 CLHEP::HepRandomEngine *rndmEngine);
74 const double& noiseamplitude ,
75 CLHEP::HepRandomEngine *rndmEngine);
95 double getMax(
unsigned int firstbinslowsignal,
96 unsigned int firstbinfastsignal,
97 const unsigned int& binsinwindow );
Class containing parameters and settings used by TRT digitization.
TRTElectronicsNoise(const TRTDigSettings *, CLHEP::HepRandomEngine *rndmEngine)
Constructor: Calls tabulateNoiseSignalShape()
void getSamplesOfMaxLTOverNoiseAmp(std::vector< float > &maxLTOverNoiseAmp, unsigned long nsamplings, CLHEP::HepRandomEngine *rndmEngine)
From generated (and cached) noise samples, this function returns in vector maxLTOverNoiseAmp the maxi...
std::vector< double > m_noisepars2
Noise signal params 2 (t>15.5 ns)
double m_fractionOfSlowNoise
std::vector< float > m_cachedFastNoiseAfterSignalShaping
Cached samples of electronics noise after signal shaping (fast input)
void addElectronicsNoise(std::vector< double > &signal, const double &noiseamplitude, CLHEP::HepRandomEngine *rndmEngine)
Add electronics noise to simulated signals in hit straws.
std::vector< double > m_noisepars1
Noise signal params 1 (t<15.5 ns)
void InitializeNoiseShaping()
Initialize signal shaping.
void reinitElectronicsNoise(const unsigned int &numberOfDigitLengths, CLHEP::HepRandomEngine *rndmEngine)
Re-initialize electronics noise table.
const TRTDigSettings * m_settings
unsigned int m_nbins_periodic
void setElectronicsNoiseAmplitude(const double &)
Set electronics noise amplitude.
double NoiseShape(const double &time) const
Get parameterized signal shape for noise hits.
std::vector< double > m_noiseSignalShape
Tabulated noise signal shape.
~TRTElectronicsNoise()
Destructor.
void tabulateNoiseSignalShape()
Tabulate noise signal shape.
double getMax(unsigned int firstbinslowsignal, unsigned int firstbinfastsignal, const unsigned int &binsinwindow)
Get max amplitude of noise signal from weighted sum of fast and slow varying noise in period.
std::vector< float > m_tmpArray
Here to avoid repeated memory allocs.
std::vector< float > m_cachedSlowNoiseAfterSignalShaping
Cached samples of electronics noise after signal shaping (slow input)