GENIEGenerator
|
#include <cassert>
#include <cstdlib>
#include <cctype>
#include <string>
#include <vector>
#include <sstream>
#include <map>
#include <TRotation.h>
#include <TH1D.h>
#include <TH3D.h>
#include <TTree.h>
#include <TLorentzVector.h>
#include "Framework/Algorithm/Algorithm.h"
#include "Framework/Algorithm/AlgFactory.h"
#include "Framework/EventGen/XSecAlgorithmI.h"
#include "Framework/Conventions/Constants.h"
#include "Framework/Conventions/Units.h"
#include "Framework/EventGen/GFluxI.h"
#include "Framework/EventGen/GMCJDriver.h"
#include "Framework/EventGen/GMCJMonitor.h"
#include "Framework/Numerical/RandomGen.h"
#include "Framework/Messenger/Messenger.h"
#include "Framework/ParticleData/PDGCodes.h"
#include "Framework/ParticleData/PDGLibrary.h"
#include "Framework/Utils/XSecSplineList.h"
#include "Framework/Utils/StringUtils.h"
#include "Framework/Utils/SystemUtils.h"
#include "Framework/Utils/PrintUtils.h"
#include "Framework/Utils/UnitUtils.h"
#include "Framework/Utils/KineUtils.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) |
GFluxI * | GetFlux (void) |
void | GenerateUpNu (GFluxI *flux_driver) |
TH3D * | BuildEmuEnuCosThetaPdf (int nu_code) |
TH1D * | GetEmuPdf (double Enu, double costheta, const TH3D *pdf3d) |
TVector3 | GetDetectorVertex (double CosTheta, double Enu) |
double | GetCrossSection (int nu_code, double Enu, double Emu) |
double | ProbabilityEmu (int nu_code, double Enu, double Emu) |
int | main (int argc, char **argv) |
Variables | |
Long_t | gOptRunNu |
string | gOptFluxSim |
map< int, string > | gOptFluxFiles |
int | gOptNev = -1 |
double | gOptDetectorSide |
long int | gOptRanSeed |
string | gOptInpXSecFile |
const double | a = 2e+6 |
const double | e = 500e+9 |
double | kDefOptDetectorSide = 1e+5 |
TH3D * BuildEmuEnuCosThetaPdf | ( | int | nu_code | ) |
Definition at line 444 of file gUpMuFluxGen.cxx.
References ProbabilityEmu().
Referenced by main().
void GenerateUpNu | ( | GFluxI * | flux_driver | ) |
Definition at line 416 of file gUpMuFluxGen.cxx.
References genie::GFluxI::GenerateNext(), genie::kPdgAntiNuMu, genie::kPdgNuMu, LOG, genie::GFluxI::Momentum(), genie::GFluxI::PdgCode(), and pINFO.
Referenced by main().
void GetCommandLineArgs | ( | int | argc, |
char ** | argv | ||
) |
double GetCrossSection | ( | int | nu_code, |
double | Enu, | ||
double | Emu | ||
) |
Definition at line 538 of file gUpMuFluxGen.cxx.
References genie::AlgFactory::AdoptAlgorithm(), genie::units::cm2, genie::Interaction::DISCC(), genie::AlgFactory::Instance(), genie::Interaction::KinePtr(), genie::constants::kNucleonMass, genie::kPdgNeutron, genie::kPdgProton, genie::kPdgTgtFreeN, genie::kPdgTgtFreeP, genie::kPSxyfE, genie::utils::kinematics::Q2(), genie::Kinematics::SetQ2(), genie::Kinematics::SetW(), genie::Kinematics::Setx(), genie::Kinematics::Sety(), genie::utils::kinematics::W(), genie::XSecAlgorithmI::XSec(), and genie::utils::kinematics::XYtoWQ2().
Referenced by main(), and ProbabilityEmu().
TVector3 GetDetectorVertex | ( | double | CosTheta, |
double | Enu | ||
) |
Definition at line 288 of file gUpMuFluxGen.cxx.
References gOptDetectorSide, genie::RandomGen::Instance(), genie::constants::kPi, genie::units::rad, and genie::RandomGen::RndFlux().
Referenced by main().
TH1D * GetEmuPdf | ( | double | Enu, |
double | costheta, | ||
const TH3D * | pdf3d | ||
) |
GFluxI* GetFlux | ( | void | ) |
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 172 of file gUpMuFluxGen.cxx.
References BuildEmuEnuCosThetaPdf(), genie::RunOpt::BuildTune(), GenerateUpNu(), GetCommandLineArgs(), GetCrossSection(), GetDetectorVertex(), GetEmuPdf(), GetFlux(), gOptInpXSecFile, gOptNev, gOptRanSeed, gOptRunNu, genie::RunOpt::Instance(), genie::kPdgAntiNuMu, genie::kPdgNuMu, LOG, genie::utils::app_init::MesgThresholds(), genie::GFluxI::Momentum(), genie::GFluxI::PdgCode(), pFATAL, pNOTICE, genie::utils::app_init::RandGen(), genie::GFluxI::Weight(), Write(), and genie::utils::app_init::XSecTable().
void PrintSyntax | ( | void | ) |
double ProbabilityEmu | ( | int | nu_code, |
double | Enu, | ||
double | Emu | ||
) |
Definition at line 435 of file gUpMuFluxGen.cxx.
References a, e, GetCrossSection(), and genie::constants::kNA.
Referenced by BuildEmuEnuCosThetaPdf().
const double a = 2e+6 |
Definition at line 164 of file gUpMuFluxGen.cxx.
Referenced by genie::Spline::Add(), genie::AGKYLowW2019::AverageChMult(), genie::utils::nuclear::BindEnergy(), genie::QPMDISStrucFuncBase::Calculate(), genie::QPMDMDISStrucFuncBase::Calculate(), genie::utils::kinematics::CohQ2Lim(), genie::RSHelicityAmplModelCC::Compute(), genie::RSHelicityAmplModelNCn::Compute(), genie::RSHelicityAmplModelNCp::Compute(), genie::geometry::PlaneParam::ConvertMaster2Top(), genie::mueloss::BetheBlochModel::dE_dx(), genie::Spline::Divide(), genie::mueloss::gsl::BezrukovBugaevIntegrand::DoEval(), genie::mueloss::gsl::PetrukhinShestakovIntegrand::DoEval(), genie::utils::gsl::dXSec_Log_Wrapper::DoEval(), genie::PhotonCOHPXSec::F2_Q(), genie::BBA03ELFormFactorsModel::Gen(), genie::utils::kinematics::InelYLim_X(), genie::utils::kinematics::electromagnetic::InelYLim_X(), genie::NievesQELCCPXSec::LmunuAnumu(), genie::Spline::Multiply(), genie::P33PaschosLalakulichPXSec::PPiStar(), genie::geometry::PlaneParam::Print(), ProbabilityEmu(), genie::FGMBodekRitchie::ProbDistro(), genie::Born::PXSecCCRNC(), genie::Born::PXSecCCVNC(), genie::Born::PXSecNCVnu(), genie::Born::PXSecNCVnubar(), genie::SmithMonizUtils::Q2lim1_SM(), genie::SmithMonizUtils::Q2lim2_SM(), genie::NievesQELCCPXSec::relLindhardIm(), genie::alvarezruso::integrationtools::RG202D(), genie::alvarezruso::integrationtools::RG482D(), genie::DMBYStrucFunc::ScalingVar(), genie::BYStrucFunc::ScalingVar(), setA(), genie::alvarezruso::integrationtools::SG20R(), genie::alvarezruso::integrationtools::SG48R(), genie::SmithMonizUtils::vlim1_SM(), genie::SmithMonizUtils::vlim2_SM(), genie::SmithMonizUtils::vQES_SM_lim(), and genie::BSKLNBaseRESPXSec2014::XSec().
const double e = 500e+9 |
Definition at line 165 of file gUpMuFluxGen.cxx.
Referenced by genie::PrimaryLeptonGenerator::AddToEventRecord(), genie::OutgoingDarkGenerator::AddToEventRecord(), genie::utils::nuclear::BindEnergy(), genie::CollinsSpillerFragm::BuildFunction(), genie::PetersonFragm::BuildFunction(), genie::flux::GNuMIFlux::CalcEffPOTsPerNu(), genie::hnl::FluxCreator::CalculateAcceptanceCorrection(), genie::QELEventGenerator::ComputeMaxXSec(), genie::DMELEventGenerator::ComputeMaxXSec(), genie::QELEventGeneratorSM::ComputeMaxXSec(), genie::SPPEventGenerator::ComputeMaxXSec(), genie::SpectralFunc::Convert2Graph(), CreateRockBoxSelection(), genie::GEVGDriver::CreateXSecSumSpline(), genie::HEDISPXSec::ds_dxdy_mass(), FindhAFate(), genie::Target::ForceHitNucOnMassShell(), genie::Pythia8Hadro2019::Hadronize(), genie::HEDISStrucFunc::HEDISStrucFunc(), genie::evtlib::EvtLibPXSec::Integral(), genie::NormXSec::Integral(), genie::NewQELXSec::Integrate(), genie::BardinIMDRadCorPXSec::Li2(), genie::SPPXSec::LoadConfig(), genie::SmithMonizQELCCXSec::LoadConfig(), genie::NewQELXSec::LoadConfig(), main(), genie::KLVOxygenIBDPXSec::MakeAntiNuESpline(), genie::KLVOxygenIBDPXSec::MakeNuESpline(), genie::hnl::FluxCreator::MakeTupleFluxEntry(), genie::flux::GSimpleNtpFlux::MoveToZ0(), genie::flux::GNuMIFlux::MoveToZ0(), genie::operator==(), genie::SPPEventGenerator::Vertex::operator==(), INukeNucleonCorr::OutputFiles(), ProbabilityEmu(), SaveGraphsToRootFile(), genie::flux::GNuMIFlux::SetFluxWindow(), genie::DarkSectorDecayer::SetSpaceTime(), testGetTotalFluxInEnergyRange(), genie::NormXSec::XSec(), genie::BergerSehgalCOHPiPXSec2015::XSec(), and genie::BardinIMDRadCorPXSec::XSec().
double gOptDetectorSide |
Definition at line 159 of file gUpMuFluxGen.cxx.
Referenced by GetDetectorVertex().
map<int,string> gOptFluxFiles |
Definition at line 157 of file gUpMuFluxGen.cxx.
string gOptFluxSim |
Definition at line 156 of file gUpMuFluxGen.cxx.
string gOptInpXSecFile |
Definition at line 161 of file gUpMuFluxGen.cxx.
int gOptNev = -1 |
Definition at line 158 of file gUpMuFluxGen.cxx.
long int gOptRanSeed |
Definition at line 160 of file gUpMuFluxGen.cxx.
Long_t gOptRunNu |
Definition at line 155 of file gUpMuFluxGen.cxx.
double kDefOptDetectorSide = 1e+5 |
Definition at line 169 of file gUpMuFluxGen.cxx.