4 if [ -z $JPP_DIR ]; then
5 echo "Variable JPP_DIR undefined."
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
12 usage "$script <input detector file> <output detector file> <first run> <last run> <name suffix> <output directory> <data directory>"
23 eval `JPrintDetector -a $DETECTOR_IN -O IDENTIFIER`
27 JConvertDetectorFormat -a $DETECTOR_IN -o $DETECTOR_OUT
29 #--- remove the base modules
31 eval `JPrintDetector -a $DETECTOR_OUT -O SUMMARY`
34 for STRING in $STRINGS; do
36 JEditDetector -a $DETECTOR_OUT -o $DETECTOR_OUT -D "$STRING 0"
40 #--- sort modules 1-18
41 JEditDetector -a $DETECTOR_OUT -o $DETECTOR_OUT -O 2
43 #--- remove here malfunctioning strings if present in the detector file
45 #JEditDetector -a $DETECTOR_OUT -o $DETECTOR_OUT -r 18
46 #JEditDetector -a $DETECTOR_OUT -o $DETECTOR_OUT -r 19
48 #--- loop over data files
50 rm $OUTDIR/${EXT}.root
52 for RUN_IN in `seq $RUNFIRST $RUNSECOND`; do
54 RUN=$(printf %08d $RUN_IN)
55 INFILE=$DATADIR/KM3NeT_000000${DETECTOR_ID}_${RUN}.root
57 #---- process JMonitorL1dt
59 $JPP_DIR/examples/JCalibrate/JMonitorL1dt -a $DETECTOR_OUT -C JDAQTimesliceSN -f $INFILE -o $OUTDIR/temp_$RUN_IN.root
61 if [ -f "$OUTDIR/${EXT}.root" ]
63 echo "JMonitorL1dt output added to previous results"
64 hadd $OUTDIR/sum.root $OUTDIR/temp_$RUN_IN.root $OUTDIR/${EXT}.root
65 mv $OUTDIR/sum.root $OUTDIR/${EXT}.root
67 echo "No previous output from JMonitorL1dt found, new output file created"
68 cp $OUTDIR/temp_$RUN_IN.root $OUTDIR/${EXT}.root
74 #--- determine time offsets between DU pairs (for 1-8 neighboured levels)
76 rm -i $OUTDIR/${EXT}_*.txt
77 for nei in 2 3 4 5 6 7 8; do
78 $JPP_DIR/examples/JCalibrate/JOffset_extract -a $DETECTOR_OUT -f $OUTDIR/${EXT}.root -m 0 -n $nei > $OUTDIR/${EXT}_$nei.txt
80 cat $OUTDIR/${EXT}_*.txt > $OUTDIR/${EXT}.txt
81 #--- evaluate best inter-DU offsets
83 # The argument "-m 5.5" needs to be tuned to the amount of data used, for 30 hours of ARCA a value of 5.5 was found reasonable,
84 # for 6 hours of ORCA a value of 20 is suggested
85 # Some tuning will be required, it should be a high enough value to remove 'noise' correlations and a low enough to keep enough correlations
86 # Possibly some further cuts on the quality of the correlations need to be applied
87 file=$OUTDIR/offsets_${EXT}.txt
88 $JPP_DIR/examples/JCalibrate/JMatrix_sol -a $DETECTOR_OUT -f $OUTDIR/${EXT}.txt -m 5.5 -r 0 > $file
90 #--- adapt detector file
96 JEditDetector -a $DETECTOR_OUT -S "$a add $b" -o $DETECTOR_OUT --!