LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
Public Types | |
using | ModuleType = EDProducer |
using | WorkerType = WorkerT< EDProducer > |
template<typename UserConfig , typename KeysToIgnore = void> | |
using | Table = ProducerBase::Table< UserConfig, KeysToIgnore > |
Public Member Functions | |
SimWire (fhicl::ParameterSet const &pset) | |
virtual | ~SimWire () |
void | produce (art::Event &evt) |
void | beginJob () |
void | endJob () |
void | reconfigure (fhicl::ParameterSet const &p) |
template<typename PROD , BranchType B = InEvent> | |
ProductID | getProductID (std::string const &instanceName={}) const |
template<typename PROD , BranchType B> | |
ProductID | getProductID (ModuleDescription const &moduleDescription, std::string const &instanceName) const |
bool | modifiesEvent () const |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | consumes (InputTag const &) |
template<typename T , art::BranchType BT> | |
art::ProductToken< T > | consumes (InputTag const &it) |
template<typename T , BranchType = InEvent> | |
void | consumesMany () |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | consumesView (InputTag const &) |
template<typename T , art::BranchType BT> | |
art::ViewToken< T > | consumesView (InputTag const &it) |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | mayConsume (InputTag const &) |
template<typename T , art::BranchType BT> | |
art::ProductToken< T > | mayConsume (InputTag const &it) |
template<typename T , BranchType = InEvent> | |
void | mayConsumeMany () |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | mayConsumeView (InputTag const &) |
template<typename T , art::BranchType BT> | |
art::ViewToken< T > | mayConsumeView (InputTag const &it) |
base_engine_t & | createEngine (seed_t seed) |
base_engine_t & | createEngine (seed_t seed, std::string const &kind_of_engine_to_make) |
base_engine_t & | createEngine (seed_t seed, std::string const &kind_of_engine_to_make, label_t const &engine_label) |
seed_t | get_seed_value (fhicl::ParameterSet const &pset, char const key[]="seed", seed_t const implicit_seed=-1) |
Static Public Member Functions | |
static cet::exempt_ptr< Consumer > | non_module_context () |
Protected Member Functions | |
CurrentProcessingContext const * | currentContext () const |
void | validateConsumedProduct (BranchType const bt, ProductInfo const &pi) |
void | prepareForJob (fhicl::ParameterSet const &pset) |
void | showMissingConsumes () const |
Private Member Functions | |
void | ConvoluteResponseFunctions () |
convolute electronics and field response More... | |
void | SetFieldResponse () |
response of wires to field More... | |
void | SetElectResponse () |
response of electronics More... | |
void | GenNoise (std::vector< float > &array) |
Private Attributes | |
bool | fResponseSet |
flag of whether to set the response functions or not More... | |
std::string | fDriftEModuleLabel |
module making the ionization electrons More... | |
std::string | fResponseFile |
response file for induction planes More... | |
raw::Compress_t | fCompression |
compression type to use More... | |
double | fNoiseFact |
noise scale factor More... | |
double | fNoiseWidth |
exponential noise width (kHz) More... | |
double | fLowCutoff |
low frequency filter cutoff (kHz) More... | |
int | fNTicks |
number of ticks of the clock More... | |
int | fNFieldBins |
number of bins for field response More... | |
double | fSampleRate |
sampling rate in ns More... | |
unsigned int | fNSamplesReadout |
number of ADC readout samples in 1 readout frame More... | |
double | fCol3DCorrection |
double | fInd3DCorrection |
double | fColFieldRespAmp |
amplitude of response to field More... | |
double | fIndFieldRespAmp |
amplitude of response to field More... | |
std::vector< double > | fShapeTimeConst |
time constants for exponential shaping More... | |
int | fTriggerOffset |
(units of ticks) time of expected neutrino event More... | |
unsigned int | fNElectResp |
number of entries from response to use More... | |
std::vector< double > | fColFieldResponse |
response function for the field @ collection plane More... | |
std::vector< double > | fIndFieldResponse |
response function for the field @ induction plane More... | |
std::vector< TComplex > | fColShape |
response function for the field @ collection plane More... | |
std::vector< TComplex > | fIndShape |
response function for the field @ induction plane More... | |
std::vector< double > | fChargeWork |
std::vector< double > | fElectResponse |
response function for the electronics More... | |
std::vector< std::vector< float > > | fNoise |
noise on each channel for each time More... | |
TH1D * | fIndFieldResp |
response function for the field @ induction plane More... | |
TH1D * | fColFieldResp |
response function for the field @ collection plane More... | |
TH1D * | fElectResp |
response function for the electronics More... | |
TH1D * | fColTimeShape |
convoluted shape for field x electronics @ col plane More... | |
TH1D * | fIndTimeShape |
convoluted shape for field x electronics @ ind plane More... | |
TH1D * | fNoiseDist |
distribution of noise counts More... | |
Definition at line 77 of file SimWire_module.cc.
|
inherited |
Definition at line 34 of file EDProducer.h.
|
inherited |
Definition at line 43 of file EDProducer.h.
|
inherited |
Definition at line 35 of file EDProducer.h.
|
explicit |
Definition at line 143 of file SimWire_module.cc.
References fhicl::ParameterSet::get(), raw::kHuffman, and raw::kNone.
|
virtual |
Definition at line 160 of file SimWire_module.cc.
References clear(), and LOG_WARNING.
|
virtual |
set field response and electronics response, then convolute them
Reimplemented from art::EDProducer.
Definition at line 210 of file SimWire_module.cc.
References util::LArFFT::FFTSize(), and art::TFileDirectory::make().
|
inherited |
|
inherited |
Definition at line 147 of file Consumer.h.
References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().
|
inherited |
Definition at line 162 of file Consumer.h.
|
inherited |
|
inherited |
Definition at line 172 of file Consumer.h.
References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().
|
private |
convolute electronics and field response
pad out the rest of the vector with 0.
do the FFT of the shapes
check that you did the right thing
Definition at line 340 of file SimWire_module.cc.
References util::LArFFT::AlignedSum(), col, util::LArFFT::DoFFT(), and art::TFileDirectory::make().
|
inherited |
Definition at line 26 of file EngineCreator.cc.
References art::EngineCreator::rng().
Referenced by evgen::CosmicsGen::CosmicsGen(), rndm::NuRandomService::createEngine(), cluster::fuzzyCluster::fuzzyCluster(), cluster::HoughLineFinder::HoughLineFinder(), art::MixFilter< T >::initEngine_(), larg4::LArG4::LArG4(), evgen::LightSource::LightSource(), evgen::NeutronOsc::NeutronOsc(), evgen::NucleonDecay::NucleonDecay(), opdet::OpMCDigi::OpMCDigi(), opdet::OptDetDigitizer::OptDetDigitizer(), phot::PhotonLibraryPropagation::PhotonLibraryPropagation(), detsim::SimDriftElectrons::SimDriftElectrons(), evgen::SingleGen::SingleGen(), evgen::SNNueAr40CCGen::SNNueAr40CCGen(), ToyOneShowerGen::ToyOneShowerGen(), and trkf::Track3DKalman::Track3DKalman().
|
inherited |
Definition at line 32 of file EngineCreator.cc.
References art::EngineCreator::rng().
|
inherited |
Definition at line 40 of file EngineCreator.cc.
References art::EngineCreator::rng().
|
protectedinherited |
|
virtual |
|
private |
<noise in frequency space
multiply each noise value by fNTicks as the InvFFT divides each bin by fNTicks assuming that a forward FFT has already been done.
Definition at line 401 of file SimWire_module.cc.
References util::LArFFT::DoInvFFT(), and art::RandomNumberGenerator::getEngine().
|
inherited |
Definition at line 49 of file EngineCreator.cc.
References fhicl::ParameterSet::get().
Referenced by art::MixFilter< T >::initEngine_().
|
inlineinherited |
|
inherited |
Definition at line 56 of file ProducerBase.h.
References B, and art::ModuleDescription::moduleLabel().
Referenced by art::ProducerBase::modifiesEvent().
|
inherited |
|
inherited |
Definition at line 190 of file Consumer.h.
References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().
|
inherited |
Definition at line 205 of file Consumer.h.
|
inherited |
|
inherited |
Definition at line 215 of file Consumer.h.
References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().
|
inlineinherited |
Definition at line 40 of file ProducerBase.h.
References art::ProducerBase::getProductID().
|
staticinherited |
Definition at line 76 of file Consumer.cc.
Referenced by art::RootOutput::beginSubRun(), art::OutputModule::doBeginRun(), art::OutputModule::doBeginSubRun(), art::OutputModule::doEndRun(), art::OutputModule::doEndSubRun(), art::ProducingService::doPostReadEvent(), art::ProducingService::doPostReadRun(), art::ProducingService::doPostReadSubRun(), art::OutputModule::doWriteEvent(), art::ProcessPackage< L >::postScheduleSignal(), art::BeginEndPackage< Level::Run >::Begin::postScheduleSignal(), art::BeginEndPackage< Level::Run >::End::postScheduleSignal(), art::BeginEndPackage< Level::SubRun >::Begin::postScheduleSignal(), art::BeginEndPackage< Level::SubRun >::End::postScheduleSignal(), art::ProcessPackage< L >::preScheduleSignal(), art::BeginEndPackage< Level::Run >::Begin::preScheduleSignal(), art::BeginEndPackage< Level::SubRun >::Begin::preScheduleSignal(), art::EventProcessor::readEvent(), art::EventProcessor::readRun(), art::EmptyEvent::readRun_(), art::EventProcessor::readSubRun(), and art::EmptyEvent::readSubRun_().
|
protectedinherited |
Definition at line 89 of file Consumer.cc.
References fhicl::ParameterSet::get_if_present().
Referenced by art::EDProducer::doBeginJob(), art::EDFilter::doBeginJob(), and art::EDAnalyzer::doBeginJob().
|
virtual |
Implements art::EDProducer.
Definition at line 249 of file SimWire_module.cc.
References sim::SimChannel::Charge(), raw::Compress(), util::LArFFT::Convolute(), art::RandomNumberGenerator::getEngine(), art::DataViewImpl::getView(), geo::kInduction, geo::GeometryCore::Nchannels(), art::Event::put(), and geo::GeometryCore::SignalType().
void detsim::SimWire::reconfigure | ( | fhicl::ParameterSet const & | p | ) |
Definition at line 180 of file SimWire_module.cc.
References fhicl::ParameterSet::get().
|
private |
response of electronics
end loop over time buckets
remove all values of fElectResponse and time where fElectResponse < 0.01*peak
Definition at line 513 of file SimWire_module.cc.
References DEFINE_ART_MODULE, art::TFileDirectory::make(), and norm.
|
private |
response of wires to field
< should always have at least 2 planes
this assumes all planes are equidistant from each other, probably not a bad assumption
in cm
set the response for the collection plane first the first entry is 0
number of bins //KP
now the induction plane
Definition at line 450 of file SimWire_module.cc.
References detinfo::DetectorProperties::DriftVelocity(), geo::PlaneGeo::LocalToWorld(), art::TFileDirectory::make(), and geo::GeometryCore::Plane().
|
protectedinherited |
Definition at line 125 of file Consumer.cc.
Referenced by art::EDProducer::doEndJob(), art::EDFilter::doEndJob(), art::EDAnalyzer::doEndJob(), and art::RootOutput::endJob().
|
protectedinherited |
Definition at line 101 of file Consumer.cc.
References art::errors::ProductRegistrationFailure.
|
private |
Definition at line 125 of file SimWire_module.cc.
|
private |
correction factor to account for 3D path of electrons thru wires
Definition at line 111 of file SimWire_module.cc.
|
private |
response function for the field @ collection plane
Definition at line 130 of file SimWire_module.cc.
|
private |
amplitude of response to field
Definition at line 115 of file SimWire_module.cc.
|
private |
response function for the field @ collection plane
Definition at line 121 of file SimWire_module.cc.
|
private |
response function for the field @ collection plane
Definition at line 123 of file SimWire_module.cc.
|
private |
convoluted shape for field x electronics @ col plane
Definition at line 132 of file SimWire_module.cc.
|
private |
compression type to use
Definition at line 102 of file SimWire_module.cc.
|
private |
module making the ionization electrons
Definition at line 100 of file SimWire_module.cc.
|
private |
response function for the electronics
Definition at line 131 of file SimWire_module.cc.
|
private |
response function for the electronics
Definition at line 126 of file SimWire_module.cc.
|
private |
correction factor to account for 3D path of electrons thru wires
Definition at line 113 of file SimWire_module.cc.
|
private |
response function for the field @ induction plane
Definition at line 129 of file SimWire_module.cc.
|
private |
amplitude of response to field
Definition at line 116 of file SimWire_module.cc.
|
private |
response function for the field @ induction plane
Definition at line 122 of file SimWire_module.cc.
|
private |
response function for the field @ induction plane
Definition at line 124 of file SimWire_module.cc.
|
private |
convoluted shape for field x electronics @ ind plane
Definition at line 133 of file SimWire_module.cc.
|
private |
low frequency filter cutoff (kHz)
Definition at line 106 of file SimWire_module.cc.
|
private |
number of entries from response to use
Definition at line 119 of file SimWire_module.cc.
|
private |
number of bins for field response
Definition at line 108 of file SimWire_module.cc.
|
private |
noise on each channel for each time
Definition at line 127 of file SimWire_module.cc.
|
private |
distribution of noise counts
Definition at line 134 of file SimWire_module.cc.
|
private |
noise scale factor
Definition at line 104 of file SimWire_module.cc.
|
private |
exponential noise width (kHz)
Definition at line 105 of file SimWire_module.cc.
|
private |
number of ADC readout samples in 1 readout frame
Definition at line 110 of file SimWire_module.cc.
|
private |
number of ticks of the clock
Definition at line 107 of file SimWire_module.cc.
|
private |
response file for induction planes
Definition at line 101 of file SimWire_module.cc.
|
private |
flag of whether to set the response functions or not
Definition at line 99 of file SimWire_module.cc.
|
private |
sampling rate in ns
Definition at line 109 of file SimWire_module.cc.
|
private |
time constants for exponential shaping
Definition at line 117 of file SimWire_module.cc.
|
private |
(units of ticks) time of expected neutrino event
Definition at line 118 of file SimWire_module.cc.