GENIEGenerator
|
A flux driver for the FLUKA 3-D Atmospheric Neutrino Flux. More...
#include <GFLUKAAtmoFlux.h>
Public Member Functions | |
GFLUKAAtmoFlux () | |
~GFLUKAAtmoFlux () | |
Public Member Functions inherited from genie::flux::GAtmoFlux | |
virtual | ~GAtmoFlux () |
virtual const PDGCodeList & | FluxParticles (void) |
declare list of flux neutrinos that can be generated (for init. purposes) More... | |
virtual double | MaxEnergy (void) |
declare the max flux neutrino energy that can be generated (for init. purposes) More... | |
virtual bool | GenerateNext (void) |
generate the next flux neutrino (return false in err) More... | |
virtual int | PdgCode (void) |
returns the flux neutrino pdg code More... | |
virtual double | Weight (void) |
returns the flux neutrino weight (if any) More... | |
virtual const TLorentzVector & | Momentum (void) |
returns the flux neutrino 4-momentum More... | |
virtual const TLorentzVector & | Position (void) |
returns the flux neutrino 4-position (note: expect SI rather than physical units) More... | |
virtual bool | End (void) |
true if no more flux nu's can be thrown (eg reaching end of beam sim ntuples) More... | |
virtual long int | Index (void) |
returns corresponding index for current flux neutrino (e.g. for a flux ntuple returns the current entry number) More... | |
virtual void | Clear (Option_t *opt) |
reset state variables based on opt More... | |
virtual void | GenerateWeighted (bool gen_weighted) |
set whether to generate weighted or unweighted neutrinos More... | |
double | Enu (void) |
double | Energy (void) |
double | CosTheta (void) |
double | CosZenith (void) |
long int | NFluxNeutrinos (void) const |
Number of flux nu's generated. Not the same as the number of nu's thrown towards the geometry (if there are cuts). More... | |
void | ForceMinEnergy (double emin) |
void | ForceMaxEnergy (double emax) |
void | SetSpectralIndex (double index) |
void | SetRadii (double Rlongitudinal, double Rtransverse) |
double | GetFluxSurfaceArea (void) |
double | GetLongitudinalRadius (void) |
double | GetTransverseRadius (void) |
void | SetUserCoordSystem (TRotation &rotation) |
Rotation: Topocentric Horizontal -> User-defined Topocentric Coord System. More... | |
void | AddFluxFile (int neutrino_pdg, string filename) |
void | AddFluxFile (string filename) |
bool | LoadFluxData (void) |
TH3D * | GetFluxHistogram (int flavour) |
double | GetTotalFlux (void) |
double | GetTotalFluxInEnergyRange (void) |
double | GetFlux (int flavour) |
double | GetFlux (int flavour, double energy) |
double | GetFlux (int flavour, double energy, double costh) |
double | GetFlux (int flavour, double energy, double costh, double phi) |
Public Member Functions inherited from genie::GFluxI | |
virtual | ~GFluxI () |
Private Member Functions | |
void | SetBinSizes (void) |
bool | FillFluxHisto (int nu_pdg, string filename) |
Additional Inherited Members | |
Protected Member Functions inherited from genie::flux::GAtmoFlux | |
GAtmoFlux () | |
bool | GenerateNext_1try (void) |
void | Initialize (void) |
void | CleanUp (void) |
void | ResetSelection (void) |
double | MinEnergy (void) |
TH3D * | CreateFluxHisto (string name, string title) |
void | ZeroFluxHisto (TH3D *hist) |
void | AddAllFluxes (void) |
int | SelectNeutrino (double Ev, double costheta, double phi) |
TH3D * | CreateNormalisedFluxHisto (TH3D *hist) |
Protected Member Functions inherited from genie::GFluxI | |
GFluxI () | |
Protected Attributes inherited from genie::flux::GAtmoFlux | |
double | fMaxEv |
maximum energy (in input flux files) More... | |
PDGCodeList * | fPdgCList |
input list of neutrino pdg-codes More... | |
int | fgPdgC |
current generated nu pdg-code More... | |
TLorentzVector | fgP4 |
current generated nu 4-momentum More... | |
TLorentzVector | fgX4 |
current generated nu 4-position More... | |
double | fWeight |
current generated nu weight More... | |
long int | fNNeutrinos |
number of flux neutrinos thrown so far More... | |
double | fMaxEvCut |
user-defined cut: maximum energy More... | |
double | fMinEvCut |
user-defined cut: minimum energy More... | |
double | fRl |
defining flux neutrino generation surface: longitudinal radius More... | |
double | fRt |
defining flux neutrino generation surface: transverse radius More... | |
TRotation | fRotTHz2User |
coord. system rotation: THZ -> Topocentric user-defined More... | |
unsigned int | fNumPhiBins |
number of phi bins in input flux data files More... | |
unsigned int | fNumCosThetaBins |
number of cos(theta) bins in input flux data files More... | |
unsigned int | fNumEnergyBins |
number of energy bins in input flux data files More... | |
double * | fPhiBins |
phi bins in input flux data files More... | |
double * | fCosThetaBins |
cos(theta) bins in input flux data files More... | |
double * | fEnergyBins |
energy bins in input flux data files More... | |
bool | fGenWeighted |
generate a weighted or unweighted flux? More... | |
double | fSpectralIndex |
power law function used for weighted flux More... | |
bool | fInitialized |
flag to check that initialization is run More... | |
TH3D * | fTotalFluxHisto |
flux = f(Ev,cos8,phi) summed over neutrino species More... | |
double | fTotalFluxHistoIntg |
fFluxSum2D integral More... | |
map< int, TH3D * > | fFluxHistoMap |
flux = f(Ev,cos8,phi) for each neutrino species More... | |
map< int, TH3D * > | fRawFluxHistoMap |
flux = f(Ev,cos8,phi) for each neutrino species More... | |
vector< int > | fFluxFlavour |
input flux file for each neutrino species More... | |
vector< string > | fFluxFile |
input flux file for each neutrino species More... | |
A flux driver for the FLUKA 3-D Atmospheric Neutrino Flux.
To be able to use this flux driver you will need to download the flux data from: http://pcbat1.mi.infn.it/~battist/neutrino.html
Please note that this class expects to read flux files formatted as described in the above FLUKA flux page. Each file contains 3 columns:
Definition at line 54 of file GFLUKAAtmoFlux.h.
GFLUKAAtmoFlux::GFLUKAAtmoFlux | ( | ) |
Definition at line 31 of file GFLUKAAtmoFlux.cxx.
References Initialize(), LOG, and pNOTICE.
GFLUKAAtmoFlux::~GFLUKAAtmoFlux | ( | ) |
Definition at line 41 of file GFLUKAAtmoFlux.cxx.
|
privatevirtual |
Implements genie::flux::GAtmoFlux.
Definition at line 109 of file GFLUKAAtmoFlux.cxx.
References genie::flux::GAtmoFlux::fRawFluxHistoMap, genie::constants::kPi, LOG, pERROR, pINFO, and pNOTICE.
|
private |
Definition at line 46 of file GFLUKAAtmoFlux.cxx.
References genie::flux::GAtmoFlux::fCosThetaBins, genie::flux::GAtmoFlux::fEnergyBins, genie::flux::GAtmoFlux::fMaxEv, genie::flux::GAtmoFlux::fNumCosThetaBins, genie::flux::GAtmoFlux::fNumEnergyBins, genie::flux::GAtmoFlux::fNumPhiBins, genie::flux::GAtmoFlux::fPhiBins, genie::flux::kGFlk3DCosThetaMax, genie::flux::kGFlk3DCosThetaMin, genie::flux::kGFlk3DEvMin, genie::flux::kGFlk3DNumCosThetaBins, genie::flux::kGFlk3DNumLogEvBins, genie::flux::kGFlk3DNumLogEvBinsPerDecade, genie::constants::kPi, LOG, and pDEBUG.