ShapedCohProtoDUNENoiseService.h
Go to the documentation of this file.
1 // ShapedCohProtoDUNENoiseService
2 //
3 // Pierre Lasorak, Babak Abi
4 // Dec 2020
5 
6 #pragma once
7 
9 
10 #include "CLHEP/Random/JamesRandom.h"
14 
16 public:
17 
21 
24  Channel, AdcSignalVector&) const;
25 
26  void newEvent();
27 
28  std::ostream& print(std::ostream&, std::string) const;
29 
30 protected:
34 
35 private:
36  void init();
37  static const size_t m_n_apa = 12;
38  static const size_t m_n_tick = 8192;
39  static const size_t m_n_wire_per_apa = 2560;
40  static const size_t m_n_femb = 20;
41  static const size_t m_n_max_coh_noise = 9;
42 
43  CLHEP::HepRandomEngine* m_pran;
45 
50 
51  std::map<size_t, size_t> m_channel_femb;
52  // Coherent noise
56 
57  std::vector<std::vector<double>> m_FEMBCo_Frq_nominal;
58  std::vector<std::vector<double>> m_FEMBCo_Amp_nominal;
59  std::vector<std::vector<double>> m_FEMBCo_Phs_nominal;
60 
61  // Fast access
63 
64  // HV noise
65  std::vector<double> m_HV1_Frq_nominal;
66  std::vector<double> m_HV1_Amp_nominal;
67  std::vector<double> m_HV1_Phs_nominal;
68 
69  // Fast access
71 
72  bool m_init = 0;
73 };
74 
75 
std::string string
Definition: nybbler.cc:12
std::vector< std::vector< double > > m_FEMBCo_Phs_nominal
std::vector< std::vector< double > > m_FEMBCo_Amp_nominal
DECLARE_ART_SERVICE_INTERFACE_IMPL(MySharedService, art::test::MyServiceInterface, SHARED) DEFINE_ART_SERVICE_INTERFACE_IMPL(MySharedService
std::ostream & print(std::ostream &, std::string) const
Service to provide microboone-specific signal shaping for simulation (convolution) and reconstruction...
art framework interface to geometry description
int addHVNoise(const Channel, AdcSignalVector &, detinfo::DetectorClocksData const &) const
ShapedCohProtoDUNENoiseService(fhicl::ParameterSet const &)
int addNoise(detinfo::DetectorClocksData const &, detinfo::DetectorPropertiesData const &, Channel, AdcSignalVector &) const
Contains all timing reference information for the detector.
std::vector< std::vector< double > > m_FEMBCo_Frq_nominal
std::vector< AdcSignal > AdcSignalVector
Definition: AdcTypes.h:22
int addFEMBNoise(const Channel, AdcSignalVector &, detinfo::DetectorClocksData const &) const
art::ServiceHandle< geo::Geometry > m_geo
double m_FEMBCo_Wfm_this_event_vec[m_n_apa][m_n_femb][m_n_tick]
int addShapedNoise(const Channel, AdcSignalVector &, detinfo::DetectorClocksData const &) const