LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
A module to check the results from the Monte Carlo generator. More...
Public Types | |
using | ModuleType = EDProducer |
using | WorkerType = WorkerT< EDProducer > |
template<typename UserConfig , typename KeysToIgnore = void> | |
using | Table = ProducerBase::Table< UserConfig, KeysToIgnore > |
Public Member Functions | |
CORSIKAGen (fhicl::ParameterSet const &pset) | |
virtual | ~CORSIKAGen () |
void | produce (art::Event &evt) |
void | beginJob () |
void | beginRun (art::Run &run) |
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 | openDBs () |
void | populateNShowers () |
void | populateTOffset () |
void | GetSample (simb::MCTruth &) |
double | wrapvar (const double var, const double low, const double high) |
double | wrapvarBoxNo (const double var, const double low, const double high, int &boxno) |
void | ProjectToBoxEdge (const double xyz[], const double dxyz[], const double xlo, const double xhi, const double ylo, const double yhi, const double zlo, const double zhi, double xyzout[]) |
Private Attributes | |
int | fShowerInputs =0 |
Number of shower inputs to process from. More... | |
std::vector< double > | fNShowersPerEvent |
Number of showers to put in each event of duration fSampleTime; one per showerinput. More... | |
std::vector< int > | fMaxShowers |
double | fShowerBounds [6] ={0.,0.,0.,0.,0.,0.} |
Boundaries of area over which showers are to be distributed. More... | |
double | fToffset_corsika =0. |
Timing offset to account for propagation time through atmosphere, populated from db. More... | |
ifdh_ns::ifdh * | fIFDH =0 |
(optional) flux file handling More... | |
double | fProjectToHeight =0. |
Height to which particles will be projected [cm]. More... | |
std::vector< std::string > | fShowerInputFiles |
Set of CORSIKA shower data files to use. More... | |
std::vector< double > | fShowerFluxConstants |
Set of flux constants to be associated with each shower data file. More... | |
double | fSampleTime =0. |
Duration of sample [s]. More... | |
double | fToffset =0. |
Time offset of sample, defaults to zero (no offset) [s]. More... | |
std::vector< double > | fBuffBox |
Buffer box extensions to cryostat in each direction (6 of them: x_lo,x_hi,y_lo,y_hi,z_lo,z_hi) [cm]. More... | |
double | fShowerAreaExtension =0. |
Extend distribution of corsika particles in x,z by this much (e.g. 1000 will extend 10 m in -x, +x, -z, and +z) [cm]. More... | |
sqlite3 * | fdb [5] |
Pointers to sqlite3 database object, max of 5. More... | |
double | fRandomXZShift =0. |
Each shower will be shifted by a random amount in xz so that showers won't repeatedly sample the same space [cm]. More... | |
A module to check the results from the Monte Carlo generator.
Definition at line 49 of file CORSIKAGen_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 99 of file CORSIKAGen_module.cc.
|
virtual |
Definition at line 134 of file CORSIKAGen_module.cc.
References fdb, fIFDH, and fShowerInputs.
|
virtual |
|
virtual |
Reimplemented from art::EDProducer.
Definition at line 520 of file CORSIKAGen_module.cc.
References geo::GeometryCore::DetectorName(), and art::Run::put().
|
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().
|
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 |
|
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().
|
private |
Definition at line 372 of file CORSIKAGen_module.cc.
References simb::MCTruth::Add(), simb::MCParticle::AddTrajectoryPoint(), fdb, fMaxShowers, fNShowersPerEvent, fProjectToHeight, fRandomXZShift, fSampleTime, fShowerBounds, fShowerInputs, fToffset, fToffset_corsika, art::RandomNumberGenerator::getEngine(), LOG_DEBUG, ProjectToBoxEdge(), art::EngineCreator::rng(), geo::GeometryCore::WorldBox(), wrapvar(), wrapvarBoxNo(), x, x1, x2, y1, y2, and z.
Referenced by produce().
|
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_().
|
private |
Definition at line 181 of file CORSIKAGen_module.cc.
References fdb, fIFDH, fShowerInputFiles, fShowerInputs, art::RandomNumberGenerator::getEngine(), LOG_DEBUG, and art::EngineCreator::rng().
|
private |
Definition at line 290 of file CORSIKAGen_module.cc.
References bounds(), geo::GeometryCore::CryostatBoundaries(), fBuffBox, fdb, fMaxShowers, fNShowersPerEvent, fRandomXZShift, fSampleTime, fShowerAreaExtension, fShowerBounds, fShowerFluxConstants, fShowerInputs, fToffset, and geo::GeometryCore::Ncryostats().
|
private |
Definition at line 263 of file CORSIKAGen_module.cc.
References fdb, fShowerInputs, and fToffset_corsika.
|
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 532 of file CORSIKAGen_module.cc.
References simb::MCTruth::Add(), bounds(), geo::GeometryCore::CryostatBoundaries(), DEFINE_ART_MODULE, fBuffBox, simb::MCTruth::GetParticle(), GetSample(), simb::kCosmicRay, simb::MCParticle::Momentum(), geo::GeometryCore::Ncryostats(), simb::MCTruth::NParticles(), simb::MCParticle::Position(), art::Event::put(), and simb::MCTruth::SetOrigin().
|
private |
void evgen::CORSIKAGen::reconfigure | ( | fhicl::ParameterSet const & | p | ) |
Definition at line 509 of file CORSIKAGen_module.cc.
|
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 252 of file CORSIKAGen_module.cc.
Referenced by GetSample().
|
private |
Definition at line 257 of file CORSIKAGen_module.cc.
Referenced by GetSample().
|
private |
Buffer box extensions to cryostat in each direction (6 of them: x_lo,x_hi,y_lo,y_hi,z_lo,z_hi) [cm].
Definition at line 90 of file CORSIKAGen_module.cc.
Referenced by populateNShowers(), and produce().
|
private |
Pointers to sqlite3 database object, max of 5.
Definition at line 92 of file CORSIKAGen_module.cc.
Referenced by GetSample(), openDBs(), populateNShowers(), populateTOffset(), and ~CORSIKAGen().
|
private |
(optional) flux file handling
Definition at line 82 of file CORSIKAGen_module.cc.
Referenced by openDBs(), and ~CORSIKAGen().
|
private |
Definition at line 79 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Number of showers to put in each event of duration fSampleTime; one per showerinput.
Definition at line 78 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Height to which particles will be projected [cm].
Definition at line 85 of file CORSIKAGen_module.cc.
Referenced by GetSample().
|
private |
Each shower will be shifted by a random amount in xz so that showers won't repeatedly sample the same space [cm].
Definition at line 93 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Duration of sample [s].
Definition at line 88 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Extend distribution of corsika particles in x,z by this much (e.g. 1000 will extend 10 m in -x, +x, -z, and +z) [cm].
Definition at line 91 of file CORSIKAGen_module.cc.
Referenced by populateNShowers().
|
private |
Boundaries of area over which showers are to be distributed.
Definition at line 80 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Set of flux constants to be associated with each shower data file.
Definition at line 87 of file CORSIKAGen_module.cc.
Referenced by populateNShowers().
|
private |
Set of CORSIKA shower data files to use.
Definition at line 86 of file CORSIKAGen_module.cc.
Referenced by openDBs().
|
private |
Number of shower inputs to process from.
Definition at line 77 of file CORSIKAGen_module.cc.
Referenced by GetSample(), openDBs(), populateNShowers(), populateTOffset(), and ~CORSIKAGen().
|
private |
Time offset of sample, defaults to zero (no offset) [s].
Definition at line 89 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateNShowers().
|
private |
Timing offset to account for propagation time through atmosphere, populated from db.
Definition at line 81 of file CORSIKAGen_module.cc.
Referenced by GetSample(), and populateTOffset().