70 unsigned int seed = pset.
get<
unsigned int>(
"Seed",
87 fNoiseMap = tfs->
make<TH3D>(
"h3_adc0adc1adc2",
";ADC0;ADC1;ADC2",
102 const int maxADC = (1<<12)-1;
110 if(ASIC_Output[
n] < 0) ASIC_Output[
n] = 0;
111 if(ASIC_Output[
n] > maxADC) ASIC_Output[
n] = maxADC;
119 if(iidx >= fNumClockticksInSpill)
continue;
126 if(jidx >= fNumClockticksInSpill)
continue;
128 fCovMat(i, j) += ASIC_Output[iidx]*ASIC_Output[jidx];
135 const std::vector<rawdata::RawDigit> digits =
138 for(
unsigned int i = 0;
i < digits.size(); ++
i){
int fNumClockticksPerDigitization
How many ticks between each ADC.
virtual std::vector< rawdata::RawDigit > ASICToDigits(double *ASIC_Output, int offset)=0
static art::ServiceHandle< art::RandomNumberGenerator > & rng()
rsim::NoiseMaker fNoiseMaker
base_engine_t & createEngine(seed_t seed)
IFPGAAlgorithm * CreateFPGAAlgorithm(const fhicl::ParameterSet &pset)
Create and configure the correct algorithm based on pset.
virtual ~MakeNoiseSpectrumFile()
DEFINE_ART_MODULE(TestTMapFile)
int fN
How many spills have we simulated?
Common configuration params for SimpleReadout, FPGAAlgorithms, NoiseMaker.
base_engine_t & getEngine() const
double GetNoise(CLHEP::RandGaussQ *gauss)
T get(std::string const &key) const
Interface implemented by all FPGA algorithms.
EDAnalyzer(Table< Config > const &config)
static constexpr Double_t gauss
static const double ns
Module that plots metrics from reconstructed cosmic ray data.
void analyze(const art::Event &evt)
rsim::IFPGAAlgorithm * fFPGAAlgo
double fADCMaxPE
maximum signal size that the ADC can handle without saturating (in PE)
unsigned int GetRandomNumberSeed()
T * make(ARGS...args) const
int16_t ADC(uint32_t i) const
MakeNoiseSpectrumFile(fhicl::ParameterSet const &pset)
Can be used as either a member holding configurations, or a mix-in.
int fNumClockticksInSpill
number of clockticks in a spill
double fASICBaselineInADCCounts
ASIC baseline output level, in ADC counts.
double fClocktick
digitization clock period, ns