46int main(
int argc,
char **argv)
66 JParser<> zap(
"Auxiliary program to draw PDF of Cherenkov light from EM-shower including shower profile.");
70 zap[
'e'] =
make_field(epsilon,
"precision for integration") = 1.0e-10;
73 zap[
'E'] =
make_field(E,
"shower energy [GeV]");
75 zap[
'c'] =
make_field(cd,
"cosine emission angle");
76 zap[
'D'] =
make_field(dir,
"(theta, phi) of PMT [rad]");
83 catch(
const exception &error) {
84 FATAL(error.what() << endl);
89 pdf(NAMESPACE::getPhotocathodeArea(),
91 NAMESPACE::getAngularAcceptance,
94 NAMESPACE::getScatteringProbability,
95 NAMESPACE::getAmbientPressure(),
96 getMinimalWavelength(),
97 getMaximalWavelength(),
104 for (
double dt; cin >> dt; ) {
106 for (vector<int>::const_iterator F = function.begin(); F != function.end(); ++F) {
108 cout << setw(2) << *F <<
' '
110 <<
FIXED(5,1) << D <<
' '
111 <<
FIXED(5,2) << cd <<
' '
114 <<
FIXED(5,1) << dt <<
' '
125 const double t0 = D * getIndexOfRefraction() / C;
130 if (function.size() == 1 && function[0] == DIRECT_LIGHT_FROM_EMSHOWER) {
148 for (
int i = 1; i <= h0.GetNbinsX(); ++i) {
150 const double dt = h0.GetBinCenter(i) - t0;
154 for (vector<int>::const_iterator F = function.begin(); F != function.end(); ++F) {
158 h0.SetBinContent(i, value);
174 catch(
const exception&) {}
Properties of Antares PMT and deep-sea water.
int main(int argc, char **argv)
double getAbsorptionLength(const double lambda)
double getScatteringLength(const double lambda)
double absorptionLengthFactor
Scaling of absorption and scattering length.
double scatteringLengthFactor
General purpose messaging.
#define DEBUG(A)
Message macros.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
I/O formatting auxiliaries.
Properties of KM3NeT PMT and deep-sea water.
Data structure for angles in three dimensions.
double getTheta() const
Get theta angle.
double getPhi() const
Get phi angle.
Utility class to parse command line options.
Probability Density Functions of the time response of a PMT with an implementation of the JAbstractPM...
double getLightFromEMshower(const int type, const double D_m, const double cd, const double theta, const double phi, const double t_ns) const
Probability density function for light from EM-shower.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary data structure for floating point format specification.
Auxiliary data structure for floating point format specification.