Jpp  15.0.3
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JTunePMTThreshold.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author mdejong
4 #
5 script=${0##*/}
6 
7 # ------------------------------------------------------------------------------------------
8 #
9 # Script to run tune PMT thresholds.
10 #
11 # ------------------------------------------------------------------------------------------
12 
13 if [ -z $JPP_DIR ]; then
14  echo "Variable JPP_DIR undefined."
15  exit
16 fi
17 source $JPP_DIR/setenv.sh $JPP_DIR
18 
19 set_variable: JDAQ_TIMESLICE CALIBRATION_DAQ_TIMESLICE JDAQTimesliceL0
20 set_variable: WORKDIR CALIBRATION_WORKDIR ./
21 set_variable: TOT_RANGE CALIBRATION_TOT_RANGE "0 8"
22 set_variable: FRACTION CALIBRATION_FRACTION 0.5
23 set_variable: DEBUG CALIBRATION_DEBUG 2
24 
25 if do_usage $*; then
26  usage "$script <detector file> (input file)+ <PMT threshold file (JSon format)>"\
27  "\nAuxiliary script to tune PMT thresholds."
28 fi
29 
30 if (( $# < 3 )); then
31  fatal "Wrong number of arguments."
32 fi
33 
35 set_array INPUT_FILES $argv[2,-2]
36 set_variable JSON_FILE $argv[-1]
37 
38 JEditDetector \
39  -a $DETECTOR \
40  -P "-1 -1 set HIGH_RATE_VETO_DISABLE" \
41  -o $WORKDIR/detector.datx \
42  -d 1
43 
45 
47 
48 for INPUT_FILE in $INPUT_FILES[*]; do
49 
50  JPrintDAQHeader -f $INPUT_FILE -d 0 | read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START
51 
52  set_variable OUTPUT_FILE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${(l:8::0::0:)RUN}_monitor.root
53 
54  if [[ ! -f $OUTPUT_FILE ]]; then
55 
56  echo Processing $INPUT_FILE
57 
58  JCalibrateToT \
59  -a $DETECTOR \
60  -f $INPUT_FILE \
61  -o $OUTPUT_FILE \
62  -C $JDAQ_TIMESLICE \
63  -d $DEBUG
64  fi
65 
66  OUTPUT_FILES+=($OUTPUT_FILE)
67 
68 done
69 
70 JTunePMTThreshold \
71  -f "$OUTPUT_FILES" \
72  -x "$TOT_RANGE" \
73  -t $FRACTION \
74  -o $JSON_FILE \
75  -d $DEBUG --!
then usage $script< detector file >< detectorfile > nIf the range of floors is the first detector file is aligned to the second before the comparison nIn only modules within the given range of floors are used fi case set_variable RANGE $argv[3]
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR if do_usage *then usage for INPUT_FILE in $INPUT_FILES[*]
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary.
set_variable INPUT_FILE
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
then echo
static const double C
Physics constants.
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage $script< detector identifier > fi case set_variable DETECTOR_ID
Definition: JTDC.sh:11
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
then rm i $OUTPUT_FILE fi let RUN
then usage set_variable JSON_FILE $argv[-1] JEditDetector a $DETECTOR P set HIGH_RATE_VETO_DISABLE o $WORKDIR detector datx d set_variable DETECTOR $WORKDIR detector datx OUTPUT_FILES
set_variable NUMBER_OF_ITERATIONS set_variable EPSILON cat acoustics_fit_parameters txt<< EOF $CONFIGURATION[*]Nmin=3;sigma_s=100.0e-6;stdev=10.0;mestimator=0;fixStrings=0;EOF for STRING in $STRINGS[*];do#fit stretching and(z) position of given string set_variable DETECTOR_TMP ${TMPDIR:-/tmp}/detector_A.datx JEditDetector-a $DETECTOR-o $DETECTOR_TMP-r $STRING JEditDetector-a $DETECTOR-o $DETECTOR-k $STRING for MUL in 0.005 0.001;do DX_M=0.2 for((N=0;$N< $NUMBER_OF_ITERATIONS;++N));do CHI2[3]=$CHI2[1] fitPositionOfString $STRING Z $DX_M fitStretchingOfString $STRING $MUL if(($CHI2[3]-$CHI2[1]< $EPSILON));then break fi done if(($N >=$NUMBER_OF_ITERATIONS));then printf"warning: reached maximum number of iterations %d - converenge %7.3f\n"$N $(($CHI2[3]-$CHI2[1])) fi done JMergeDetector-a $DETECTOR-a $DETECTOR_TMP-o $DETECTOR rm-f $DETECTOR_TMP JConvertDetectorFormat-a $DETECTOR-o $DETECTOR-r-d 0 > &dev null done
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
Definition: JLegolas.sh:20
* usage
then JConvertDetectorFormat a $DETECTOR[1] o
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:73
&set_variable OUTPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then JCalibrateToT a
Definition: JTuneHV.sh:116
then set_variable MODULE getModule a $DETECTOR L $STRING $FLOOR JEditDetector a $DETECTOR M $MODULE add $X o $DETECTOR else echo No update of detector $DETECTOR
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
then display $WORKDIR
Definition: plot-Domino.sh:128
set_variable DETECTOR
do set_variable INPUT_FILE $WORKDIR KM3NeT_
do set_variable DETECTOR_TXT $WORKDIR detector
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:42
script
Definition: JAcoustics.sh:2
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62