36 <<
"Instantiating the GENIE HAKKM atmospheric neutrino flux driver";
64 <<
"HAKKM 3D flux: CosTheta bin " << i+1
90 <<
"HAKKM 3D flux: Phi bin " << i+1
113 double logEmax = TMath::Log10(1.);
114 double logEmin = TMath::Log10(0.1);
116 (logEmax - logEmin) /
121 fEnergyBins[i+1] = TMath::Power(10., logEmin + i*dlogE);
124 <<
"HAKKM 3D flux: Energy bin " << i+1
125 <<
": upper edge = " <<
fEnergyBins[i+1] <<
" GeV";
131 <<
"HAKKM 3D flux: Maximum energy = " <<
fMaxEv;
138 <<
"Loading HAKKM flux for neutrino: " << nu_pdg
139 <<
" from file: " << filename;
144 histo = myMapEntry->second;
147 LOG(
"Flux",
pERROR) <<
"Null flux histogram!";
151 ifstream flux_stream(filename.c_str(), ios::in);
153 LOG(
"Flux",
pERROR) <<
"Could not open file: " << filename;
162 while (!flux_stream.eof()) {
165 getline(flux_stream,comment);
166 LOG(
"Flux",
pDEBUG) <<
"Comment line from HAKKM input file: " << comment;
167 getline(flux_stream,comment);
168 LOG(
"Flux",
pDEBUG) <<
"Comment line from HAKKM input file: " << comment;
177 <<
"icostheta = " << icostheta <<
", iphi = " << iphi <<
" / "
180 <<
"The following set of (energy,flux) values corresponds to "
183 <<
" or [" << r2d *
fPhiBins[iphi-1] <<
", " << r2d *
fPhiBins[iphi] <<
"] deg) ";
195 flux_stream >> energy >> fnumu >> fnumubar >> fnue >> fnuebar;
209 <<
"Flux (nu_pdg = " << nu_pdg
210 <<
"; Ev = " << energy <<
" GeV / bin used = ["
212 <<
") = " <<
flux <<
" (m^2 sec sr GeV)^-1";
214 histo->SetBinContent(ienergy,icostheta,iphi,
flux);
217 getline(flux_stream,comment);
#define FLUXDRIVERREG4(_nsa, _nsb, _name, _fqname)
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE,...
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils.
map< int, TH3D * > fRawFluxHistoMap
flux = f(Ev,cos8,phi) for each neutrino species
unsigned int fNumEnergyBins
number of energy bins in input flux data files
double fMaxEv
maximum energy (in input flux files)
unsigned int fNumPhiBins
number of phi bins in input flux data files
double * fPhiBins
phi bins in input flux data files
double * fCosThetaBins
cos(theta) bins in input flux data files
unsigned int fNumCosThetaBins
number of cos(theta) bins in input flux data files
double * fEnergyBins
energy bins in input flux data files
A driver for the HAKKM 3-D atmospheric neutrino flux (commonly known as the ‘Honda flux’)
bool FillFluxHisto(int nu_pdg, string filename)
const unsigned int kGHnd3DNumPhiBins
const double kGHnd3DCosThetaMax
const double kGHnd3DPhiMin
const unsigned int kGHnd3DNumLogEvBins
const unsigned int kGHnd3DNumCosThetaBins
const double kGHnd3DCosThetaMin
const double kGHnd3DPhiMax
const unsigned int kGHnd3DNumLogEvBinsPerDecade
THE MAIN GENIE PROJECT NAMESPACE