20#ifndef _G_POWERLAW_FLUX_H_
21#define _G_POWERLAW_FLUX_H_
26#include <TLorentzVector.h>
41 GPowerLawFlux(
double alpha,
double emin,
double emax,
const map<int,double> & numap );
52 bool End (
void) {
return false; }
53 long int Index (
void) {
return -1; }
54 void Clear (Option_t * opt);
65 void Initialize (
double alpha,
double emin,
double emax,
int pdg);
66 void Initialize (
double alpha,
double emin,
double emax,
const map<int,double> & numap);
double fMaxEv
maximum energy
void SetNuDirection(const TVector3 &direction)
const TLorentzVector & Momentum(void)
returns the flux neutrino 4-momentum
bool GenerateNext(void)
generate the next flux neutrino (return false in err)
bool End(void)
true if no more flux nu's can be thrown (eg reaching end of beam sim ntuples)
double fSpectralIndex
spectral index (E^{-alpha})
const PDGCodeList & FluxParticles(void)
declare list of flux neutrinos that can be generated (for init. purposes)
double Weight(void)
returns the flux neutrino weight (if any)
TLorentzVector fgX4
running generated nu 4-position
void SetDirectionCos(double dx, double dy, double dz)
TLorentzVector fgP4
running generated nu 4-momentum
long int Index(void)
returns corresponding index for current flux neutrino (e.g. for a flux ntuple returns the current ent...
int fgPdgC
running generated nu pdg-code
map< int, double > fProb
cumulative probability of neutrino types
void GenerateWeighted(bool gen_weighted)
set whether to generate weighted or unweighted neutrinos
double MaxEnergy(void)
declare the max flux neutrino energy that can be generated (for init. purposes)
void SetRayOrigin(double x, double y, double z)
void SetBeamSpot(const TVector3 &spot)
PDGCodeList * fPdgCList
list of neutrino pdg-codes
void Clear(Option_t *opt)
reset state variables based on opt
int PdgCode(void)
returns the flux neutrino pdg code
double fMinEv
minimum energy
const TLorentzVector & Position(void)
returns the flux neutrino 4-position (note: expect SI rather than physical units)
Utilities for improving the code readability when using PDG codes.
THE MAIN GENIE PROJECT NAMESPACE