![]() |
ATLAS Offline Software
|
Simulate TRT Electronics Noise
For description of metod, see Thomas Kittelmanns PhD thesis chapters 9-11.
More...
#include <TRTElectronicsNoise.h>
Public Member Functions | |
| TRTElectronicsNoise (const TRTDigSettings *, CLHEP::HepRandomEngine *rndmEngine) | |
| Constructor: Calls tabulateNoiseSignalShape() More... | |
| ~TRTElectronicsNoise () | |
| Destructor. More... | |
| 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 maximum of the noise amplitude within each of nsamplings 75 ns long samplings. More... | |
| void | reinitElectronicsNoise (const unsigned int &numberOfDigitLengths, CLHEP::HepRandomEngine *rndmEngine) |
| Re-initialize electronics noise table. More... | |
| void | setElectronicsNoiseAmplitude (const double &) |
| Set electronics noise amplitude. More... | |
| void | addElectronicsNoise (std::vector< double > &signal, const double &noiseamplitude, CLHEP::HepRandomEngine *rndmEngine) |
| Add electronics noise to simulated signals in hit straws. More... | |
Private Member Functions | |
| void | tabulateNoiseSignalShape () |
| Tabulate noise signal shape. More... | |
| 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. More... | |
| void | InitializeNoiseShaping () |
| Initialize signal shaping. More... | |
| double | NoiseShape (const double &time) const |
| Get parameterized signal shape for noise hits. More... | |
Private Attributes | |
| const TRTDigSettings * | m_settings |
| std::vector< double > | m_noiseSignalShape |
| Tabulated noise signal shape. More... | |
| std::vector< float > | m_cachedFastNoiseAfterSignalShaping |
| Cached samples of electronics noise after signal shaping (fast input) More... | |
| std::vector< float > | m_cachedSlowNoiseAfterSignalShaping |
| Cached samples of electronics noise after signal shaping (slow input) More... | |
| std::vector< float > | m_tmpArray |
| Here to avoid repeated memory allocs. More... | |
| double | m_fractionOfSlowNoise |
| unsigned int | m_nbins_periodic |
| std::vector< double > | m_noisepars1 |
| Noise signal params 1 (t<15.5 ns) More... | |
| std::vector< double > | m_noisepars2 |
| Noise signal params 2 (t>15.5 ns) More... | |
Simulate TRT Electronics Noise
For description of metod, see Thomas Kittelmanns PhD thesis chapters 9-11.
Definition at line 18 of file TRTElectronicsNoise.h.
| TRTElectronicsNoise::TRTElectronicsNoise | ( | const TRTDigSettings * | digset, |
| CLHEP::HepRandomEngine * | rndmEngine | ||
| ) |
Constructor: Calls tabulateNoiseSignalShape()
Definition at line 20 of file TRTElectronicsNoise.cxx.
|
default |
Destructor.
| void TRTElectronicsNoise::addElectronicsNoise | ( | std::vector< double > & | signal, |
| const double & | noiseamplitude, | ||
| CLHEP::HepRandomEngine * | rndmEngine | ||
| ) |
Add electronics noise to simulated signals in hit straws.
Analog noise is added to simulated signal after signal shaping. The analog noise is taken from m_cachedFastNoiseAfterSignalShaping[] and m_cachedSlowNoiseAfterSignalShaping[]
| signal | tabulated analog shaped signal |
| noiseamplitude | noise amplitude |
Definition at line 197 of file TRTElectronicsNoise.cxx.
|
private |
Get max amplitude of noise signal from weighted sum of fast and slow varying noise in period.
| firstbinslowsignal | pointer into array (LUT) of slow noise signals |
| firstbinfastsignal | pointer into array (LUT) of fast noise signals |
| binsinwindow | number of bins in window, where maximum is searched |
Definition at line 66 of file TRTElectronicsNoise.cxx.
| void TRTElectronicsNoise::getSamplesOfMaxLTOverNoiseAmp | ( | std::vector< float > & | maxLTOverNoiseAmp, |
| unsigned long | nsamplings, | ||
| CLHEP::HepRandomEngine * | rndmEngine | ||
| ) |
From generated (and cached) noise samples, this function returns in vector maxLTOverNoiseAmp the maximum of the noise amplitude within each of nsamplings 75 ns long samplings.
| maxLTOverNoiseAmp | vector containing max noise signal for each of the 75 ns long sampling |
| nsamplings | number of samplings |
Definition at line 40 of file TRTElectronicsNoise.cxx.
|
private |
Initialize signal shaping.
Definition at line 252 of file TRTElectronicsNoise.cxx.
|
private |
Get parameterized signal shape for noise hits.
| time | time after signal arrival |
Definition at line 277 of file TRTElectronicsNoise.cxx.
| void TRTElectronicsNoise::reinitElectronicsNoise | ( | const unsigned int & | numberOfDigitLengths, |
| CLHEP::HepRandomEngine * | rndmEngine | ||
| ) |
Re-initialize electronics noise table.
Fills the cached tables m_cachedFastNoiseAfterSignalShaping and m_cachedSlowNoiseAfterSignalShaping with numberOfDigitLengths 75 ns long noise signals.
Procedure (same for fast and slow signals)
noiseSignalShaping into cached tables| numberOfDigitLengths | number of 75ns timeslices to generate noise for |
Definition at line 88 of file TRTElectronicsNoise.cxx.
| void TRTElectronicsNoise::setElectronicsNoiseAmplitude | ( | const double & | ) |
Set electronics noise amplitude.
|
private |
Tabulate noise signal shape.
Extract signal shape from NoiseShape(time) function and store in table.
Definition at line 169 of file TRTElectronicsNoise.cxx.
|
private |
Cached samples of electronics noise after signal shaping (fast input)
Definition at line 102 of file TRTElectronicsNoise.h.
|
private |
Cached samples of electronics noise after signal shaping (slow input)
Definition at line 104 of file TRTElectronicsNoise.h.
|
private |
Definition at line 108 of file TRTElectronicsNoise.h.
|
private |
Definition at line 109 of file TRTElectronicsNoise.h.
|
private |
Noise signal params 1 (t<15.5 ns)
Definition at line 123 of file TRTElectronicsNoise.h.
|
private |
Noise signal params 2 (t>15.5 ns)
Definition at line 124 of file TRTElectronicsNoise.h.
|
private |
Tabulated noise signal shape.
Definition at line 99 of file TRTElectronicsNoise.h.
|
private |
Definition at line 79 of file TRTElectronicsNoise.h.
|
private |
Here to avoid repeated memory allocs.
Definition at line 106 of file TRTElectronicsNoise.h.
1.8.18