23#ifndef _G_TH1_CYLICDRICAL_FLUX_H_
24#define _G_TH1_CYLICDRICAL_FLUX_H_
29#include <TLorentzVector.h>
64 bool End (
void) {
return false; }
65 long int Index (
void) {
return -1; }
66 void Clear (Option_t * opt);
void SetNuDirection(const TVector3 &direction)
void SetRtDependence(string rdep)
TLorentzVector fgP4
running generated nu 4-momentum
double fRt
transverse size of neutrino beam
const PDGCodeList & FluxParticles(void)
declare list of flux neutrinos that can be generated (for init. purposes)
double fMaxEv
maximum energy
void GenerateWeighted(bool gen_weighted)
set whether to generate weighted or unweighted neutrinos
const TLorentzVector & Position(void)
returns the flux neutrino 4-position (note: expect SI rather than physical units)
double GeneratePhi(void) const
TH1D * fTotSpectrum
combined flux = f(Ev)
void Clear(Option_t *opt)
reset state variables based on opt
int fgPdgC
running generated nu pdg-code
TVector3 * fDirVec
neutrino direction
bool End(void)
true if no more flux nu's can be thrown (eg reaching end of beam sim ntuples)
double MaxEnergy(void)
declare the max flux neutrino energy that can be generated (for init. purposes)
vector< TH1D * > fSpectrum
flux = f(Ev), 1/neutrino species
double GenerateRt(void) const
TLorentzVector fgX4
running generated nu 4-position
void AddEnergySpectrum(int nu_pdgc, TH1D *spectrum)
PDGCodeList * fPdgCList
list of neutrino pdg-codes
TVector3 * fBeamSpot
beam spot position
const TLorentzVector & Momentum(void)
returns the flux neutrino 4-momentum
void SetTransverseRadius(double Rt)
void SetBeamSpot(const TVector3 &spot)
int SelectNeutrino(double Ev)
TF1 * fRtDep
transverse radius dependence
void ResetSelection(void)
long int Index(void)
returns corresponding index for current flux neutrino (e.g. for a flux ntuple returns the current ent...
double Weight(void)
returns the flux neutrino weight (if any)
int PdgCode(void)
returns the flux neutrino pdg code
bool GenerateNext(void)
generate the next flux neutrino (return false in err)
THE MAIN GENIE PROJECT NAMESPACE