1 #ifndef __JPHYSICS__JRADIATIONSOURCE__ 
    2 #define __JPHYSICS__JRADIATIONSOURCE__ 
   16 namespace JPP { 
using namespace JPHYSICS; }
 
   76     virtual double getThetaRMS(
const double E, 
const double Es) 
const = 0;
 
  105                      const double                      density,
 
  122       return ((*this)->*
sigma)(
E) * 
rho * 1.0e6;
 
  134       return ((*this)->*
eloss)(
E);
 
  145     virtual double getThetaRMS(
const double E, 
const double Es)
 const override 
  147       return ((*this)->*
theta)(
E, Es/
E);
 
  172                const double density) :
 
  198       return this->
getE(E);
 
  209     virtual double getThetaRMS(
const double E, 
const double Es)
 const override 
double(JRadiation::* sigma)(const double) const 
total cross section method 
 
JRadiationInterface(const int id)
Constructor. 
 
double getCrossSection(const double E) const 
Get cross section. 
 
virtual double getThetaRMS(const double E, const double Es) const override
Get RMS of scattering angle. 
 
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
 
virtual double getEnergyOfShower(const double E) const override
Get energy of shower. 
 
Deep-inelastic muon-nucleon scattering. 
 
virtual double getEnergyOfShower(const double E) const =0
Get energy of shower. 
 
JRadiationSource(const int id, const JSharedPointer< JRadiation > &radiation, const double density, const JRadiationSource_t source)
Constructor. 
 
double(JRadiation::* theta)(const double, const double) const 
scattering angle method 
 
Interface for calculation of inverse interaction length and shower energy. 
 
static const double AVOGADRO
Avogadro's number [gr^-1]. 
 
virtual double getInverseInteractionLength(const double E) const override
Get inverse interaction length. 
 
Muon radiative cross sections. 
 
virtual ~JRadiationInterface()
Virtual destructor. 
 
Implementation for calculation of inverse interaction length and shower energy. 
 
virtual double getInverseInteractionLength(const double E) const =0
Get inverse interaction length. 
 
Implementation for calculation of inverse interaction length and shower energy due to deep-inelastic ...
 
Deep-inelastic muon-nucleon scattering. 
 
The template JSharedPointer class can be used to share a pointer to an object. 
 
Auxiliary class for the calculation of the muon radiative cross sections. 
 
virtual double getThetaRMS(const double E, const double Es) const =0
Get RMS of scattering angle. 
 
virtual double getInverseInteractionLength(const double E) const override
Get inverse interaction length. 
 
double(JRadiation::* eloss)(const double) const 
energy loss method 
 
static const double NUCLEON_MOLAR_MASS
nucleon molar mass [g/mol] 
 
double getE(const double E) const 
Get shower energy. 
 
Auxiliary data structure for handling member methods of class JRadiation. 
 
virtual double getEnergyOfShower(const double E) const override
Get energy of shower. 
 
virtual double getThetaRMS(const double E, const double Es) const override
Get RMS of scattering angle. 
 
JDISSource(const int id, const double density)
Constructor. 
 
int getID() const 
Get radiation identifer.