8 #ifndef EVGB_GENIEHELPER_H 9 #define EVGB_GENIEHELPER_H 51 namespace genie {
class EventRecord; }
62 TGeoManager* rootGeom,
64 double const& detectorMass);
73 double TotalHistFlux();
85 double TotalMass()
const {
return fDetectorMass+fSurroundingMass; }
95 {
return ( (
base) ? fFluxD : fFluxD2GMCJD ); }
103 void RegularizeFluxType();
104 void SqueezeFilePatterns();
105 void AtmoFluxCheck();
106 void HistogramFluxCheck();
108 void InitializeGeometry();
109 void InitializeFiducialSelection();
110 void InitializeRockBoxSelection();
111 void InitializeFluxDriver();
112 void ConfigGeomScan();
113 void SetMaxPathOutInfo();
120 void BuildFluxRotation();
121 void ExpandFluxPaths();
122 void ExpandFluxFilePatternsDirect();
123 void ExpandFluxFilePatternsIFDH();
127 void SetGMSGLAYOUT();
129 void ReadXSecTable();
213 #endif //EVGB_GENIEHELPER_H genie::GFluxI * GetFluxDriver(bool base=true)
std::vector< std::string > fFluxFilePatterns
wildcard patterns files containing histograms or ntuples, or txt
std::string FluxType() const
bool fUseHelperRndGen4GENIE
use fHelperRandom for gRandom during Sample()
std::string fDetLocation
name of flux window location
double fAtmoEmax
atmo: Maximum energy of neutrinos in GeV
int fMaxFluxFileNumber
maximum # of flux files
double fMixerBaseline
baseline distance if genie flux can't calculate it
std::string fTuneName
GENIE R-3 Tune name (defines model configuration)
IFDH interface (data handling) ... if using bare interface.
THE MAIN GENIE PROJECT NAMESPACE
double fTotalHistFlux
total flux of neutrinos from flux histograms for used flavors
ifdh_ns::ifdh * fIFDH
(optional) flux file handling
std::string fGXMLPATH
locations for GENIE XML files
std::string fFiducialCut
configuration for geometry selector
std::string DetectorLocation() const
genie::EventRecord * GetGenieEventRecord()
double fRandomTimeOffset
additional random time shift (ns) added to every particle time
TVector3 fBeamCenter
center of beam for histogram fluxes - must be in meters
double fGlobalTimeOffset
overall time shift (ns) added to every particle time
std::string fSpillTimeConfig
alternative to flat spill distribution
std::string fEventGeneratorList
control over event topologies, was $GEVGL [Default]
TGeoManager * fGeoManager
pointer to ROOT TGeoManager
std::string fGENIEMsgThresholds
additional XML file setting Messager level thresholds (":" separated)
std::vector< int > fGenFlavors
pdg codes for flavors to generate
evgb::EvtTimeShiftI * fTimeShifter
generator for time offset within a spill
genie::GMCJDriver * fDriver
double fXSecMassPOT
product of cross section, mass and POT/spill for histogram fluxes
std::vector< std::string > fSelectedFluxFiles
flux files selected after wildcard expansion and subset selection
genie::EventRecord * fGenieEventRecord
last generated event
std::string fXSecTable
cross section file (was $GSPLOAD)
double fFluxUpstreamZ
z where flux starts from (if non-default, simple/ntuple only)
std::vector< TH1D * > fFluxHistograms
histograms for each nu species
interface for event time distribution
A GENIE `MC Job Driver'. Can be used for setting up complicated event generation cases involving deta...
double SpillExposure() const
int fGHepPrintLevel
GHepRecord::SetPrintLevel(), -1=no-print.
std::string fFluxRotCfg
how to interpret fFluxRotValues
TVector3 fBeamDirection
direction of the beam for histogram fluxes
std::string fBeamName
name of the beam we are simulating
std::string fWorldVolume
name of the world volume in the ROOT geometry
double fTotalExposure
pot used from flux ntuple
TRandom3 * fHelperRandom
random # generator for GENIEHelper
std::string fTopVolume
top volume in the ROOT geometry in which to generate events
std::string GetEventGeneratorList() const
std::vector< TH1D * > FluxHistograms() const
genie::GeomAnalyzerI * fGeomD
std::string fFluxSearchPaths
colon separated set of path stems
std::string fGMSGLAYOUT
format for GENIE log message [BASIC]|SIMPLE (SIMPLE=no timestamps)
Base utilities and modules for event generation and detector simulation.
double fBeamRadius
radius of cylindar for histogram fluxes - must be in meters
std::string fMixerConfig
configuration string for genie GFlavorMixerI
genie::GFluxI * fFluxD
real flux driver
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
double fMonoEnergy
energy of monoenergetic neutrinos
double fDetectorMass
mass of the detector in kg
std::vector< double > fFluxRotValues
parameters for rotation
TRandom3 * GetHelperRandom()
std::vector< std::string > fEnvironment
environmental variables and settings used by genie
double TotalExposure() const
std::string fMaxPathOutInfo
output info if writing PathLengthList from GeomScan
double fSpillExposure
total exposure (i.e. pot) for this spill
double fAtmoEmin
atmo: Minimum energy of neutrinos in GeV
std::string fGeoFile
name of file containing the Geometry description
double fAtmoRl
atmo: radius of the sphere on where the neutrinos are generated
std::string GetTuneName() const
unsigned int fDebugFlags
set bits to enable debug info
Physics generators for neutrinos, cosmic rays, and others.
std::string fFluxCopyMethod
"DIRECT" = old direct access method, otherwise = ifdh approach schema ("" okay)
std::string fFluxCleanup
"ALWAYS", "/var/tmp", "NEVER"
Defines the GENIE Geometry Analyzer Interface.
Event generator information.
double fHistEventsPerSpill
number of events per spill for histogram fluxes - changes each spill
TRotation * fFluxRotation
rotation for atmos / astro flux coord systems
std::string fGeomScan
configuration for geometry scan to determine max pathlengths
int fSpillEvents
total events for this spill
genie::GFluxI * fFluxD2GMCJD
flux driver passed to genie GMCJDriver, might be GFluxBlender
std::string fFunctionalFlux
int fMaxFluxFileMB
maximum size of flux files (MB)
double fPOTPerSpill
number of pot per spill
GENIE Interface for user-defined flux classes.