GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Enumerations | Functions | Variables
genie::flux Namespace Reference

GENIE flux drivers. More...

Classes

class  GAstroFlux
 A base class for the concrete astrophysical neutrino flux drivers. More...
 
class  GDiffuseAstroFlux
 
class  GPointSourceAstroFlux
 
class  GAtmoFlux
 A base class for the FLUKA, BGLRS and ATMNC atmo. nu. flux drivers. The driver depends on data files provided by the atmospheric neutrino flux simulation authors in order to determine the angular and energy dependence for each neutrino species. The position of each flux neutrino [going towards a detector centered at (0,0,0)] is generated uniformly on a plane that is perpendicular to a sphere of radius Rl at the point that is determined by the generated neutrino direction (theta,phi). The size of the area of that plane, where flux neutrinos are generated, is determined by the transverse radius Rt. You can tweak Rl, Rt to match the size of your detector. Initially, neutrino coordinates are generated in a default detector coordinate system (Topocentric Horizontal Coordinate -THZ-): +z: Points towards the local zenith. +x: On same plane as local meridian, pointing south. +y: As needed to make a right-handed coordinate system. origin: detector centre Alternative user-defined topocentric systems can be defined by specifying the appropriate rotation from THZ. The driver allows minimum and maximum energy cuts. Also it provides the options to generate wither unweighted or weighted flux neutrinos (the latter giving smoother distributions at the tails). More...
 
class  GBGLRSAtmoFlux
 A flux driver for the Bartol Atmospheric Neutrino Flux. More...
 
class  GCylindTH1Flux
 A generic GENIE flux driver. Generates a 'cylindrical' neutrino beam along the input direction, with the input transverse radius and centered at the input position. The energies are generated from the input energy spectrum (TH1D). Multiple neutrino species can be generated (you will need to supply an energy spectrum for each). More...
 
class  GFlavorMap
 GENIE interface for flavor modification. More...
 
class  GFlavorMixerFactory
 A class for generating concrete GFlavorMixerI derived classes based on the factory pattern. This code supplies a CPP macro which allows the classes to self-register and thus no modification of this class is needed in order to expand the list of classes it knows about. More...
 
class  GFlavorMixerI
 GENIE interface for flavor modification. More...
 
class  GFLUKAAtmoFlux
 A flux driver for the FLUKA 3-D Atmospheric Neutrino Flux. More...
 
class  GFluxBlender
 GENIE GFluxI adapter to allow flavor modification. More...
 
class  GFluxDriverFactory
 A class for generating concrete GFluxI derived classes based on the factory pattern. This code supplies a CPP macro which allows the classes to self-register and thus no modification of this class is needed in order to expand the list of classes it knows about. More...
 
class  GFluxExposureI
 GENIE interface for uniform flux exposure iterface. More...
 
class  GFluxFileConfigI
 
class  GHAKKMAtmoFlux
 A driver for the HAKKM 3-D atmospheric neutrino flux (commonly known as the `Honda flux') More...
 
class  GJPARCNuFlux
 A GENIE flux driver encapsulating the JPARC neutrino flux. It reads-in the official JPARC neutrino flux ntuples. More...
 
class  GJPARCNuFluxPassThroughInfo
 
class  GMonoEnergeticFlux
 A simple GENIE flux driver for monoenergetic neutrinos along the z direction. Can handle a mix of neutrinos with their corresponding weight. This trivial flux driver was added in so that single energy neutrinos can be easily used with the event generation driver that can handle a target mix or detailed geometries. More...
 
class  GNuMIFluxXMLHelper
 
class  GNuMIFluxPassThroughInfo
 
class  GNuMIFlux
 A GENIE flux driver encapsulating the NuMI neutrino flux. It reads-in the official GNUMI neutrino flux ntuples. Supports both geant3 and geant4 formats. More...
 
class  GPowerLawFlux
 A simple GENIE flux driver for neutrinos following a power law spectrum. Can handle a mix of neutrinos with their corresponding weight. More...
 
class  GSimpleNtpEntry
 
class  GSimpleNtpNuMI
 
class  GSimpleNtpAux
 
class  GSimpleNtpMeta
 
class  GSimpleNtpFlux
 A GENIE flux driver using a simple ntuple format. More...
 

Typedefs

typedef
genie::flux::GFlavorMixerI *(* 
GFlavorMixerICtorFuncPtr_t )()
 
typedef genie::GFluxI *(* GFluxICtorFuncPtr_t )()
 
typedef enum genie::flux::EExposure Exposure_t
 

Enumerations

enum  EExposure { kUnknown = 0, kPOTs = 1, kSeconds = 2, kNExposureTypes }
 

Functions

ostream & operator<< (ostream &stream, const genie::flux::GJPARCNuFluxPassThroughInfo &info)
 
ostream & operator<< (ostream &stream, const genie::flux::GNuMIFluxPassThroughInfo &info)
 
ostream & operator<< (ostream &stream, const genie::flux::GSimpleNtpEntry &entry)
 
ostream & operator<< (ostream &stream, const genie::flux::GSimpleNtpNuMI &numi)
 
ostream & operator<< (ostream &stream, const genie::flux::GSimpleNtpAux &aux)
 
ostream & operator<< (ostream &stream, const genie::flux::GSimpleNtpMeta &meta)
 

Variables

const double kAstroDefMaxEv = 1E+20 * units::GeV
 
const double kAstroDefMinEv = 1E-3 * units::GeV
 
const int kAstroNlog10EvBins = 1000
 
const int kAstroNCosThetaBins = 500
 
const int kAstroNPhiBins = 500
 
const unsigned int kBGLRS3DNumCosThetaBins = 20
 
const double kBGLRS3DCosThetaMin = -1.0
 
const double kBGLRS3DCosThetaMax = 1.0
 
const unsigned int kBGLRS3DNumLogEvBinsLow = 40
 
const unsigned int kBGLRS3DNumLogEvBinsPerDecadeLow = 20
 
const unsigned int kBGLRS3DNumLogEvBinsHigh = 30
 
const unsigned int kBGLRS3DNumLogEvBinsPerDecadeHigh = 10
 
const double kBGLRS3DEvMin = 0.1
 
const unsigned int kGFlk3DNumCosThetaBins = 40
 
const double kGFlk3DCosThetaMin = -1.0
 
const double kGFlk3DCosThetaMax = 1.0
 
const unsigned int kGFlk3DNumLogEvBins = 61
 
const unsigned int kGFlk3DNumLogEvBinsPerDecade = 20
 
const double kGFlk3DEvMin = 0.100
 
const unsigned int kGHnd3DNumCosThetaBins = 20
 
const double kGHnd3DCosThetaMin = -1.0
 
const double kGHnd3DCosThetaMax = 1.0
 
const unsigned int kGHnd3DNumPhiBins = 12
 
const double kGHnd3DPhiMin = 0.0
 
const double kGHnd3DPhiMax = 360.0
 
const unsigned int kGHnd3DNumLogEvBins = 101
 
const unsigned int kGHnd3DNumLogEvBinsPerDecade = 20
 
const double kGHnd3DEvMin = 0.1
 
const int fNgmax = 12
 

Detailed Description

GENIE flux drivers.

Typedef Documentation

typedef genie::flux::GFlavorMixerI*(* genie::flux::GFlavorMixerICtorFuncPtr_t)()

Definition at line 41 of file GFlavorMixerFactory.h.

typedef genie::GFluxI*(* genie::flux::GFluxICtorFuncPtr_t)()

Definition at line 44 of file GFluxDriverFactory.h.

Enumeration Type Documentation

Enumerator
kUnknown 
kPOTs 
kSeconds 
kNExposureTypes 

Definition at line 30 of file GFluxExposureI.h.

30  {
31  kUnknown = 0,
32  kPOTs = 1, // particles (protons) on target
33  kSeconds = 2, // exposure duration
35  } Exposure_t;
enum genie::flux::EExposure Exposure_t

Function Documentation

ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GSimpleNtpEntry entry 
)

Definition at line 978 of file GSimpleNtpFlux.cxx.

References genie::flux::GSimpleNtpEntry::dist, genie::flux::GSimpleNtpEntry::E, genie::flux::GSimpleNtpEntry::metakey, genie::flux::GSimpleNtpEntry::pdg, genie::flux::GSimpleNtpEntry::px, genie::flux::GSimpleNtpEntry::py, genie::flux::GSimpleNtpEntry::pz, genie::flux::GSimpleNtpEntry::vtxt, genie::flux::GSimpleNtpEntry::vtxx, genie::flux::GSimpleNtpEntry::vtxy, genie::flux::GSimpleNtpEntry::vtxz, and genie::flux::GSimpleNtpEntry::wgt.

980  {
981  stream << "\nGSimpleNtpEntry "
982  << " PDG " << entry.pdg
983  << " wgt " << entry.wgt
984  << " ( metakey " << entry.metakey << " )"
985  << "\n vtx [" << entry.vtxx << "," << entry.vtxy << ","
986  << entry.vtxz << ", t=" << entry.vtxt << "] dist " << entry.dist
987  << "\n p4 [" << entry.px << "," << entry.py << ","
988  << entry.pz << "," << entry.E << "]";
989  return stream;
990  }
Double_t E
energy in lab frame
Double_t px
x momentum in lab frame (GeV)
Double_t vtxy
y position in lab frame
Double_t vtxt
time of ray start (seconds)
Double_t vtxz
z position in lab frame
Double_t vtxx
x position in lab frame (meters)
Double_t pz
z momentum in lab frame
Double_t dist
distance from hadron decay
UInt_t metakey
key to meta data
Double_t py
y momentum in lab frame
ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GSimpleNtpNuMI numi 
)

Definition at line 993 of file GSimpleNtpFlux.cxx.

References genie::flux::GSimpleNtpNuMI::entryno, genie::flux::GSimpleNtpNuMI::evtno, genie::flux::GSimpleNtpNuMI::ndecay, genie::flux::GSimpleNtpNuMI::pdpx, genie::flux::GSimpleNtpNuMI::pdpy, genie::flux::GSimpleNtpNuMI::pdpz, genie::flux::GSimpleNtpNuMI::ppmedium, genie::flux::GSimpleNtpNuMI::pppx, genie::flux::GSimpleNtpNuMI::pppy, genie::flux::GSimpleNtpNuMI::pppz, genie::flux::GSimpleNtpNuMI::ptype, genie::flux::GSimpleNtpNuMI::run, genie::flux::GSimpleNtpNuMI::tptype, genie::flux::GSimpleNtpNuMI::tpx, genie::flux::GSimpleNtpNuMI::tpy, genie::flux::GSimpleNtpNuMI::tpz, genie::flux::GSimpleNtpNuMI::vx, genie::flux::GSimpleNtpNuMI::vy, and genie::flux::GSimpleNtpNuMI::vz.

995 {
996  stream << "\nGSimpleNtpNuMI "
997  << "run " << numi.run
998  << " evtno " << numi.evtno
999  << " entryno " << numi.entryno
1000  << "\n ndecay " << numi.ndecay << " ptype " << numi.ptype
1001  << "\n tptype " << numi.tptype << " ppmedium " << numi.ppmedium
1002  << "\n tp[xyz] [" << numi.tpx << "," << numi.tpy << "," << numi.tpz << "]"
1003  << "\n v[xyz] [" << numi.vx << "," << numi.vy << "," << numi.vz << "]"
1004  << "\n pd[xyz] [" << numi.pdpx << "," << numi.pdpy << "," << numi.pdpz << "]"
1005  << "\n pp[xyz] [" << numi.pppx << "," << numi.pppy << "," << numi.pppz << "]"
1006  ;
1007  return stream;
1008 }
Double_t pdpx
nu parent momentum at time of decay
Double_t vx
vertex position of hadron/muon decay
Int_t tptype
parent particle type at target exit
Double_t pppx
nu parent momentum at production point
Int_t ppmedium
tracking medium where parent was produced
Double_t tpx
parent particle px at target exit
Int_t ptype
parent type (PDG)
ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GSimpleNtpAux aux 
)

Definition at line 1010 of file GSimpleNtpFlux.cxx.

References genie::flux::GSimpleNtpAux::auxdbl, and genie::flux::GSimpleNtpAux::auxint.

1012  {
1013  stream << "\nGSimpleNtpAux ";
1014  size_t nInt = aux.auxint.size();
1015  stream << "\n ints: ";
1016  for (size_t ijInt=0; ijInt < nInt; ++ijInt)
1017  stream << " " << aux.auxint[ijInt];
1018  size_t nDbl = aux.auxdbl.size();
1019  stream << "\n doubles: ";
1020  for (size_t ijDbl=0; ijDbl < nDbl; ++ijDbl)
1021  stream << " " << aux.auxdbl[ijDbl];
1022 
1023  return stream;
1024  }
std::vector< Double_t > auxdbl
additional doubles associated w/ entry
std::vector< Int_t > auxint
additional ints associated w/ entry
ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GSimpleNtpMeta meta 
)

Definition at line 1026 of file GSimpleNtpFlux.cxx.

References genie::flux::GSimpleNtpMeta::auxdblname, genie::flux::GSimpleNtpMeta::auxintname, genie::flux::GSimpleNtpMeta::infiles, genie::flux::GSimpleNtpMeta::maxEnergy, genie::flux::GSimpleNtpMeta::maxWgt, genie::flux::GSimpleNtpMeta::metakey, genie::flux::GSimpleNtpMeta::minWgt, genie::flux::GSimpleNtpMeta::mxfileprint, genie::flux::GSimpleNtpMeta::pdglist, genie::flux::GSimpleNtpMeta::protons, genie::flux::GSimpleNtpMeta::seed, genie::flux::GSimpleNtpMeta::windowBase, genie::flux::GSimpleNtpMeta::windowDir1, and genie::flux::GSimpleNtpMeta::windowDir2.

1028  {
1029  size_t nf = meta.pdglist.size();
1030  stream << "\nGSimpleNtpMeta " << nf << " flavors: ";
1031  for (size_t i=0; i<nf; ++i) stream << " " << meta.pdglist[i];
1032 
1033  //stream << "\nGSimpleNtpMeta " << meta.nflavors
1034  // << " flavors: ";
1035  //for (int i=0; i< meta.nflavors; ++i) stream << " " << meta.flavor[i];
1036 
1037  stream << "\n maxEnergy " << meta.maxEnergy
1038  << " min/maxWgt " << meta.minWgt << "/" << meta.maxWgt
1039  << " protons " << meta.protons
1040  << " metakey " << meta.metakey
1041  << "\n windowBase [" << meta.windowBase[0] << ","
1042  << meta.windowBase[1] << "," << meta.windowBase[2] << "]"
1043  << "\n windowDir1 [" << meta.windowDir1[0] << ","
1044  << meta.windowDir1[1] << "," << meta.windowDir1[2] << "]"
1045  << "\n windowDir2 [" << meta.windowDir2[0] << ","
1046  << meta.windowDir2[1] << "," << meta.windowDir2[2] << "]";
1047 
1048  size_t nInt = meta.auxintname.size();
1049  if ( nInt > 0 ) stream << "\n aux ints: ";
1050  for (size_t ijInt=0; ijInt < nInt; ++ijInt)
1051  stream << " " << meta.auxintname[ijInt];
1052 
1053  size_t nDbl = meta.auxdblname.size();
1054  if ( nDbl > 0 ) stream << "\n aux doubles: ";
1055  for (size_t ijDbl=0; ijDbl < nDbl; ++ijDbl)
1056  stream << " " << meta.auxdblname[ijDbl];
1057 
1058  size_t nfiles = meta.infiles.size();
1059  stream << "\n " << nfiles << " input files: ";
1060  UInt_t nprint = TMath::Min(UInt_t(nfiles),
1062  for (UInt_t ifiles=0; ifiles < nprint; ++ifiles)
1063  stream << "\n " << meta.infiles[ifiles];
1064 
1065  stream << "\n input seed: " << meta.seed;
1066 
1067  return stream;
1068  }
Double_t maxEnergy
maximum energy
std::vector< std::string > auxintname
tagname of aux ints associated w/ entry
Double_t windowDir1[3]
dx,dy,dz of window direction 1
Double_t protons
represented number of protons-on-target
Int_t seed
random seed used in generation
Double_t windowDir2[3]
dx,dy,dz of window direction 2
std::vector< Int_t > pdglist
list of neutrino flavors
Double_t windowBase[3]
x,y,z position of window base point
Double_t minWgt
minimum weight
std::vector< std::string > infiles
list of input files
Double_t maxWgt
maximum weight
UInt_t metakey
index key to tie to individual entries
static UInt_t mxfileprint
allow user to limit # of files to print
std::vector< std::string > auxdblname
tagname of aux doubles associated w/ entry
ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GJPARCNuFluxPassThroughInfo info 
)

Definition at line 1078 of file GJPARCNuFlux.cxx.

References genie::flux::GJPARCNuFluxPassThroughInfo::cospi0bm, genie::flux::GJPARCNuFluxPassThroughInfo::cospibm, genie::flux::GJPARCNuFluxPassThroughInfo::Enu, genie::flux::GJPARCNuFluxPassThroughInfo::fluxentry, genie::flux::GJPARCNuFluxPassThroughInfo::fluxfilename, genie::pdg::GeantToPdg(), genie::flux::GJPARCNuFluxPassThroughInfo::idfd, genie::flux::GJPARCNuFluxPassThroughInfo::mode, genie::flux::GJPARCNuFluxPassThroughInfo::norm, genie::flux::GJPARCNuFluxPassThroughInfo::npi, genie::flux::GJPARCNuFluxPassThroughInfo::npi0, genie::flux::GJPARCNuFluxPassThroughInfo::nvtx0, genie::flux::GJPARCNuFluxPassThroughInfo::ppi, genie::flux::GJPARCNuFluxPassThroughInfo::ppi0, genie::flux::GJPARCNuFluxPassThroughInfo::ppid, genie::flux::GJPARCNuFluxPassThroughInfo::xpi, and genie::flux::GJPARCNuFluxPassThroughInfo::xpi0.

1080  {
1081  stream << "\n idfd = " << info.idfd
1082  << "\n norm = " << info.norm
1083  << "\n flux entry = " << info.fluxentry
1084  << "\n flux file = " << info.fluxfilename
1085  << "\n Enu = " << info.Enu
1086  << "\n geant code = " << info.ppid
1087  << "\n (pdg code) = " << pdg::GeantToPdg(info.ppid)
1088  << "\n decay mode = " << info.mode
1089  << "\n nvtx0 = " << info.nvtx0
1090  << "\n |momentum| @ decay = " << info.ppi
1091  << "\n position_vector @ decay = ("
1092  << info.xpi[0] << ", "
1093  << info.xpi[1] << ", "
1094  << info.xpi[2] << ")"
1095  << "\n direction_vector @ decay = ("
1096  << info.npi[0] << ", "
1097  << info.npi[1] << ", "
1098  << info.npi[2] << ")"
1099  << "\n |momentum| @ prod. = " << info.ppi0
1100  << "\n position_vector @ prod. = ("
1101  << info.xpi0[0] << ", "
1102  << info.xpi0[1] << ", "
1103  << info.xpi0[2] << ")"
1104  << "\n direction_vector @ prod. = ("
1105  << info.npi0[0] << ", "
1106  << info.npi0[1] << ", "
1107  << info.npi0[2] << ")"
1108  << "\n cospibm = " << info.cospibm
1109  << "\n cospi0bm = " << info.cospi0bm
1110  << "\n Plus additional info if flux version is later than 07a"
1111  << endl;
1112 
1113  return stream;
1114  }
int GeantToPdg(int geant_code)
Definition: PDGUtils.cxx:424
ostream & genie::flux::operator<< ( ostream &  stream,
const genie::flux::GNuMIFluxPassThroughInfo info 
)

Definition at line 2053 of file GNuMIFlux.cxx.

References genie::flux::GNuMIFluxPassThroughInfo::beampx, genie::flux::GNuMIFluxPassThroughInfo::beampy, genie::flux::GNuMIFluxPassThroughInfo::beampz, genie::flux::GNuMIFluxPassThroughInfo::beamx, genie::flux::GNuMIFluxPassThroughInfo::beamy, genie::flux::GNuMIFluxPassThroughInfo::beamz, genie::flux::GNuMIFluxPassThroughInfo::evtno, genie::flux::GNuMIFluxPassThroughInfo::fgP4, genie::flux::GNuMIFluxPassThroughInfo::fgP4User, genie::flux::GNuMIFluxPassThroughInfo::fgPdgC, genie::flux::GNuMIFluxPassThroughInfo::fgX4, genie::flux::GNuMIFluxPassThroughInfo::fgX4User, genie::flux::GNuMIFluxPassThroughInfo::fgXYWgt, genie::flux::GNuMIFluxPassThroughInfo::MAX_N_TRAJ, genie::flux::GNuMIFluxPassThroughInfo::mupare, genie::flux::GNuMIFluxPassThroughInfo::muparpx, genie::flux::GNuMIFluxPassThroughInfo::muparpy, genie::flux::GNuMIFluxPassThroughInfo::muparpz, genie::flux::GNuMIFluxPassThroughInfo::ndecay, genie::flux::GNuMIFluxPassThroughInfo::ndxdz, genie::flux::GNuMIFluxPassThroughInfo::ndxdzfar, genie::flux::GNuMIFluxPassThroughInfo::ndxdznea, genie::flux::GNuMIFluxPassThroughInfo::ndydz, genie::flux::GNuMIFluxPassThroughInfo::ndydzfar, genie::flux::GNuMIFluxPassThroughInfo::ndydznea, genie::flux::GNuMIFluxPassThroughInfo::necm, genie::flux::GNuMIFluxPassThroughInfo::nenergy, genie::flux::GNuMIFluxPassThroughInfo::nenergyf, genie::flux::GNuMIFluxPassThroughInfo::nenergyn, genie::flux::GNuMIFluxPassThroughInfo::nimpwt, genie::flux::GNuMIFluxPassThroughInfo::norig, genie::flux::GNuMIFluxPassThroughInfo::npz, genie::flux::GNuMIFluxPassThroughInfo::ntrajectory, genie::flux::GNuMIFluxPassThroughInfo::ntype, genie::flux::GNuMIFluxPassThroughInfo::nwtfar, genie::flux::GNuMIFluxPassThroughInfo::nwtnear, genie::flux::GNuMIFluxPassThroughInfo::overflow, genie::utils::print::P4AsShortString(), genie::flux::GNuMIFluxPassThroughInfo::pcodes, genie::flux::GNuMIFluxPassThroughInfo::pdgcode, genie::flux::GNuMIFluxPassThroughInfo::pdpx, genie::flux::GNuMIFluxPassThroughInfo::pdpy, genie::flux::GNuMIFluxPassThroughInfo::pdpz, genie::flux::GNuMIFluxPassThroughInfo::ppdxdz, genie::flux::GNuMIFluxPassThroughInfo::ppdydz, genie::flux::GNuMIFluxPassThroughInfo::ppenergy, genie::flux::GNuMIFluxPassThroughInfo::ppmedium, genie::flux::GNuMIFluxPassThroughInfo::pppz, genie::flux::GNuMIFluxPassThroughInfo::ppvx, genie::flux::GNuMIFluxPassThroughInfo::ppvy, genie::flux::GNuMIFluxPassThroughInfo::ppvz, genie::flux::GNuMIFluxPassThroughInfo::ptype, genie::flux::GNuMIFluxPassThroughInfo::run, genie::flux::GNuMIFluxPassThroughInfo::tgen, genie::flux::GNuMIFluxPassThroughInfo::tgppx, genie::flux::GNuMIFluxPassThroughInfo::tgppy, genie::flux::GNuMIFluxPassThroughInfo::tgppz, genie::flux::GNuMIFluxPassThroughInfo::tgptype, genie::flux::GNuMIFluxPassThroughInfo::tprivx, genie::flux::GNuMIFluxPassThroughInfo::tprivy, genie::flux::GNuMIFluxPassThroughInfo::tprivz, genie::flux::GNuMIFluxPassThroughInfo::tptype, genie::flux::GNuMIFluxPassThroughInfo::trackId, genie::flux::GNuMIFluxPassThroughInfo::tvx, genie::flux::GNuMIFluxPassThroughInfo::tvy, genie::flux::GNuMIFluxPassThroughInfo::tvz, genie::flux::GNuMIFluxPassThroughInfo::units, genie::flux::GNuMIFluxPassThroughInfo::vx, genie::flux::GNuMIFluxPassThroughInfo::vy, genie::flux::GNuMIFluxPassThroughInfo::vz, genie::utils::print::X4AsString(), genie::flux::GNuMIFluxPassThroughInfo::xpoint, genie::flux::GNuMIFluxPassThroughInfo::ypoint, and genie::flux::GNuMIFluxPassThroughInfo::zpoint.

2055  {
2056  // stream << "\n ndecay = " << info.ndecay << std::endl;
2057  stream << "\nGNuMIFlux run " << info.run << " evtno " << info.evtno
2058  << " (pcodes " << info.pcodes << " units " << info.units << ")"
2059  << "\n random dk: dx/dz " << info.ndxdz
2060  << " dy/dz " << info.ndydz
2061  << " pz " << info.npz << " E " << info.nenergy
2062  << "\n near00 dk: dx/dz " << info.ndxdznea
2063  << " dy/dz " << info.ndydznea
2064  << " E " << info.nenergyn << " wgt " << info.nwtnear
2065  << "\n far00 dk: dx/dz " << info.ndxdzfar
2066  << " dy/dz " << info.ndydzfar
2067  << " E " << info.nenergyf << " wgt " << info.nwtfar
2068  << "\n norig " << info.norig << " ndecay " << info.ndecay
2069  << " ntype " << info.ntype
2070  << "\n had vtx " << info.vx << " " << info.vy << " " << info.vz
2071  << "\n parent p3 @ dk " << info.pdpx << " " << info.pdpy << " " << info.pdpz
2072  << "\n parent prod: dx/dz " << info.ppdxdz
2073  << " dy/dz " << info.ppdydz
2074  << " pz " << info.pppz << " E " << info.ppenergy
2075  << "\n ppmedium " << info.ppmedium << " ptype " << info.ptype
2076  << " ppvtx " << info.ppvx << " " << info.ppvy << " " << info.ppvz
2077  << "\n mu parent p4 " << info.muparpx << " " << info.muparpy
2078  << " " << info.muparpz << " " << info.mupare
2079  << "\n necm " << info.necm << " nimpwt " << info.nimpwt
2080  << "\n point x,y,z " << info.xpoint << " " << info.ypoint
2081  << " " << info.zpoint
2082  << "\n tv x,y,z " << info.tvx << " " << info.tvy << " " << info.tvz
2083  << "\n tptype " << info.tptype << " tgen " << info.tgen
2084  << " tgptype " << info.tgptype
2085  << "\n tgp px,py,pz " << info.tgppx << " " << info.tgppy
2086  << " " << info.tgppz
2087  << "\n tpriv x,y,z " << info.tprivx << " " << info.tprivy
2088  << " " << info.tprivz
2089  << "\n beam x,y,z " << info.beamx << " " << info.beamy
2090  << " " << info.beamz
2091  << "\n beam px,py,pz " << info.beampx << " " << info.beampy
2092  << " " << info.beampz
2093  ;
2094 
2095 #ifndef SKIP_MINERVA_MODS
2096  //=========================================
2097  // The following was inserted by MINERvA
2098  //=========================================
2099  stream << "\nNeutrino History : ntrajectories " << info.ntrajectory
2100  << "\n (trkID, pdg) of nu parents: [";
2101  Int_t ntraj = info.ntrajectory;
2102  if ( info.overflow ) ntraj = GNuMIFluxPassThroughInfo::MAX_N_TRAJ;
2103 
2104  for ( Int_t itt = 0; itt < ntraj; ++itt )
2105  stream << "(" << info.trackId[itt-1] << ", " << info.pdgcode[itt] << ") ";
2106  stream << "]\n";
2107  //END of minerva additions
2108 #endif
2109 
2110  stream << "\nCurrent: pdg " << info.fgPdgC
2111  << " xywgt " << info.fgXYWgt
2112  << "\n p4 (beam): " << utils::print::P4AsShortString(&info.fgP4)
2113  << "\n x4 (beam): " << utils::print::X4AsString(&info.fgX4)
2114  << "\n p4 (user): " << utils::print::P4AsShortString(&info.fgP4User)
2115  << "\n x4 (user): " << utils::print::X4AsString(&info.fgX4User);
2116  ;
2117 #ifdef GNUMI_TEST_XY_WGT
2118  stream << "\n" << xypartials::GetStaticInstance();
2119 #endif
2120 
2121 
2122  /*
2123  //std::cout << "GNuMIFlux::PrintCurrent ....." << std::endl;
2124  //LOG("Flux", pINFO)
2125  LOG("Flux", pNOTICE)
2126  << "Current Leaf Values: "
2127  << " run " << fLf_run << " evtno " << fLf_evtno << "\n"
2128  << " NenergyN " << fLf_NenergyN << " NWtNear " << fLf_NWtNear
2129  << " NenergyF " << fLf_NenergyF << " NWtFar " << fLf_NWtFar << "\n"
2130  << " Norig " << fLf_Norig << " Ndecay " << fLf_Ndecay << " Ntype " << fLf_Ntype << "\n"
2131  << " Vxyz " << fLf_Vx << " " << fLf_Vy << " " << fLf_Vz
2132  << " pdPxyz " << fLf_pdPx << " " << fLf_pdPy << " " << fLf_pdPz << "\n"
2133  << " pp dxdz " << fLf_ppdxdz << " dydz " << fLf_ppdydz << " pz " << fLf_pppz << "\n"
2134  << " pp energy " << fLf_ppenergy << " medium " << fLf_ppmedium
2135  << " ptype " << fLf_ptype
2136  << " ppvxyz " << fLf_ppvx << " " << fLf_ppvy << " " << fLf_ppvz << "\n"
2137  << " muparpxyz " << fLf_muparpx << " " << fLf_muparpy << " " << fLf_muparpz
2138  << " mupare " << fLf_mupare << "\n"
2139  << ;
2140  */
2141 
2142  return stream;
2143  }
TLorentzVector fgP4
generated nu 4-momentum beam coord
Definition: GNuMIFlux.h:102
string P4AsShortString(const TLorentzVector *p)
Definition: PrintUtils.cxx:45
TLorentzVector fgX4User
generated nu 4-position user coord
Definition: GNuMIFlux.h:105
TLorentzVector fgX4
generated nu 4-position beam coord
Definition: GNuMIFlux.h:103
int fgPdgC
generated nu pdg-code
Definition: GNuMIFlux.h:98
TLorentzVector fgP4User
generated nu 4-momentum user coord
Definition: GNuMIFlux.h:104
string X4AsString(const TLorentzVector *x)
Definition: PrintUtils.cxx:57

Variable Documentation

const int genie::flux::fNgmax = 12
const double genie::flux::kAstroDefMaxEv = 1E+20 * units::GeV
const double genie::flux::kAstroDefMinEv = 1E-3 * units::GeV
const int genie::flux::kAstroNCosThetaBins = 500

Definition at line 119 of file GAstroFlux.h.

const int genie::flux::kAstroNlog10EvBins = 1000

Definition at line 118 of file GAstroFlux.h.

Referenced by genie::flux::GAstroFlux::SetEnergyPowLawIdx().

const int genie::flux::kAstroNPhiBins = 500

Definition at line 120 of file GAstroFlux.h.

const double genie::flux::kBGLRS3DCosThetaMax = 1.0

Definition at line 52 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const double genie::flux::kBGLRS3DCosThetaMin = -1.0

Definition at line 51 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const double genie::flux::kBGLRS3DEvMin = 0.1

Definition at line 57 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kBGLRS3DNumCosThetaBins = 20

Definition at line 50 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kBGLRS3DNumLogEvBinsHigh = 30

Definition at line 55 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kBGLRS3DNumLogEvBinsLow = 40

Definition at line 53 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kBGLRS3DNumLogEvBinsPerDecadeHigh = 10

Definition at line 56 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kBGLRS3DNumLogEvBinsPerDecadeLow = 20

Definition at line 54 of file GBGLRSAtmoFlux.h.

Referenced by genie::flux::GBGLRSAtmoFlux::SetBinSizes().

const double genie::flux::kGFlk3DCosThetaMax = 1.0

Definition at line 49 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const double genie::flux::kGFlk3DCosThetaMin = -1.0

Definition at line 48 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const double genie::flux::kGFlk3DEvMin = 0.100

Definition at line 52 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kGFlk3DNumCosThetaBins = 40

Definition at line 47 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kGFlk3DNumLogEvBins = 61

Definition at line 50 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kGFlk3DNumLogEvBinsPerDecade = 20

Definition at line 51 of file GFLUKAAtmoFlux.h.

Referenced by genie::flux::GFLUKAAtmoFlux::SetBinSizes().

const double genie::flux::kGHnd3DCosThetaMax = 1.0

Definition at line 37 of file GHAKKMAtmoFlux.h.

Referenced by genie::flux::GHAKKMAtmoFlux::SetBinSizes().

const double genie::flux::kGHnd3DCosThetaMin = -1.0

Definition at line 36 of file GHAKKMAtmoFlux.h.

Referenced by genie::flux::GHAKKMAtmoFlux::SetBinSizes().

const double genie::flux::kGHnd3DEvMin = 0.1

Definition at line 43 of file GHAKKMAtmoFlux.h.

const unsigned int genie::flux::kGHnd3DNumCosThetaBins = 20
const unsigned int genie::flux::kGHnd3DNumLogEvBins = 101
const unsigned int genie::flux::kGHnd3DNumLogEvBinsPerDecade = 20

Definition at line 42 of file GHAKKMAtmoFlux.h.

Referenced by genie::flux::GHAKKMAtmoFlux::SetBinSizes().

const unsigned int genie::flux::kGHnd3DNumPhiBins = 12
const double genie::flux::kGHnd3DPhiMax = 360.0

Definition at line 40 of file GHAKKMAtmoFlux.h.

Referenced by genie::flux::GHAKKMAtmoFlux::SetBinSizes().

const double genie::flux::kGHnd3DPhiMin = 0.0

Definition at line 39 of file GHAKKMAtmoFlux.h.

Referenced by genie::flux::GHAKKMAtmoFlux::SetBinSizes().