Runs Readout simulation including propagation of electrons and photons to readout. More...
Public Member Functions | |
IonizationReadout (fhicl::ParameterSet const &pset) | |
Standard constructor and destructor for an FMWK module. More... | |
virtual | ~IonizationReadout () |
void | produce (::art::Event &evt) |
void | beginJob () |
void | beginRun (::art::Run &run) |
void | reconfigure (fhicl::ParameterSet const &pset) |
Public Member Functions inherited from art::EDProducer | |
EDProducer (fhicl::ParameterSet const &pset) | |
template<typename Config > | |
EDProducer (Table< Config > const &config) | |
std::string | workerType () const |
Public Member Functions inherited from art::detail::Producer | |
virtual | ~Producer () noexcept |
Producer (fhicl::ParameterSet const &) | |
Producer (Producer const &)=delete | |
Producer (Producer &&)=delete | |
Producer & | operator= (Producer const &)=delete |
Producer & | operator= (Producer &&)=delete |
void | doBeginJob (SharedResources const &resources) |
void | doEndJob () |
void | doRespondToOpenInputFile (FileBlock const &fb) |
void | doRespondToCloseInputFile (FileBlock const &fb) |
void | doRespondToOpenOutputFiles (FileBlock const &fb) |
void | doRespondToCloseOutputFiles (FileBlock const &fb) |
bool | doBeginRun (RunPrincipal &rp, ModuleContext const &mc) |
bool | doEndRun (RunPrincipal &rp, ModuleContext const &mc) |
bool | doBeginSubRun (SubRunPrincipal &srp, ModuleContext const &mc) |
bool | doEndSubRun (SubRunPrincipal &srp, ModuleContext const &mc) |
bool | doEvent (EventPrincipal &ep, ModuleContext const &mc, std::atomic< std::size_t > &counts_run, std::atomic< std::size_t > &counts_passed, std::atomic< std::size_t > &counts_failed) |
Public Member Functions inherited from art::Modifier | |
~Modifier () noexcept | |
Modifier () | |
Modifier (Modifier const &)=delete | |
Modifier (Modifier &&)=delete | |
Modifier & | operator= (Modifier const &)=delete |
Modifier & | operator= (Modifier &&)=delete |
Public Member Functions inherited from art::ModuleBase | |
virtual | ~ModuleBase () noexcept |
ModuleBase () | |
ModuleDescription const & | moduleDescription () const |
void | setModuleDescription (ModuleDescription const &) |
std::array< std::vector< ProductInfo >, NumBranchTypes > const & | getConsumables () const |
void | sortConsumables (std::string const ¤t_process_name) |
template<typename T , BranchType BT> | |
ViewToken< T > | consumesView (InputTag const &tag) |
template<typename T , BranchType BT> | |
ViewToken< T > | mayConsumeView (InputTag const &tag) |
Private Member Functions | |
void | DriftElectronsToReadout (std::vector< sdp::EnergyDeposit > const &edepCol, std::vector< edepIDE > &edepIDEs) |
void | CombineIDEs (std::vector< edepIDE > &edepIDEs, std::vector< sdp::EnergyDeposit > const &edepCol) |
void | CreateSignalDigit (unsigned int const &channel, std::vector< float > &electrons, std::set< size_t > &eDepLocs, std::deque< float > &eDepWeights, std::vector< raw::RawDigit > &digCol,::art::ValidHandle< std::vector< sdp::EnergyDeposit > > &eDepCol,::art::Assns< sdp::EnergyDeposit, raw::RawDigit, float > &erassn,::art::Event &evt) |
void | CheckChannelToEnergyDepositMapping (unsigned int const &channel, sdp::EnergyDeposit const &edep, std::string const &id) |
Private Attributes | |
std::string | fG4Label |
label of G4 module More... | |
std::unique_ptr< ElectronDriftAlg > | fDriftAlg |
algorithm to drift ionization electrons More... | |
const gar::detinfo::DetectorClocks * | fTime |
electronics clock More... | |
std::unique_ptr< TPCReadoutSimAlg > | fROSimAlg |
algorithm to simulate the electronics More... | |
fhicl::ParameterSet | fISCalcPars |
parameter set for the IS calculator More... | |
size_t | fNumTicks |
number of TDC samples More... | |
const gar::geo::GeometryCore * | fGeo |
geometry information More... | |
bool | fCheckChan |
flag to check mapping of energy deposits to channels More... | |
CLHEP::HepRandomEngine & | fEngine |
random engine More... | |
std::string | fPRFFileName |
where to find the pad response function histograms More... | |
TH2F * | fHFILLPRF |
pad response function for hole-filler chamber More... | |
TH2F * | fIROCPRF |
pad response function for IROC More... | |
TH2F * | fIOROCPRF |
pad response function for IOROC More... | |
TH2F * | fOOROCPRF |
pad response function for OOROC More... | |
bool | fUsePRF |
switch to turn on PRF modeling, otherwise just use the arrival pad More... | |
Additional Inherited Members | |
Public Types inherited from art::EDProducer | |
using | ModuleType = EDProducer |
using | WorkerType = WorkerT< EDProducer > |
Public Types inherited from art::detail::Producer | |
template<typename UserConfig , typename KeysToIgnore = void> | |
using | Table = Modifier::Table< UserConfig, KeysToIgnore > |
Public Types inherited from art::Modifier | |
template<typename UserConfig , typename UserKeysToIgnore = void> | |
using | Table = ProducerTable< UserConfig, detail::ModuleConfig, UserKeysToIgnore > |
Static Public Member Functions inherited from art::EDProducer | |
static void | commitEvent (EventPrincipal &ep, Event &e) |
Protected Member Functions inherited from art::ModuleBase | |
ConsumesCollector & | consumesCollector () |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | consumes (InputTag const &) |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | consumesView (InputTag const &) |
template<typename T , BranchType = InEvent> | |
void | consumesMany () |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | mayConsume (InputTag const &) |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | mayConsumeView (InputTag const &) |
template<typename T , BranchType = InEvent> | |
void | mayConsumeMany () |
Runs Readout simulation including propagation of electrons and photons to readout.
The random number generators used by this process are:
Definition at line 70 of file IonizationReadout_module.cc.
|
explicit |
Standard constructor and destructor for an FMWK module.
Definition at line 129 of file IonizationReadout_module.cc.
|
virtual |
Definition at line 172 of file IonizationReadout_module.cc.
|
virtual |
Reimplemented from art::EDProducer.
Definition at line 217 of file IonizationReadout_module.cc.
void gar::rosim::IonizationReadout::beginRun | ( | ::art::Run & | run | ) |
Definition at line 233 of file IonizationReadout_module.cc.
|
private |
Definition at line 633 of file IonizationReadout_module.cc.
|
private |
Definition at line 495 of file IonizationReadout_module.cc.
|
private |
Definition at line 587 of file IonizationReadout_module.cc.
|
private |
Definition at line 348 of file IonizationReadout_module.cc.
void gar::rosim::IonizationReadout::produce | ( | ::art::Event & | evt | ) |
Definition at line 240 of file IonizationReadout_module.cc.
void gar::rosim::IonizationReadout::reconfigure | ( | fhicl::ParameterSet const & | pset | ) |
Definition at line 177 of file IonizationReadout_module.cc.
|
private |
flag to check mapping of energy deposits to channels
Definition at line 107 of file IonizationReadout_module.cc.
|
private |
algorithm to drift ionization electrons
Definition at line 101 of file IonizationReadout_module.cc.
|
private |
random engine
Definition at line 108 of file IonizationReadout_module.cc.
|
private |
label of G4 module
Definition at line 100 of file IonizationReadout_module.cc.
|
private |
geometry information
Definition at line 106 of file IonizationReadout_module.cc.
|
private |
pad response function for hole-filler chamber
Definition at line 111 of file IonizationReadout_module.cc.
|
private |
pad response function for IOROC
Definition at line 113 of file IonizationReadout_module.cc.
|
private |
pad response function for IROC
Definition at line 112 of file IonizationReadout_module.cc.
|
private |
parameter set for the IS calculator
Definition at line 104 of file IonizationReadout_module.cc.
|
private |
number of TDC samples
Definition at line 105 of file IonizationReadout_module.cc.
|
private |
pad response function for OOROC
Definition at line 114 of file IonizationReadout_module.cc.
|
private |
where to find the pad response function histograms
Definition at line 109 of file IonizationReadout_module.cc.
|
private |
algorithm to simulate the electronics
Definition at line 103 of file IonizationReadout_module.cc.
|
private |
electronics clock
Definition at line 102 of file IonizationReadout_module.cc.
|
private |
switch to turn on PRF modeling, otherwise just use the arrival pad
Definition at line 116 of file IonizationReadout_module.cc.