#include <SBNDuBooNEDataDrivenNoiseService.h>
Public Member Functions | |
SBNDuBooNEDataDrivenNoiseService (fhicl::ParameterSet const &pset) | |
SBNDuBooNEDataDrivenNoiseService (fhicl::ParameterSet const &pset, art::ActivityRegistry &) | |
~SBNDuBooNEDataDrivenNoiseService () | |
int | addNoise (detinfo::DetectorClocksData const &clockData, Channel chan, AdcSignalVector &sigs) const override |
void | generateNoise (detinfo::DetectorClocksData const &clockData) override |
std::ostream & | print (std::ostream &out=std::cout, std::string prefix="") const override |
Public Member Functions inherited from ChannelNoiseService | |
virtual | ~ChannelNoiseService ()=default |
virtual void | InitialiseProducerDeps (art::EDProducer *EDProdPointer, fhicl::ParameterSet const &pset) |
Private Member Functions | |
void | generateMicroBooNoise (float wirelength, float ENOB, AdcSignalVector &noise, TH1 *aNoiseHist) const |
void | generateGaussianNoise (detinfo::DetectorClocksData const &clockData, AdcSignalVector &noise, std::vector< float > gausNorm, std::vector< float > gausMean, std::vector< float > gausSigma, TH1 *aNoiseHist) const |
void | generateCoherentNoise (detinfo::DetectorClocksData const &clockData, AdcSignalVector &noise, std::vector< float > gausNorm, std::vector< float > gausMean, std::vector< float > gausSigma, float cohExpNorm, float cohExpWidth, float cohExpOffset, TH1 *aNoiseHist) const |
void | makeCoherentGroupsByOfflineChannel (unsigned int nchpergroup) |
unsigned int | getGroupNumberFromOfflineChannel (unsigned int offlinechan) const |
unsigned int | getCohNoiseChanFromGroup (unsigned int cohgroup) const |
CLHEP::HepRandomEngine * | ConstructRandomEngine (const bool haveSeed) |
double | GetRandomTF1 (TF1 *func) const |
Private Attributes | |
std::vector< unsigned int > | fChannelGroupMap |
assign each channel a group number More... | |
std::vector< int > | fGroupCoherentNoiseMap |
assign each group a noise More... | |
unsigned int | fNoiseArrayPoints |
number of points in randomly generated noise array More... | |
int | fRandomSeed |
Seed for random number service. If absent or zero, use SeedSvc. More... | |
int | fLogLevel |
Log message level: 0=quiet, 1=init only, 2+=every event. More... | |
bool | fEnableWhiteNoise |
float | fWhiteNoiseZ |
Level (per freq bin) for white noise for Z. More... | |
float | fWhiteNoiseU |
Level (per freq bin) for white noise for U. More... | |
float | fWhiteNoiseV |
Level (per freq bin) for white noise for V. More... | |
bool | fEnableGaussianNoise |
std::vector< float > | fGausNormU |
noise scale factor for the gaussian component in coherent noise More... | |
std::vector< float > | fGausMeanU |
mean of the gaussian component in coherent noise More... | |
std::vector< float > | fGausSigmaU |
sigma of the gaussian component in coherent noise More... | |
std::vector< float > | fGausNormV |
noise scale factor for the gaussian component in coherent noise More... | |
std::vector< float > | fGausMeanV |
mean of the gaussian component in coherent noise More... | |
std::vector< float > | fGausSigmaV |
sigma of the gaussian component in coherent noise More... | |
std::vector< float > | fGausNormZ |
noise scale factor for the gaussian component in coherent noise More... | |
std::vector< float > | fGausMeanZ |
mean of the gaussian component in coherent noise More... | |
std::vector< float > | fGausSigmaZ |
sigma of the gaussian component in coherent noise More... | |
bool | fEnableMicroBooNoise |
enable MicroBooNE noise model More... | |
float | fENOB |
Effective number of bits. More... | |
bool | fIncludeJumpers |
Include jumper term. More... | |
float | fJumperCapacitance |
Capacitance of jumper cables in pF. Defaults to 0 if not included. More... | |
float | fUFirstJumper |
Wire number of first wire on U layer to include a jumper cable. Defaults to 0 if not included. More... | |
float | fULastJumper |
Wire number of last wire on U layer to include a jumper cable. Defaults to 0 if not included. More... | |
float | fVFirstJumper |
Wire number of first wire on V layer to include a jumper cable. Defaults to 0 if not included. More... | |
float | fVLastJumper |
Wire number of last wire on V layer to include a jumper cable. Defaults to 0 if not included. More... | |
std::vector< float > | fNoiseFunctionParameters |
Parameters in the MicroBooNE noise model. More... | |
bool | fEnableCoherentNoise |
std::vector< unsigned int > | fNChannelsPerCoherentGroup |
unsigned int | fExpNoiseArrayPoints |
number of points in randomly generated noise array More... | |
unsigned int | fCohNoiseArrayPoints |
number of points in randomly generated noise array More... | |
float | fCohExpNorm |
noise scale factor for the exponential component component in coherent noise More... | |
float | fCohExpWidth |
width of the exponential component in coherent noise More... | |
float | fCohExpOffset |
Amplitude offset of the exponential background component in coherent noise. More... | |
std::vector< float > | fCohGausNorm |
noise scale factor for the gaussian component in coherent noise More... | |
std::vector< float > | fCohGausMean |
mean of the gaussian component in coherent noise More... | |
std::vector< float > | fCohGausSigma |
sigma of the gaussian component in coherent noise More... | |
AdcSignalVectorVector | fGausNoiseZ |
AdcSignalVectorVector | fGausNoiseU |
AdcSignalVectorVector | fGausNoiseV |
AdcSignalVectorVector | fMicroBooNoiseZ |
AdcSignalVectorVector | fMicroBooNoiseU |
AdcSignalVectorVector | fMicroBooNoiseV |
AdcSignalVectorVector | fCohNoiseZ |
noise on each channel for each time for all planes More... | |
AdcSignalVectorVector | fCohNoiseU |
noise on each channel for each time for all planes More... | |
AdcSignalVectorVector | fCohNoiseV |
noise on each channel for each time for all planes More... | |
TH1 * | fGausNoiseHistZ |
distribution of noise counts for Z More... | |
TH1 * | fGausNoiseHistU |
distribution of noise counts for U More... | |
TH1 * | fGausNoiseHistV |
distribution of noise counts for V More... | |
TH1 * | fGausNoiseChanHist |
distribution of accessed noise samples More... | |
TH1 * | fMicroBooNoiseHistZ |
distribution of noise counts for Z More... | |
TH1 * | fMicroBooNoiseHistU |
distribution of noise counts for U More... | |
TH1 * | fMicroBooNoiseHistV |
distribution of noise counts for V More... | |
TH1 * | fMicroBooNoiseChanHist |
distribution of accessed noise samples More... | |
TH1 * | fCohNoiseHist |
distribution of noise counts More... | |
TH1 * | fCohNoiseChanHist |
distribution of accessed noise samples More... | |
TF1 * | _wld_f |
double | wldparams [2] |
TF1 * | _poisson |
bool | haveSeed |
CLHEP::HepRandomEngine * | m_pran |
TRandom3 * | fTRandom3 |
Additional Inherited Members | |
Public Types inherited from ChannelNoiseService | |
typedef unsigned int | Channel |
Definition at line 50 of file SBNDuBooNEDataDrivenNoiseService.h.
SBNDuBooNEDataDrivenNoiseService::SBNDuBooNEDataDrivenNoiseService | ( | fhicl::ParameterSet const & | pset | ) |
Definition at line 25 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
SBNDuBooNEDataDrivenNoiseService::SBNDuBooNEDataDrivenNoiseService | ( | fhicl::ParameterSet const & | pset, |
art::ActivityRegistry & | |||
) |
Definition at line 105 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
SBNDuBooNEDataDrivenNoiseService::~SBNDuBooNEDataDrivenNoiseService | ( | ) |
Definition at line 110 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
overridevirtual |
This part below has been moved from the generateMicroBooNoise section as it needs to be done differently for SBND due to different wirelengths.
Implements ChannelNoiseService.
Definition at line 149 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 120 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 433 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 360 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
|
overridevirtual |
Reimplemented from ChannelNoiseService.
Definition at line 558 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 552 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 547 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 139 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 525 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
overridevirtual |
Implements ChannelNoiseService.
Definition at line 286 of file SBNDuBooNEDataDrivenNoiseService_service.cc.
|
private |
Definition at line 179 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 176 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
assign each channel a group number
Definition at line 93 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise scale factor for the exponential component component in coherent noise
Definition at line 137 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Amplitude offset of the exponential background component in coherent noise.
Definition at line 139 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
width of the exponential component in coherent noise
Definition at line 138 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
mean of the gaussian component in coherent noise
Definition at line 141 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise scale factor for the gaussian component in coherent noise
Definition at line 140 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
sigma of the gaussian component in coherent noise
Definition at line 142 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
number of points in randomly generated noise array
Definition at line 136 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of accessed noise samples
Definition at line 174 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts
Definition at line 173 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise on each channel for each time for all planes
Definition at line 157 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise on each channel for each time for all planes
Definition at line 158 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise on each channel for each time for all planes
Definition at line 156 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 133 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 110 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
enable MicroBooNE noise model
Definition at line 122 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 104 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Effective number of bits.
Definition at line 123 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
number of points in randomly generated noise array
Definition at line 135 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
mean of the gaussian component in coherent noise
Definition at line 112 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
mean of the gaussian component in coherent noise
Definition at line 115 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
mean of the gaussian component in coherent noise
Definition at line 118 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of accessed noise samples
Definition at line 166 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for U
Definition at line 164 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for V
Definition at line 165 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for Z
Definition at line 163 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 147 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 148 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 146 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise scale factor for the gaussian component in coherent noise
Definition at line 111 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise scale factor for the gaussian component in coherent noise
Definition at line 114 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
noise scale factor for the gaussian component in coherent noise
Definition at line 117 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
sigma of the gaussian component in coherent noise
Definition at line 113 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
sigma of the gaussian component in coherent noise
Definition at line 116 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
sigma of the gaussian component in coherent noise
Definition at line 119 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
assign each group a noise
Definition at line 94 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Include jumper term.
Definition at line 124 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Capacitance of jumper cables in pF. Defaults to 0 if not included.
Definition at line 125 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Log message level: 0=quiet, 1=init only, 2+=every event.
Definition at line 101 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of accessed noise samples
Definition at line 171 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for U
Definition at line 169 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for V
Definition at line 170 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
distribution of noise counts for Z
Definition at line 168 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 152 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 153 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 151 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 134 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
number of points in randomly generated noise array
Definition at line 99 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Parameters in the MicroBooNE noise model.
Definition at line 130 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Seed for random number service. If absent or zero, use SeedSvc.
Definition at line 100 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 187 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Wire number of first wire on U layer to include a jumper cable. Defaults to 0 if not included.
Definition at line 126 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Wire number of last wire on U layer to include a jumper cable. Defaults to 0 if not included.
Definition at line 127 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Wire number of first wire on V layer to include a jumper cable. Defaults to 0 if not included.
Definition at line 128 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Wire number of last wire on V layer to include a jumper cable. Defaults to 0 if not included.
Definition at line 129 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Level (per freq bin) for white noise for U.
Definition at line 106 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Level (per freq bin) for white noise for V.
Definition at line 107 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Level (per freq bin) for white noise for Z.
Definition at line 105 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 183 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 184 of file SBNDuBooNEDataDrivenNoiseService.h.
|
private |
Definition at line 177 of file SBNDuBooNEDataDrivenNoiseService.h.