#include <GaussianTailNoiseGenerator.h>
Public Member Functions | |
GaussianTailNoiseGenerator (CLHEP::HepRandomEngine &eng) | |
void | generate (int NumberOfchannels, float threshold, float noiseRMS, std::map< int, float > &theMap) |
void | generate (int NumberOfchannels, float threshold, float noiseRMS, std::vector< std::pair< int, float > > &) |
void | generateRaw (float noiseRMS, std::vector< double > &) |
Protected Member Functions | |
double | generate_gaussian_tail (const double, const double) |
int * | getRandomChannels (int, int) |
Private Attributes | |
int | channel512_ [512] |
int | channel768_ [768] |
CLHEP::RandFlat | flatDistribution_ |
CLHEP::RandGaussQ | gaussDistribution_ |
CLHEP::RandPoissonQ | poissonDistribution_ |
Generation of random noise on "numberOfChannels" channels with a given threshold. The generated noise :
Initial author : Veronique Lefebure 08.10.98
according to the FORTRAN code tgreset.F from Pascal Vanlaer
Modified by C. Delaere 01.10.09
Fills in a map < channel number, generated noise >
Definition at line 29 of file GaussianTailNoiseGenerator.h.
GaussianTailNoiseGenerator::GaussianTailNoiseGenerator | ( | CLHEP::HepRandomEngine & | eng | ) |
Definition at line 11 of file GaussianTailNoiseGenerator.cc.
References channel512_, channel768_, and i.
void GaussianTailNoiseGenerator::generate | ( | int | NumberOfchannels, |
float | threshold, | ||
float | noiseRMS, | ||
std::map< int, float > & | theMap | ||
) |
Referenced by SiPixelDigitizerAlgorithm::add_noise(), and SiGaussianTailNoiseAdder::addNoise().
void GaussianTailNoiseGenerator::generate | ( | int | NumberOfchannels, |
float | threshold, | ||
float | noiseRMS, | ||
std::vector< std::pair< int, float > > & | theVector | ||
) |
Definition at line 54 of file GaussianTailNoiseGenerator.cc.
References benchmark_cfg::cerr, generate_gaussian_tail(), getRandomChannels(), i, poissonDistribution_, and query::result.
|
protected |
Definition at line 127 of file GaussianTailNoiseGenerator.cc.
References flatDistribution_, gaussDistribution_, funct::log(), asciidump::s, mathSSE::sqrt(), v, and x.
Referenced by generate().
void GaussianTailNoiseGenerator::generateRaw | ( | float | noiseRMS, |
std::vector< double > & | theVector | ||
) |
Definition at line 97 of file GaussianTailNoiseGenerator.cc.
References gaussDistribution_, and i.
|
protected |
Definition at line 111 of file GaussianTailNoiseGenerator.cc.
References b, channel512_, channel768_, flatDistribution_, and j.
Referenced by generate().
|
private |
Definition at line 66 of file GaussianTailNoiseGenerator.h.
Referenced by GaussianTailNoiseGenerator(), and getRandomChannels().
|
private |
Definition at line 67 of file GaussianTailNoiseGenerator.h.
Referenced by GaussianTailNoiseGenerator(), and getRandomChannels().
|
private |
Definition at line 65 of file GaussianTailNoiseGenerator.h.
Referenced by generate_gaussian_tail(), and getRandomChannels().
|
private |
Definition at line 63 of file GaussianTailNoiseGenerator.h.
Referenced by generate_gaussian_tail(), and generateRaw().
|
private |
Definition at line 64 of file GaussianTailNoiseGenerator.h.
Referenced by generate().