LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
module to produce single or multiple specified particles in the detector More...
Public Types | |
typedef std::map< double, TH1 * > | dhist_Map |
typedef std::map< double, TH1 * >::iterator | dhist_Map_it |
using | ModuleType = EDProducer |
using | WorkerType = WorkerT< EDProducer > |
template<typename UserConfig , typename KeysToIgnore = void> | |
using | Table = ProducerBase::Table< UserConfig, KeysToIgnore > |
Public Member Functions | |
GaisserParam (fhicl::ParameterSet const &pset) | |
virtual | ~GaisserParam () |
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 () |
Public Attributes | |
TFile * | m_File |
dhist_Map * | m_PDFmap |
TH1 * | m_thetaHist |
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 | SampleOne (unsigned int i, simb::MCTruth &mct) |
void | Sample (simb::MCTruth &mct) |
std::pair< double, double > | GetThetaAndEnergy (double rand1, double rand2) |
void | MakePDF () |
void | ResetMap () |
double | GaisserMuonFlux_Integrand (Double_t *x, Double_t *par) |
double | GaisserFlux (double e, double theta) |
std::vector< double > | GetBinning (const TAxis *axis, bool finalEdge=true) |
Private Attributes | |
int | fMode |
bool | fPadOutVectors |
std::vector< int > | fPDG |
PDG code of particles to generate. More... | |
int | fCharge |
Charge. More... | |
std::string | fInputDir |
Input Directory. More... | |
double | fEmin |
Minimum Kinetic Energy (GeV) More... | |
double | fEmax |
Maximum Kinetic Energy (GeV) More... | |
double | fEmid |
Energy to go from low to high (GeV) More... | |
int | fEBinsLow |
Number of low energy Bins. More... | |
int | fEBinsHigh |
Number of high energy Bins. More... | |
double | fThetamin |
Minimum theta. More... | |
double | fThetamax |
Maximum theta. More... | |
int | fThetaBins |
Number of theta Bins. More... | |
double | fXHalfRange |
Max X position. More... | |
double | fYInput |
Max Y position. More... | |
double | fZHalfRange |
Max Z position. More... | |
double | fT0 |
Central t position (ns) in world coordinates. More... | |
double | fSigmaT |
Variation in t position (ns) More... | |
int | fTDist |
How to distribute t (gaus, or uniform) More... | |
bool | fSetParam |
Which version of Gaissers Param. More... | |
bool | fSetRead |
Whether to Read. More... | |
bool | fSetWrite |
Whether to Write. More... | |
bool | fSetReWrite |
Whether to ReWrite pdfs. More... | |
double | fEpsilon |
Minimum integration sum.... More... | |
double | fCryoBoundaries [6] |
double | xNeg = 0 |
double | xPos = 0 |
double | zNeg = 0 |
double | zPos = 0 |
double | fCenterX = 0 |
double | fCenterZ = 0 |
TTree * | fTree |
double | Time |
double | Momentum |
double | KinEnergy |
double | Gamma |
double | Energy |
double | Theta |
double | Phi |
double | pnorm |
double | XPosition |
double | YPosition |
double | ZPosition |
double | DirCosineX |
double | DirCosineY |
double | DirCosineZ |
Static Private Attributes | |
static const int | kGAUS = 1 |
module to produce single or multiple specified particles in the detector
Definition at line 74 of file GaisserParam_module.cc.
typedef std::map<double, TH1*> evgen::GaisserParam::dhist_Map |
Definition at line 87 of file GaisserParam_module.cc.
typedef std::map<double, TH1*>::iterator evgen::GaisserParam::dhist_Map_it |
Definition at line 88 of file GaisserParam_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 177 of file GaisserParam_module.cc.
|
virtual |
Definition at line 191 of file GaisserParam_module.cc.
|
virtual |
Reimplemented from art::EDProducer.
Definition at line 236 of file GaisserParam_module.cc.
References geo::GeometryCore::CryostatBoundaries(), art::TFileDirectory::make(), and geo::GeometryCore::Ncryostats().
|
virtual |
Reimplemented from art::EDProducer.
Definition at line 284 of file GaisserParam_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 |
|
private |
Definition at line 711 of file GaisserParam_module.cc.
References c1.
|
private |
Definition at line 743 of file GaisserParam_module.cc.
Referenced by MakePDF().
|
inherited |
Definition at line 49 of file EngineCreator.cc.
References fhicl::ParameterSet::get().
Referenced by art::MixFilter< T >::initEngine_().
|
private |
Definition at line 752 of file GaisserParam_module.cc.
|
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 466 of file GaisserParam_module.cc.
References energy.
|
private |
Definition at line 504 of file GaisserParam_module.cc.
References GaisserMuonFlux_Integrand().
|
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 |
unique_ptr allows ownership to be transferred to the art::Event after the put statement
Implements art::EDProducer.
Definition at line 302 of file GaisserParam_module.cc.
References simb::kSingleParticle, LOG_DEBUG, art::Event::put(), and simb::MCTruth::SetOrigin().
void evgen::GaisserParam::reconfigure | ( | fhicl::ParameterSet const & | p | ) |
Definition at line 196 of file GaisserParam_module.cc.
References fhicl::ParameterSet::get().
|
private |
Definition at line 762 of file GaisserParam_module.cc.
References DEFINE_ART_MODULE.
|
private |
Definition at line 436 of file GaisserParam_module.cc.
References art::RandomNumberGenerator::getEngine().
|
private |
Definition at line 324 of file GaisserParam_module.cc.
References simb::MCTruth::Add(), simb::MCParticle::AddTrajectoryPoint(), art::RandomNumberGenerator::getEngine(), part, and x.
|
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 170 of file GaisserParam_module.cc.
|
private |
Definition at line 170 of file GaisserParam_module.cc.
|
private |
Definition at line 170 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 164 of file GaisserParam_module.cc.
|
private |
Definition at line 165 of file GaisserParam_module.cc.
|
private |
Charge.
Definition at line 116 of file GaisserParam_module.cc.
|
private |
Definition at line 159 of file GaisserParam_module.cc.
|
private |
Number of high energy Bins.
Definition at line 123 of file GaisserParam_module.cc.
|
private |
Number of low energy Bins.
Definition at line 122 of file GaisserParam_module.cc.
|
private |
Maximum Kinetic Energy (GeV)
Definition at line 120 of file GaisserParam_module.cc.
|
private |
Energy to go from low to high (GeV)
Definition at line 121 of file GaisserParam_module.cc.
|
private |
Minimum Kinetic Energy (GeV)
Definition at line 119 of file GaisserParam_module.cc.
|
private |
Minimum integration sum....
Definition at line 141 of file GaisserParam_module.cc.
|
private |
Input Directory.
Definition at line 117 of file GaisserParam_module.cc.
|
private |
Particle Selection Mode 0–generate a list of all particles, 1–generate a single particle selected randomly from the list
Definition at line 108 of file GaisserParam_module.cc.
|
private |
Select to pad out configuration vectors if they are not of of the same length as PDG false: don't pad out - all values need to specified true: pad out - default values assumed and printed out
Definition at line 111 of file GaisserParam_module.cc.
|
private |
PDG code of particles to generate.
Definition at line 115 of file GaisserParam_module.cc.
|
private |
Which version of Gaissers Param.
Definition at line 137 of file GaisserParam_module.cc.
|
private |
Whether to Read.
Definition at line 138 of file GaisserParam_module.cc.
|
private |
Whether to ReWrite pdfs.
Definition at line 140 of file GaisserParam_module.cc.
|
private |
Whether to Write.
Definition at line 139 of file GaisserParam_module.cc.
|
private |
Variation in t position (ns)
Definition at line 134 of file GaisserParam_module.cc.
|
private |
Central t position (ns) in world coordinates.
Definition at line 133 of file GaisserParam_module.cc.
|
private |
How to distribute t (gaus, or uniform)
Definition at line 135 of file GaisserParam_module.cc.
|
private |
Number of theta Bins.
Definition at line 127 of file GaisserParam_module.cc.
|
private |
Maximum theta.
Definition at line 126 of file GaisserParam_module.cc.
|
private |
Minimum theta.
Definition at line 125 of file GaisserParam_module.cc.
|
private |
Definition at line 168 of file GaisserParam_module.cc.
|
private |
Max X position.
Definition at line 129 of file GaisserParam_module.cc.
|
private |
Max Y position.
Definition at line 130 of file GaisserParam_module.cc.
|
private |
Max Z position.
Definition at line 131 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
staticprivate |
Definition at line 106 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
TFile* evgen::GaisserParam::m_File |
Definition at line 89 of file GaisserParam_module.cc.
dhist_Map* evgen::GaisserParam::m_PDFmap |
Definition at line 90 of file GaisserParam_module.cc.
TH1* evgen::GaisserParam::m_thetaHist |
Definition at line 91 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 169 of file GaisserParam_module.cc.
|
private |
Definition at line 160 of file GaisserParam_module.cc.
|
private |
Definition at line 161 of file GaisserParam_module.cc.
|
private |
Definition at line 170 of file GaisserParam_module.cc.
|
private |
Definition at line 170 of file GaisserParam_module.cc.
|
private |
Definition at line 162 of file GaisserParam_module.cc.
|
private |
Definition at line 163 of file GaisserParam_module.cc.
|
private |
Definition at line 170 of file GaisserParam_module.cc.