00001 00006 #ifndef MYCFSOURCE_HH 00007 #define MYCFSOURCE_HH 00008 #include <math.h> 00009 #include <iostream.h> 00010 #include "ReactorConstants.hh" 00011 00025 class MyCfSource{ 00026 00027 public: 00028 00036 MyCfSource(int newIsotope=k.Isotope, 00037 int newRmaxgen=k.Rmaxgen); 00039 ~MyCfSource(); 00041 MyCfSource(const MyCfSource& CfSource); 00043 MyCfSource& operator=(const MyCfSource& rhs); 00044 00047 static float Cf252NeutronSpectrum(const float& x); 00048 00050 int GetNumCfSources() const {return Nsources;} 00054 double GetCfNeutronEnergy(int& n) const {return neutronE[n];} 00055 00059 double GetCfVertexR(int& n) const {return R[n];} 00063 double GetCfVertexCosTheta(int& n) const {return zR[n];} 00067 double GetCfVertexPhi(int& n) const {return phiR[n];} 00068 00069 private: 00070 00071 static ReactorConstants k; 00072 00073 int Isotope; 00074 int Rmaxgen; 00075 00076 static const int Sdim = 1121; // entries in cf252_neutron_spectrum.txt 00077 float neutronEnergy[Sdim]; 00078 float neutronProb[Sdim]; 00079 00082 int Nsources; 00083 double R[k.Ndim],zR[k.Ndim],phiR[k.Ndim]; 00087 float neutronE[k.Ndim]; 00088 }; 00089 #endif