52 int main(
int argc, 
char **argv)
 
   66     JParser<> zap(
"Program to create interpolation tables of the PDF of the arrival time of the Cherenkov light from a muon.");
 
   87   catch(
const exception &error) {
 
   88     FATAL(error.what() << endl);
 
   92   typedef double (
JPDF::*fcn)(
const double,
 
  131   NOTICE(
"building multi-dimensional function object <" << 
function << 
">... " << flush);
 
  134   const double kmin = pdf_c.
getKappa(wmax);
 
  135   const double kmax = pdf_c.
getKappa(wmin);
 
  136   const double cmin = pdf_c.
getKmin (wmax);
 
  147   if (zmap.find(
function) == zmap.end()) {
 
  148     FATAL(
"illegal function specifier" << endl);
 
  151   fcn                      f           = zmap[
function].first;    
 
  152   JFunction3DTransformer_t transformer = zmap[
function].second;   
 
  219     for (
double buffer[] = { -0.01, -0.005, 0.0, 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.007, 0.008, 0.009, -1.0 }, *
x = buffer; *
x != -1.0; ++
x) {
 
  224     for (
double x = 0.01; 
x < 0.1; 
x += 0.0025) {
 
  229     for (
double x = 0.10; 
x < 0.5; 
x += 0.010) {
 
  321   const double grid  =  5.0;                        
 
  323   const double alpha = 2.0 * sqrt(1.0 - cos(grid * 
PI / 180.0));  
 
  328     const double R_m = *
r;
 
  330     const unsigned int number_of_theta_points = max(2u, (
unsigned int) (180.0/(1.4 * grid)));
 
  332     for (
double theta = 0.0; theta <= 
PI + 
epsilon; theta += 
PI/number_of_theta_points) {
 
  334       const unsigned int number_of_phi_points = max(2u, (
unsigned int) (
PI * sin(theta) / alpha));
 
  336       for (
double phi = 0.0; phi <= 
PI + 
epsilon; phi += 
PI/number_of_phi_points) {
 
  338         JFunction1D_t& 
f1 = pdf[R_m][theta][phi];
 
  340         const JArray_t 
array(R_m, theta, phi);
 
  342         double t_old = transformer.getXn(
array, *X.begin());
 
  347           const double t = transformer.getXn(
array, *
x);
 
  348           const double y = (pdf_c.*f)(R_m, theta, phi, t);
 
  353               WARNING(
"dt < 0 " << *
x << 
' ' << R_m << 
' ' << t << 
' ' << 
y << endl);
 
  376   pdf.transform(transformer);
 
  390     FATAL(error.what() << endl);
 
Properties of Antares PMT and deep-sea water.
 
double getAngularAcceptance(const double x)
Angular acceptence of PMT.
 
Various implementations of functional maps.
 
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.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
Properties of KM3NeT PMT and deep-sea water.
 
Utility class to parse command line options.
 
double getKappa(const double lambda) const
Get effective index of refraction for muon light.
 
double getKmin(const double lambda) const
Get smallest index of refraction for Bremsstrahlung light (i.e. point at which dt/dz = 0).
 
Multi-dimensional PDF table for arrival time of Cherenkov light.
 
Probability Density Functions of the time response of a PMT with an implementation of the JAbstractPM...
 
Low level interface for the calculation of the Probability Density Functions (PDFs) of the arrival ti...
 
double getAmbientPressure()
Get ambient pressure.
 
double getScatteringProbability(const double x)
Function to describe light scattering in water.
 
double getPhotocathodeArea()
Get photo-cathode area of PMT.
 
const JPolynome f1(1.0, 2.0, 3.0)
Function.
 
double getQE(const double R, const double mu)
Get QE for given ratio of hit probabilities and expectation value of the number of photo-electrons.
 
static const double PI
Mathematical constants.
 
double getMinimalWavelength()
Get minimal wavelength for PDF evaluations.
 
@ SCATTERED_LIGHT_FROM_DELTARAYS
scattered light from delta-rays
 
@ DIRECT_LIGHT_FROM_EMSHOWERS
direct light from EM showers
 
@ SCATTERED_LIGHT_FROM_EMSHOWERS
scattered light from EM showers
 
@ SCATTERED_LIGHT_FROM_MUON
scattered light from muon
 
@ DIRECT_LIGHT_FROM_DELTARAYS
direct light from delta-rays
 
@ DIRECT_LIGHT_FROM_MUON
direct light from muon
 
double getMaximalWavelength()
Get maximal wavelength for PDF evaluations.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
 
Empty structure for specification of parser element that is not initialised (i.e. does require input)...