1 #ifndef __JSIRENE__JVISIBLEENERGYTOOLKIT__
2 #define __JSIRENE__JVISIBLEENERGYTOOLKIT__
31 namespace JPP {
using namespace JSIRENE; }
78 const double Leff = (intersection.first < 0.0 ?
79 min(Lmuon, intersection.second) :
80 min(Lmuon, intersection.second) - intersection.first);
85 const double dEc = Leff /
geanc();
95 return Evis * track.
dir / track.
dir.
len();
124 Vec Evis(0.0, 0.0, 0.0);
143 Vec Evis(0.0, 0.0, 0.0);
Data structure for vector in two dimensions.
static const double R_EARTH_KM
Geophysics constants.
Data structure for circle in two dimensions.
double geanc()
Equivalent muon track length per unit shower energy.
This file contains converted Fortran code from km3.
bool is_muon(const Trk &track)
Test whether given track is a (anti-)muon.
static const double MASS_MUON
muon mass [GeV]
static const JGeaneWater gWater
Function object for energy loss of muon in sea water.
virtual double getX(const double E0, const double E1) const override
Get distance traveled by muon.
static const JPythia pythia
Function object for relative light yield as a function of GEANT particle code.
intersection_type getIntersection(const JAxis3D &axis) const
Get intersection points of axis with cylinder.
double E
Energy [GeV] (either MC truth or reconstructed)
double getEb(const double E, const double dx) const
Get energy loss due to pair production and bremsstrahlung.
double len() const
Get length.
static const JPDB & getInstance()
Get particle data book.
bool is_neutrino(const Trk &track)
Test whether given track is a neutrino.
bool is_finalstate(const Trk &track)
Test whether given track corresponds to a final state particle.
The Vec class is a straightforward 3-d vector, which also works in pyroot.
double getKineticEnergy(const double E, const double m)
Get kinetic energy of particle with given mass.
JAxis3D getAxis(const Trk &track)
Get axis.
JPosition3D getPosition(const Vec &pos)
Get position.
int type
MC: particle type in PDG encoding.
Definition of particle types.
Function object for energy dependent energy loss of the muon.
Vec getVisibleEnergy(const Trk &track, const JCylinder3D &can)
Get the visible energy of a track.
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
std::vector< Trk > mc_trks
MC: list of MC truth tracks.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
double getSinThetaC()
Get average sine of Cherenkov angle of water corresponding to group velocity.