26 using namespace genie;
27 using namespace genie::flux;
28 using namespace genie::constants;
35 <<
"Instantiating the GENIE FLUKA atmospheric neutrino flux driver";
41 GFLUKAAtmoFlux::~GFLUKAAtmoFlux()
65 double logEmax = TMath::Log10(1.);
75 <<
"FLUKA 3d flux: CosTheta bin " << i+1
85 fEnergyBins[i] = TMath::Power(10., logEmin + i*dlogE);
88 <<
"FLUKA 3d flux: Energy bin " << i+1
99 <<
"FLUKA 3d flux: Energy bin " << i+1
112 <<
"Loading FLUKA atmospheric flux for neutrino: " << nu_pdg
113 <<
" from file: " << filename;
118 histo = myMapEntry->second;
121 LOG(
"Flux",
pERROR) <<
"Null flux histogram!";
124 ifstream flux_stream(filename.c_str(), ios::in);
126 LOG(
"Flux",
pERROR) <<
"Could not open file: " << filename;
131 double energy, costheta, flux;
136 while ( !flux_stream.eof() ) {
138 flux_stream >> energy >> j1 >> costheta >> j2 >> flux;
141 <<
"Flux[Ev = " << energy
142 <<
", cos8 = " << costheta <<
"] = " << flux;
145 ibin = histo->FindBin( (Axis_t)energy, (Axis_t)(-costheta), (Axis_t)
kPi );
146 histo->SetBinContent( ibin, (Stat_t)(scale*flux) );
double * fPhiBins
phi bins in input flux data files
unsigned int fNumEnergyBins
number of energy bins in input flux data files
unsigned int fNumCosThetaBins
number of cos(theta) bins in input flux data files
const double kGFlk3DCosThetaMax
const unsigned int kGFlk3DNumCosThetaBins
const unsigned int kGFlk3DNumLogEvBins
const unsigned int kGFlk3DNumLogEvBinsPerDecade
bool FillFluxHisto(int nu_pdg, string filename)
A flux driver for the FLUKA 3-D Atmospheric Neutrino Flux.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
const double kGFlk3DCosThetaMin
const double kGFlk3DEvMin
double * fCosThetaBins
cos(theta) bins in input flux data files
unsigned int fNumPhiBins
number of phi bins in input flux data files
double * fEnergyBins
energy bins in input flux data files
map< int, TH3D * > fRawFluxHistoMap
flux = f(Ev,cos8,phi) for each neutrino species
A base class for the FLUKA, BGLRS and ATMNC atmo. nu. flux drivers. The driver depends on data files ...
double fMaxEv
maximum energy (in input flux files)
#define FLUXDRIVERREG4(_nsa, _nsb, _name, _fqname)