22 #ifndef _G_MONOENERGETIC_FLUX_H_
23 #define _G_MONOENERGETIC_FLUX_H_
28 #include <TLorentzVector.h>
54 bool End (
void) {
return false; }
55 long int Index (
void) {
return -1; }
56 void Clear (Option_t * opt);
68 void Initialize (
double Ev,
const map<int,double> & numap);
88 #endif // _G_MONOENERGETIC_FLUX_H_
long int Index(void)
returns corresponding index for current flux neutrino (e.g. for a flux ntuple returns the current ent...
const PDGCodeList & FluxParticles(void)
declare list of flux neutrinos that can be generated (for init. purposes)
void GenerateWeighted(bool gen_weighted)
set whether to generate weighted or unweighted neutrinos
int fgPdgC
running generated nu pdg-code
TLorentzVector fgP4
running generated nu 4-momentum
const TLorentzVector & Position(void)
returns the flux neutrino 4-position (note: expect SI rather than physical units) ...
bool End(void)
true if no more flux nu's can be thrown (eg reaching end of beam sim ntuples)
bool GenerateNext(void)
generate the next flux neutrino (return false in err)
void Initialize(double Ev, int pdg)
void SetNuDirection(const TVector3 &direction)
double Weight(void)
returns the flux neutrino weight (if any)
void SetDirectionCos(double dx, double dy, double dz)
void SetRayOrigin(double x, double y, double z)
PDGCodeList * fPdgCList
list of neutrino pdg-codes
const TLorentzVector & Momentum(void)
returns the flux neutrino 4-momentum
A simple GENIE flux driver for monoenergetic neutrinos along the z direction. Can handle a mix of neu...
int PdgCode(void)
returns the flux neutrino pdg code
double MaxEnergy(void)
declare the max flux neutrino energy that can be generated (for init. purposes)
TLorentzVector fgX4
running generated nu 4-position
void SetBeamSpot(const TVector3 &spot)
double fMaxEv
maximum energy
void Clear(Option_t *opt)
reset state variables based on opt
GENIE Interface for user-defined flux classes.