#include <JNPE_t.hh>
|
| JMuonNPE_t (const std::string &fileDescriptor) |
| Constructor. More...
|
|
double | calculate (const double E, const double R, const double theta, const double phi) const |
| Get PDF. More...
|
|
Definition at line 24 of file JNPE_t.hh.
JMuonNPE_t::JMuonNPE_t |
( |
const std::string & |
fileDescriptor | ) |
|
|
inline |
Constructor.
The PDF file descriptor should contain the wild card character JPHYSICS::WILD_CARD.
- Parameters
-
fileDescriptor | PDF file descriptor |
Definition at line 39 of file JNPE_t.hh.
51 const int N =
sizeof(pdf_t) /
sizeof(pdf_t[0]);
55 double> JFunction1D_t;
56 typedef JPDFTable<JFunction1D_t, JNPEMaplist_t> JPDF_t;
59 const JNPE_t::JSupervisor supervisor(
new JNPE_t::JDefaultResult(
zero));
61 for (
int i = 0; i !=
N; ++i) {
66 const string file_name =
getFilename(fileDescriptor, type);
68 cout <<
"loading PDF from file " << file_name <<
"... " << flush;
70 pdf.load(file_name.c_str());
74 pdf.setExceptionHandler(supervisor);
86 cout <<
"adding PDFs... " << flush;
88 Y1[1].add(
Y1[0]);
Y1.erase(
Y1.begin());
89 YA[1].add(
YA[0]);
YA.erase(
YA.begin());
90 YB[1].add(
YB[0]);
YB.erase(
YB.begin());
std::vector< JNPE_t > Y1
light from muon
JPP::JNPETable< double, double, JNPEMaplist_t > JNPE_t
direct light from EM showers
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
static const JZero zero
Function object to assign zero value.
bool is_bremsstrahlung(const int pdf)
Test if given PDF type corresponds to Cherenkov light from Bremsstrahlung.
scattered light from muon
scattered light from delta-rays
scattered light from EM showers
direct light from delta-rays
std::vector< JNPE_t > YB
light from EM showers
std::vector< JNPE_t > YA
light from delta-rays
bool is_deltarays(const int pdf)
Test if given PDF type corresponds to Cherenkov light from delta-rays.
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any.
double JMuonNPE_t::calculate |
( |
const double |
E, |
|
|
const double |
R, |
|
|
const double |
theta, |
|
|
const double |
phi |
|
) |
| const |
|
inline |
Get PDF.
The orientation of the PMT should be defined according this documentation.
In this, the zenith and azimuth angles are limited to
.
- Parameters
-
E | muon energy at minimum distance of approach [GeV] |
R | minimum distance of approach [m] |
theta | PMT zenith angle [rad] |
phi | PMT azimuth angle [rad] |
- Returns
- number of photo-electrons
Definition at line 108 of file JNPE_t.hh.
115 const double y1 =
getNPE(
Y1,
R, theta, phi);
116 const double yA =
getNPE(
YA,
R, theta, phi);
117 const double yB =
getNPE(
YB,
R, theta, phi);
std::vector< JNPE_t > Y1
light from muon
static const double MASS_MUON
muon mass [GeV]
static const double INDEX_OF_REFRACTION_WATER
Average index of refraction of water corresponding to the group velocity.
static double getNPE(const std::vector< JNPE_t > &NPE, const double R, const double theta, const double phi)
Get number of photo-electrons.
then usage $script[distance] fi case set_variable R
std::vector< JNPE_t > YB
light from EM showers
std::vector< JNPE_t > YA
light from delta-rays
double getDeltaRaysFromMuon(const double E)
Equivalent EM-shower energy due to delta-rays per unit muon track length.
static double JMuonNPE_t::getNPE |
( |
const std::vector< JNPE_t > & |
NPE, |
|
|
const double |
R, |
|
|
const double |
theta, |
|
|
const double |
phi |
|
) |
| |
|
inlinestaticprivate |
Get number of photo-electrons.
- Parameters
-
NPE | NPE tables |
R | distance between muon and PMT [m] |
theta | zenith angle orientation PMT [rad] |
phi | azimuth angle orientation PMT [rad] |
- Returns
- number of photo-electrons
Definition at line 139 of file JNPE_t.hh.
151 if (R <= i->getXmax()) {
155 const double y =
get_value((*i)(std::max(
R, i->getXmin()), theta, phi));
161 catch(
const exception& error) {
162 cerr << error.what() << endl;
then usage $script[distance] fi case set_variable R
light from delta-rays
Definition at line 127 of file JNPE_t.hh.
light from EM showers
Definition at line 128 of file JNPE_t.hh.
The documentation for this struct was generated from the following file: