|
GENIEGenerator
|
#include <cassert>#include <cstdlib>#include <string>#include <vector>#include <sstream>#include <TSystem.h>#include "Framework/Algorithm/AlgFactory.h"#include "Framework/Conventions/Controls.h"#include "Framework/EventGen/EventRecord.h"#include "Framework/EventGen/EventGeneratorI.h"#include "Framework/EventGen/EventRecordVisitorI.h"#include "Framework/EventGen/GMCJMonitor.h"#include "Framework/GHEP/GHepParticle.h"#include "Framework/Messenger/Messenger.h"#include "Framework/Ntuple/NtpWriter.h"#include "Physics/BeamHNL/HNLDecayMode.h"#include "Physics/BeamHNL/HNLDecayUtils.h"#include "Physics/BeamHNL/HNLVertexGenerator.h"#include "Physics/BeamHNL/HNLFluxCreator.h"#include "Physics/BeamHNL/HNLDecayer.h"#include "Physics/BeamHNL/SimpleHNL.h"#include "Framework/Numerical/RandomGen.h"#include "Framework/ParticleData/PDGCodes.h"#include "Framework/ParticleData/PDGUtils.h"#include "Framework/ParticleData/PDGLibrary.h"#include "Framework/Utils/StringUtils.h"#include "Framework/Utils/UnitUtils.h"#include "Framework/Utils/PrintUtils.h"#include "Framework/Utils/AppInit.h"#include "Framework/Utils/RunOpt.h"#include "Framework/Utils/CmdLnArgParser.h"Go to the source code of this file.
Functions | |
| void | GetCommandLineArgs (int argc, char **argv) |
| void | PrintSyntax (void) |
| int | SelectDecayMode (std::vector< HNLDecayMode_t > *intChannels, SimpleHNL sh) |
| const EventRecordVisitorI * | HNLGenerator (void) |
| TLorentzVector * | GenerateOriginPosition (GHepRecord *event) |
| TLorentzVector * | GenerateOriginMomentum (GHepRecord *event) |
| TLorentzVector | GeneratePosition (GHepRecord *event) |
| int | main (int argc, char **argv) |
Variables | |
| string | kDefOptGeomLUnits = "mm" |
| string | kDefOptGeomDUnits = "g_cm3" |
| NtpMCFormat_t | kDefOptNtpFormat = kNFGHEP |
| string | kDefOptEvFilePrefix = "gntp" |
| string | kDefOptSName = "genie::EventGenerator" |
| string | kDefOptSConfig = "BeamHNL" |
| string | kDefOptSTune = "GHNL20_00a_00_000" |
| Long_t | gOptRunNu = 1000 |
| int | gOptNev = 10 |
| double | gOptEnergyHNL = -1 |
| double | gOptMassHNL = -1 |
| double | gOptECoupling = -1 |
| double | gOptMCoupling = -1 |
| double | gOptTCoupling = -1 |
| bool | gOptIsMajorana = false |
| int | gOptHNLKind = -1 |
| HNLDecayMode_t | gOptDecayMode = kHNLDcyNull |
| std::vector< HNLDecayMode_t > | gOptIntChannels |
| string | gOptEvFilePrefix = kDefOptEvFilePrefix |
| bool | gOptUsingRootGeom = false |
| string | gOptRootGeom |
| string | gOptRootGeomTopVol = "" |
| double | gOptGeomLUnits = 0 |
| long int | gOptRanSeed = -1 |
| double | fdx = 0 |
| double | fdy = 0 |
| double | fdz = 0 |
| double | fox = 0 |
| double | foy = 0 |
| double | foz = 0 |
| double | NTP_IS_E = 0. |
| double | NTP_IS_PX = 0. |
| double | NTP_IS_PY = 0. |
| double | NTP_IS_PZ = 0. |
| double | NTP_FS0_E = 0. |
| double | NTP_FS0_PX = 0. |
| double | NTP_FS0_PY = 0. |
| double | NTP_FS0_PZ = 0. |
| double | NTP_FS1_E = 0. |
| double | NTP_FS1_PX = 0. |
| double | NTP_FS1_PY = 0. |
| double | NTP_FS1_PZ = 0. |
| double | NTP_FS2_E = 0. |
| double | NTP_FS2_PX = 0. |
| double | NTP_FS2_PY = 0. |
| double | NTP_FS2_PZ = 0. |
| int | NTP_FS0_PDG = 0 |
| int | NTP_FS1_PDG = 0 |
| int | NTP_FS2_PDG = 0 |
| double | CoMLifetime = -1.0 |
| double | evProdVtx [3] = {0.0, 0.0, 0.0} |
| double | evWeight = 1.0 |
| TLorentzVector * GenerateOriginMomentum | ( | GHepRecord * | event | ) |
Definition at line 507 of file gBeamHNLParticleGun.cxx.
References genie::AlgFactory::GetAlgorithm(), genie::hnl::Decayer::GetPGunDeviation(), genie::hnl::Decayer::GetPGunDirection(), gOptEnergyHNL, gOptMassHNL, genie::Interaction::InitStatePtr(), genie::AlgFactory::Instance(), genie::RandomGen::Instance(), genie::constants::kPi, LOG, genie::utils::print::P4AsString(), pDEBUG, genie::RandomGen::RndGen(), and genie::InitialState::SetProbeP4().
Referenced by main().
| TLorentzVector * GenerateOriginPosition | ( | GHepRecord * | event | ) |
Definition at line 573 of file gBeamHNLParticleGun.cxx.
References genie::AlgFactory::GetAlgorithm(), genie::hnl::Decayer::GetPGunDOrigin(), genie::hnl::Decayer::GetPGunOrigin(), genie::AlgFactory::Instance(), genie::RandomGen::Instance(), and genie::RandomGen::RndGen().
Referenced by main().
| TLorentzVector GeneratePosition | ( | GHepRecord * | event | ) |
Definition at line 611 of file gBeamHNLParticleGun.cxx.
References fdx, fdy, fdz, fox, foy, foz, genie::AlgFactory::GetAlgorithm(), gOptUsingRootGeom, genie::AlgFactory::Instance(), genie::RandomGen::Instance(), genie::hnl::VertexGenerator::ProcessEventRecord(), and genie::RandomGen::RndGeom().
Referenced by main().
| void GetCommandLineArgs | ( | int | argc, |
| char ** | argv ) |
Definition at line 709 of file gBeamHNLParticleGun.cxx.
References genie::CmdLnArgParser::ArgAsInt(), genie::CmdLnArgParser::ArgAsLong(), genie::CmdLnArgParser::ArgAsString(), genie::utils::hnl::AsString(), geom, genie::AlgFactory::GetAlgorithm(), genie::hnl::Decayer::GetHNLMass(), gOptDecayMode, gOptEvFilePrefix, gOptGeomLUnits, gOptMassHNL, gOptNev, gOptRanSeed, gOptRootGeom, gOptRootGeomTopVol, gOptRunNu, gOptUsingRootGeom, genie::AlgFactory::Instance(), genie::RunOpt::Instance(), genie::utils::hnl::IsKinematicallyAllowed(), kDefOptEvFilePrefix, kDefOptGeomLUnits, kDefOptSTune, LOG, lunits, genie::CmdLnArgParser::OptionExists(), pDEBUG, pFATAL, pINFO, pNOTICE, genie::utils::print::PrintFramedMesg(), PrintSyntax(), pWARN, genie::RunOpt::ReadFromCommandLine(), and genie::utils::units::UnitFromString().
Referenced by main().
| const EventRecordVisitorI * HNLGenerator | ( | void | ) |
Definition at line 643 of file gBeamHNLParticleGun.cxx.
References genie::gAbortingInErr, genie::AlgFactory::GetAlgorithm(), genie::AlgFactory::Instance(), kDefOptSConfig, kDefOptSName, LOG, pDEBUG, pFATAL, and pINFO.
Referenced by main().
| int main | ( | int | argc, |
| char ** | argv ) |
Definition at line 194 of file gBeamHNLParticleGun.cxx.
References genie::NtpWriter::AddEventRecord(), genie::utils::hnl::AsString(), CoMLifetime, genie::NtpWriter::CustomizeFilenamePrefix(), genie::NtpWriter::EventTree(), evWeight, GenerateOriginMomentum(), GenerateOriginPosition(), GeneratePosition(), genie::AlgFactory::GetAlgorithm(), genie::hnl::SimpleHNL::GetCoMLifetime(), GetCommandLineArgs(), genie::hnl::Decayer::GetHNLCouplings(), genie::hnl::Decayer::GetHNLInterestingChannels(), genie::hnl::Decayer::GetHNLLifetime(), genie::hnl::Decayer::GetHNLMass(), genie::hnl::Decayer::GetPGunEnergy(), genie::hnl::SimpleHNL::GetValidChannels(), gOptDecayMode, gOptECoupling, gOptEnergyHNL, gOptEvFilePrefix, gOptIntChannels, gOptIsMajorana, gOptMassHNL, gOptMCoupling, gOptNev, gOptRanSeed, gOptRootGeom, gOptRunNu, gOptTCoupling, gOptUsingRootGeom, genie::Interaction::HNL(), HNLGenerator(), genie::NtpWriter::Initialize(), genie::Interaction::InitStatePtr(), genie::AlgFactory::Instance(), genie::RandomGen::Instance(), genie::RunOpt::Instance(), genie::hnl::Decayer::IsHNLMajorana(), kDefOptNtpFormat, kDefOptSConfig, kDefOptSName, genie::hnl::kHNLDcyNull, genie::kIStInitialState, genie::kPdgHNL, genie::kPdgKP, LOG, genie::utils::app_init::MesgThresholds(), NTP_FS0_E, NTP_FS0_PDG, NTP_FS0_PX, NTP_FS0_PY, NTP_FS0_PZ, NTP_FS1_E, NTP_FS1_PDG, NTP_FS1_PX, NTP_FS1_PY, NTP_FS1_PZ, NTP_FS2_E, NTP_FS2_PDG, NTP_FS2_PX, NTP_FS2_PY, NTP_FS2_PZ, NTP_IS_E, NTP_IS_PX, NTP_IS_PY, NTP_IS_PZ, pDEBUG, pFATAL, pINFO, pNOTICE, genie::hnl::Decayer::ProcessEventRecord(), genie::hnl::VertexGenerator::ProcessEventRecord(), genie::utils::app_init::RandGen(), genie::NtpWriter::Save(), SelectDecayMode(), genie::hnl::VertexGenerator::SetGeomFile(), genie::GHepRecord::SetPrintLevel(), genie::GHepRecord::SetProbability(), genie::InitialState::SetProbeP4(), genie::GMCJMonitor::SetRefreshRate(), and genie::GMCJMonitor::Update().
| void PrintSyntax | ( | void | ) |
Definition at line 905 of file gBeamHNLParticleGun.cxx.
Referenced by GetCommandLineArgs().
| int SelectDecayMode | ( | std::vector< HNLDecayMode_t > * | intChannels, |
| SimpleHNL | sh ) |
Definition at line 670 of file gBeamHNLParticleGun.cxx.
References genie::utils::hnl::AsString(), CoMLifetime, genie::hnl::SimpleHNL::GetCoMLifetime(), genie::hnl::selector::GetProbabilities(), genie::hnl::SimpleHNL::GetValidChannels(), genie::RandomGen::Instance(), LOG, pDEBUG, genie::RandomGen::RndGen(), genie::hnl::selector::SelectChannelInclusive(), genie::hnl::selector::SetInterestingChannels(), and genie::hnl::SimpleHNL::SetInterestingChannels().
Referenced by main().
| double CoMLifetime = -1.0 |
Definition at line 187 of file gBeamHNLParticleGun.cxx.
| double evProdVtx[3] = {0.0, 0.0, 0.0} |
Definition at line 189 of file gBeamHNLParticleGun.cxx.
| double evWeight = 1.0 |
Definition at line 191 of file gBeamHNLParticleGun.cxx.
| double fdx = 0 |
Definition at line 172 of file gBeamHNLParticleGun.cxx.
| double fdy = 0 |
Definition at line 173 of file gBeamHNLParticleGun.cxx.
| double fdz = 0 |
Definition at line 174 of file gBeamHNLParticleGun.cxx.
| double fox = 0 |
Definition at line 175 of file gBeamHNLParticleGun.cxx.
| double foy = 0 |
Definition at line 176 of file gBeamHNLParticleGun.cxx.
| double foz = 0 |
Definition at line 177 of file gBeamHNLParticleGun.cxx.
| HNLDecayMode_t gOptDecayMode = kHNLDcyNull |
Definition at line 155 of file gBeamHNLParticleGun.cxx.
| double gOptECoupling = -1 |
Definition at line 148 of file gBeamHNLParticleGun.cxx.
| double gOptEnergyHNL = -1 |
Definition at line 146 of file gBeamHNLParticleGun.cxx.
| string gOptEvFilePrefix = kDefOptEvFilePrefix |
Definition at line 158 of file gBeamHNLParticleGun.cxx.
| double gOptGeomLUnits = 0 |
Definition at line 168 of file gBeamHNLParticleGun.cxx.
| int gOptHNLKind = -1 |
Definition at line 153 of file gBeamHNLParticleGun.cxx.
| std::vector< HNLDecayMode_t > gOptIntChannels |
Definition at line 156 of file gBeamHNLParticleGun.cxx.
| bool gOptIsMajorana = false |
Definition at line 152 of file gBeamHNLParticleGun.cxx.
| double gOptMassHNL = -1 |
Definition at line 147 of file gBeamHNLParticleGun.cxx.
| double gOptMCoupling = -1 |
Definition at line 149 of file gBeamHNLParticleGun.cxx.
| int gOptNev = 10 |
Definition at line 144 of file gBeamHNLParticleGun.cxx.
| long int gOptRanSeed = -1 |
Definition at line 169 of file gBeamHNLParticleGun.cxx.
| string gOptRootGeom |
Definition at line 160 of file gBeamHNLParticleGun.cxx.
| string gOptRootGeomTopVol = "" |
Definition at line 167 of file gBeamHNLParticleGun.cxx.
| Long_t gOptRunNu = 1000 |
Definition at line 143 of file gBeamHNLParticleGun.cxx.
| double gOptTCoupling = -1 |
Definition at line 150 of file gBeamHNLParticleGun.cxx.
| bool gOptUsingRootGeom = false |
Definition at line 159 of file gBeamHNLParticleGun.cxx.
| string kDefOptEvFilePrefix = "gntp" |
Definition at line 136 of file gBeamHNLParticleGun.cxx.
| string kDefOptGeomDUnits = "g_cm3" |
Definition at line 134 of file gBeamHNLParticleGun.cxx.
| string kDefOptGeomLUnits = "mm" |
Definition at line 133 of file gBeamHNLParticleGun.cxx.
| NtpMCFormat_t kDefOptNtpFormat = kNFGHEP |
Definition at line 135 of file gBeamHNLParticleGun.cxx.
| string kDefOptSConfig = "BeamHNL" |
Definition at line 139 of file gBeamHNLParticleGun.cxx.
| string kDefOptSName = "genie::EventGenerator" |
Definition at line 138 of file gBeamHNLParticleGun.cxx.
| string kDefOptSTune = "GHNL20_00a_00_000" |
Definition at line 140 of file gBeamHNLParticleGun.cxx.
| double NTP_FS0_E = 0. |
Definition at line 180 of file gBeamHNLParticleGun.cxx.
| int NTP_FS0_PDG = 0 |
Definition at line 183 of file gBeamHNLParticleGun.cxx.
| double NTP_FS0_PX = 0. |
Definition at line 180 of file gBeamHNLParticleGun.cxx.
| double NTP_FS0_PY = 0. |
Definition at line 180 of file gBeamHNLParticleGun.cxx.
| double NTP_FS0_PZ = 0. |
Definition at line 180 of file gBeamHNLParticleGun.cxx.
| double NTP_FS1_E = 0. |
Definition at line 181 of file gBeamHNLParticleGun.cxx.
| int NTP_FS1_PDG = 0 |
Definition at line 183 of file gBeamHNLParticleGun.cxx.
| double NTP_FS1_PX = 0. |
Definition at line 181 of file gBeamHNLParticleGun.cxx.
| double NTP_FS1_PY = 0. |
Definition at line 181 of file gBeamHNLParticleGun.cxx.
| double NTP_FS1_PZ = 0. |
Definition at line 181 of file gBeamHNLParticleGun.cxx.
| double NTP_FS2_E = 0. |
Definition at line 182 of file gBeamHNLParticleGun.cxx.
| int NTP_FS2_PDG = 0 |
Definition at line 183 of file gBeamHNLParticleGun.cxx.
| double NTP_FS2_PX = 0. |
Definition at line 182 of file gBeamHNLParticleGun.cxx.
| double NTP_FS2_PY = 0. |
Definition at line 182 of file gBeamHNLParticleGun.cxx.
| double NTP_FS2_PZ = 0. |
Definition at line 182 of file gBeamHNLParticleGun.cxx.
| double NTP_IS_E = 0. |
Definition at line 179 of file gBeamHNLParticleGun.cxx.
| double NTP_IS_PX = 0. |
Definition at line 179 of file gBeamHNLParticleGun.cxx.
| double NTP_IS_PY = 0. |
Definition at line 179 of file gBeamHNLParticleGun.cxx.
| double NTP_IS_PZ = 0. |
Definition at line 179 of file gBeamHNLParticleGun.cxx.