45     JParser<> zap(
"Demonstration program to plot RMS of arrival time of first hit as a function of the minimal distance of approach of a muon to the PMT.");
 
   49     zap[
'E'] = 
make_field(E_GeV,     
"muon energy [GeV]");
 
   50     zap[
'R'] = 
make_field(R_Hz,      
"background rate [Hz]");
 
   51     zap[
'D'] = 
make_field(dir,       
"(theta, phi) of PMT [rad]");
 
   56   catch(
const exception &error) {
 
   57     FATAL(error.what() << endl);
 
   61   typedef JSplineFunction1S_t                                     JFunction1D_t;
 
   62   typedef JMAPLIST<JPolint1FunctionalMap,
 
   63                    JPolint1FunctionalGridMap,
 
   64                    JPolint1FunctionalGridMap>::maplist            JMapList_t;
 
   65   typedef JPDFTable<JFunction1D_t, JMapList_t>                    JPDF_t;
 
   67   JFunction1D_t::JSupervisor supervisor(
new JFunction1D_t::JDefaultResult(
zero));
 
   74   const int  N = 
sizeof(pdf_t) / 
sizeof(pdf_t[0]);
 
   78   for (
int i = 0; i != 
N; ++i) {
 
   82       const string file_name = 
getFilename(inputFile, pdf_t[i]);
 
   84       NOTICE(
"loading input from file " << file_name << 
"... " << flush);
 
   86       pdf[i].load(file_name.c_str());
 
   90     catch(
const JException& error) {
 
   91       FATAL(error.what() << endl);
 
   94     pdf[i].setExceptionHandler(supervisor);
 
  122     os << 
"t[" << *i << 
"]";
 
  124     buffer.push_back(
new TH1D(os.str().c_str(), NULL, 5000, -250.0, +250.0));
 
  133     x.push_back(*i - 0.5*(*j-*i));
 
  135     for (; j != 
X.end(); ++i, ++
j) 
 
  136       x.push_back(0.5*(*i+*j));
 
  141     x.push_back(*j + 0.5*(*j-*i));
 
  144   TH1D rms(
"rms", NULL, 
X.size(), &
x[0]);
 
  147   JFunction1D_t::result_type p[4];
 
  153   const double Tmin = -250.0;     
 
  154   const double Tmax = +250.0;     
 
  158   for (
size_t i = 0; i != 
X.size(); ++i) {
 
  161     const double R = 
X[i];
 
  163     JSplineFunction1S_t zsp;
 
  165     for (
int j = 1; j <= h->GetNbinsX(); ++
j) {
 
  167       const double t1 = h->GetBinCenter(j);
 
  173       for (
int k = 0; 
k != 4; ++
k) {
 
  174         p[
k] = pdf[
k](
R, dir.getTheta(), dir.getPhi(), t1);
 
  183         R_Hz * 1e-9 * (t1   - Tmin);
 
  191         R_Hz * 1e-9 * (Tmax - Tmin);
 
  201       const double W = 
exp(-v) * y / (1.0 - 
exp(-V));
 
  207       h->SetBinContent(j,W);
 
  214     const double sig = 
result.getFWHM() * 0.5 / sqrt(2.0*
log(2.0));
 
  218     NOTICE(
"integral " << R << 
' ' << 
result.getIntegral() << endl);
 
  221   const float w = 1.0 / (float) 
n;
 
  224     timer.print(cout, 
w);
 
Utility class to parse command line options. 
 
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
 
direct light from EM showers 
 
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
 
static const JZero zero
Function object to assign zero value. 
 
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
 
scattered light from muon 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
scattered light from EM showers 
 
then JCookie sh JDataQuality D $DETECTOR_ID R
 
no fit printf nominal n $STRING awk v X
 
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any. 
 
then cat $TRIPOD_INITIAL<< EOF1 256877.5 4743716.7-2438.42 256815.5 4743395.0-2435.53 257096.2 4743636.0-2439.5EOFfiif[[!-f $DETECTOR]];then JEditDetector-a $DETECTOR_INITIAL-s"-1 addz -6.9"-o $DETECTOR--!eval`JPrintDetector-a $DETECTOR-O SUMMARY`for STRING in ${STRINGS[*]};do set_variable MODULE`getModule-a $DETECTOR-L"$STRING 0"`JEditDetector-a $DETECTOR-M"$MODULE setz -2.9"-o $DETECTOR--!donefiif[[!-f $TRIPOD]];then cp-p $TRIPOD_INITIAL $TRIPODfiJAcoustics.sh $DETECTOR_IDcat > acoustics_trigger_parameters txt<< EOFQ=0.0;TMax_s=0.020;numberOfHits=90;EOFJAcousticsEventBuilder.sh $DETECTOR $RUNS[*]INPUT_FILES=(`ls KM3NeT_ ${(l:8::0::0:) DETECTOR_ID}_0 *${^RUNS}_event.root`) cd $WORKDIRif[!$HOMEDIR-ef $WORKDIR];then cp-p $HOMEDIR/$DETECTOR $WORKDIR cp-p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR cp-p $HOMEDIR/${^INPUT_FILES}$WORKDIRfisource $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.shtimer_startinitialise stage_b 1 0 100.0e-6 0.002 0.1 0 > &stage log
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` source JAcousticsToolkit.sh typeset -A TRIPODS get_tripods $WORKDIR/tripod.txt TRIPODS XMEAN