A module to check the results from the Monte Carlo generator. More...
Public Member Functions | |
GENIEGen (fhicl::ParameterSet const &pset) | |
virtual | ~GENIEGen () |
void | produce (::art::Event &evt) |
void | beginJob () |
void | beginRun (::art::Run &run) |
void | endRun (::art::Run &run) |
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 | |
std::string | ParticleStatus (int StatusCode) |
std::string | ReactionChannel (int ccnc, int mode) |
void | FillHistograms (simb::MCTruth mc) |
Private Attributes | |
evgb::GENIEHelper * | fGENIEHelp |
GENIEHelper object. More... | |
int | fPassEmptySpills |
whether or not to kill evnets with no interactions More... | |
TStopwatch | fStopwatch |
double | fGlobalTimeOffset |
keep track of how long it takes to run the job More... | |
double | fRandomTimeOffset |
The start of a simulated "beam gate". More... | |
gar::sdp::BeamType_t | fBeamType |
The width of a simulated "beam gate". More... | |
TH1F * | fGenerated [6] |
The type of beam. More... | |
TH1F * | fVertexX |
vertex location of generated events in x More... | |
TH1F * | fVertexY |
vertex location of generated events in y More... | |
TH1F * | fVertexZ |
vertex location of generated events in z More... | |
TH2F * | fVertexXY |
vertex location in xy More... | |
TH2F * | fVertexXZ |
vertex location in xz More... | |
TH2F * | fVertexYZ |
vertex location in yz More... | |
TH1F * | fDCosX |
direction cosine in x More... | |
TH1F * | fDCosY |
direction cosine in y More... | |
TH1F * | fDCosZ |
direction cosine in z More... | |
TH1F * | fMuMomentum |
momentum of outgoing muons More... | |
TH1F * | fMuDCosX |
direction cosine of outgoing mu in x More... | |
TH1F * | fMuDCosY |
direction cosine of outgoing mu in y More... | |
TH1F * | fMuDCosZ |
direction cosine of outgoing mu in z More... | |
TH1F * | fEMomentum |
momentum of outgoing electrons More... | |
TH1F * | fEDCosX |
direction cosine of outgoing e in x More... | |
TH1F * | fEDCosY |
direction cosine of outgoing e in y More... | |
TH1F * | fEDCosZ |
direction cosine of outgoing e in z More... | |
TH1F * | fCCMode |
CC interaction mode. More... | |
TH1F * | fNCMode |
CC interaction mode. More... | |
TH1F * | fDeltaE |
difference in neutrino energy from MCTruth::Enu() vs TParticle More... | |
TH1F * | fECons |
histogram to determine if energy is conserved in the event 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 () |
A module to check the results from the Monte Carlo generator.
GENIE uses a TRandom generator for its purposes. Since art's RandomNumberGenerator service only provides CLHEP::HepRandomEngine
, the standard GArSoft/art mechanism for handling the random stream can't be used. GENIEHelper, interface to GENIE provided by nutools, creates a TRandom that GENIE can use. It initializes it with a random seed read from RandomSeed configuration parameter. This and all the other parameters are inherited from the art module (that is, GENIEGen
) configuration. GArSoft meddles with this mechanism to provide support for the standard "Seed" parameter and NuRandomService service.
As custom, if the random seed is not provided by the configuration, one is fetched from NuRandomService
(if available), with the behaviour in gar::rndm::FetchRandomSeed().
Definition at line 99 of file GENIEGen_module.cc.
|
explicit |
Definition at line 160 of file GENIEGen_module.cc.
|
virtual |
Definition at line 211 of file GENIEGen_module.cc.
|
virtual |
Reimplemented from art::EDProducer.
Definition at line 219 of file GENIEGen_module.cc.
void gar::evgen::GENIEGen::beginRun | ( | ::art::Run & | run | ) |
Definition at line 282 of file GENIEGen_module.cc.
void gar::evgen::GENIEGen::endRun | ( | ::art::Run & | run | ) |
Definition at line 292 of file GENIEGen_module.cc.
|
private |
< fill the vertex histograms from the neutrino - that is always particle 0 in the list
look for the outgoing lepton in the particle stack just interested in the first one
Definition at line 440 of file GENIEGen_module.cc.
|
private |
Definition at line 369 of file GENIEGen_module.cc.
void gar::evgen::GENIEGen::produce | ( | ::art::Event & | evt | ) |
Definition at line 302 of file GENIEGen_module.cc.
|
private |
Definition at line 416 of file GENIEGen_module.cc.
|
private |
The width of a simulated "beam gate".
Definition at line 122 of file GENIEGen_module.cc.
|
private |
CC interaction mode.
Definition at line 148 of file GENIEGen_module.cc.
|
private |
direction cosine in x
Definition at line 134 of file GENIEGen_module.cc.
|
private |
direction cosine in y
Definition at line 135 of file GENIEGen_module.cc.
|
private |
direction cosine in z
Definition at line 136 of file GENIEGen_module.cc.
|
private |
difference in neutrino energy from MCTruth::Enu() vs TParticle
Definition at line 151 of file GENIEGen_module.cc.
|
private |
histogram to determine if energy is conserved in the event
Definition at line 152 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing e in x
Definition at line 144 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing e in y
Definition at line 145 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing e in z
Definition at line 146 of file GENIEGen_module.cc.
|
private |
momentum of outgoing electrons
Definition at line 143 of file GENIEGen_module.cc.
|
private |
|
private |
GENIEHelper object.
Definition at line 116 of file GENIEGen_module.cc.
|
private |
keep track of how long it takes to run the job
Definition at line 120 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing mu in x
Definition at line 139 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing mu in y
Definition at line 140 of file GENIEGen_module.cc.
|
private |
direction cosine of outgoing mu in z
Definition at line 141 of file GENIEGen_module.cc.
|
private |
momentum of outgoing muons
Definition at line 138 of file GENIEGen_module.cc.
|
private |
CC interaction mode.
Definition at line 149 of file GENIEGen_module.cc.
|
private |
whether or not to kill evnets with no interactions
Definition at line 117 of file GENIEGen_module.cc.
|
private |
The start of a simulated "beam gate".
Definition at line 121 of file GENIEGen_module.cc.
|
private |
Definition at line 118 of file GENIEGen_module.cc.
|
private |
vertex location of generated events in x
Definition at line 126 of file GENIEGen_module.cc.
|
private |
vertex location in xy
Definition at line 130 of file GENIEGen_module.cc.
|
private |
vertex location in xz
Definition at line 131 of file GENIEGen_module.cc.
|
private |
vertex location of generated events in y
Definition at line 127 of file GENIEGen_module.cc.
|
private |
vertex location in yz
Definition at line 132 of file GENIEGen_module.cc.
|
private |
vertex location of generated events in z
Definition at line 128 of file GENIEGen_module.cc.