Jpp  17.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pre-calibration_00000094.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 # --------------------------------------------------------------------------------------------
5 #
6 # Steering script for the global-fit-of-global-fits procedure of the D0ARCA009 (94) detector.
7 #
8 # --------------------------------------------------------------------------------------------
9 
10 if [ -z $JPP_DIR ]; then
11  echo "Variable JPP_DIR undefined."
12  exit
13 fi
14 
15 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
16 
18 set_array RUNS 10360 10361 10363 10370 10390 10391 10411 10412
19 set_variable MUL -1.21e-2
20 
21 if do_usage $*; then
22  usage "$script <detector file> <tripod file> [user directory]"\
23  "\nThe user directory should be specified when this script is submitted in a batch queue."\
24  "\nThe detector file and tripod file correspond to a pre-calibrated D0ARCA006 detector."
25 fi
26 
29 
30 case $# in
31  3) set_variable HOMEDIR $3;&
34  *) fatal "Wrong number of arguments."
35 esac
36 
37 set_variable TRIPOD_INITIAL tripod_initial.txt
38 set_variable DETECTOR_INITIAL detector_initial.datx
39 
40 
41 # Run in HOMEDIR
42 
43 mkdir -p $HOMEDIR
44 
45 cd $HOMEDIR
46 
47 if [[ ! -f $DETECTOR_INITIAL ]]; then
48 
49  JDetectorDB \
50  -D $DETECTOR_ID \
51  -@ "tcal = A03209429" \
52  -@ "pcal = A03209525" \
53  -@ "rcal = A03209511" \
54  -V "" \
55  -WW \
56  -o $DETECTOR_INITIAL
57 fi
58 
59 if [[ ! -f $TRIPOD_INITIAL ]]; then
60 
61  cat>$TRIPOD_INITIAL<<EOF
62 # Very preliminary acoustic emitter positions from survey
63 3 +587848.700 +4016749.700 -3450.467
64 4 +587657.170 +4017113.940 -3459.600
65 5 +587906.500 +4017094.300 -3459.600
66 6 +586939.550 +4017018.130 -3447.020
67 7 +587198.628 +4016228.693 -3433.306
68 EOF
69 fi
70 
71 # Apply modifications.
72 
73 JEditDetector \
74  -a $DETECTOR_INITIAL \
75  -s "-1 mul $MUL" \
76  -o detector.datx
77 
78 eval `JPrintDetector -a $DETECTOR_INITIAL -O SUMMARY`; STRINGS_INITIAL=($STRINGS[*])
79 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
80 
81 JEditDetector -a detector.datx -r "$STRINGS[*]" -o detector.datx
82 JMergeDetector -a detector.datx -a $DETECTOR -o detector.datx
83 JEditDetector -a detector.datx -k "$STRINGS_INITIAL[*]" -o detector.datx
84 
85 FIXED_STRINGS=($STRINGS[*])
86 
87 cp -p $TRIPOD_INITIAL tripod.txt
88 
89 source JAcousticsToolkit.sh
90 
91 typeset -A TRIPODS_INITIAL
92 typeset -A TRIPODS
93 
94 get_tripods $TRIPOD_INITIAL TRIPODS_INITIAL
95 get_tripods $TRIPOD TRIPODS
96 
97 JEditTripod -f tripod.txt -D "${(k)TRIPODS}"
98 JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
99 JEditTripod -f tripod.txt -K "${(k)TRIPODS_INITIAL}"
100 
101 FIXED_TRIPODS=(${(k)TRIPODS[*]})
102 
105 
106 JAcoustics.sh $DETECTOR_ID
107 
108 cat>acoustics_trigger_parameters.txt<<EOF
109 Q = 0.0;
110 TMax_s = 0.020;
111 numberOfHits = 120;
112 EOF
113 
114 JAcousticsEventBuilder.sh $DETECTOR $RUNS[*]
115 
116 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
117 
118 
119 # Run in WORKDIR
120 
121 cd $WORKDIR
122 
123 if [ ! $HOMEDIR -ef $WORKDIR ]; then
124  cp -p $HOMEDIR/$DETECTOR $WORKDIR
125  cp -p $HOMEDIR/$TRIPOD $WORKDIR
126  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
127  cp -p $HOMEDIR/{acoustics_fit_parameters,acoustics_trigger_parameters,disable,hydrophone,mechanics,sound_velocity,tripod,waveform}.txt $WORKDIR
128 fi
129 
130 source $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.sh
131 
133 
135 
136 fixStrings $FIXED_STRINGS[*]
137 fixTripods $FIXED_TRIPODS[*]
138 
139 stage_1A >& stage-1A.log; timer_lap
140 
142 
143 stage_2 >& stage-2.log; timer_lap
144 stage_3 >& stage-3.log; timer_lap
145 
146 if [ ! $HOMEDIR -ef $WORKDIR ]; then
147  cp -vru * $HOMEDIR
148 fi
149 
150 clean
&set_variable TRIPOD
function stage_1A()
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
Q(UTCMax_s-UTCMin_s)-livetime_s
static const uint32_t K[64]
Definition: crypt.cc:77
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage $script< DEETECTOR_ID >< inputdetectorfile >< outputdetectorfile >< firstrun >< lastrun >< namesuffix >< outputdirectory >< datadirectory > fi DETECTOR_ID
Definition: SN_timecalib.sh:15
then JLigier sh continue fi cat
Definition: JDAQDriver.sh:51
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
data_type r[M+1]
Definition: JPolint.hh:758
then usage source $script nThis script contains auxiliary functions for the pre calibration of specific detectors nIt should be sourced by the detector specific scripts fi source JAcousticsToolkit sh set_variable WORKDIR pwd set_variable TMPDIR $WORKDIR typeset A TRIPODS typeset a CHI2 set_variable PRECISION set_variable EPSILON set_variable RADIUS_M function initialise()
clean for KEY in pcal ccal tripod transmitter hydrophone
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
function fixTripods()
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage source $script nToolkit for acoustics scripts fi function get_tripods()
then echo
do JCanberra a $DETECTOR f $INPUT_FILE o $WORKDIR canberra[${EMITTER}\] root T $WORKDIR tripod txt V $WORKDIR sound_velocity txt M $WORKDIR mechanics txt H $WORKDIR hydrophone txt E $EMITTER $DISABLE d $DEBUG!done kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR for STRING in $STRINGS[*]
Definition: JCanberra.sh:68
then timer_start(JRandomTimesliceWriter-a ${DETECTOR}-o ${PIPE}-n ${NUMBER_OF_SLICES}-P ${PMT_FILE}-d ${DEBUG}-S ${SEED}-B"$BACKGROUND_HZ"-N"$RECYCLING"--!&&for((i=0;$i!=10;++i));do;echo 'EOF' > $PIPE;usleep 100000;done &&rm-f $PIPE)&JTimesliceReprocessor-a $
then fatal Detector file should be binary format fi eval JPrintDetector a $DETECTOR O IDENTIFIER typeset a INPUT_FILES for RANGE in $RUNS[*]
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
case $OPTION in clean clean
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
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:77
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DETECTOR_ID set_array RUNS set_variable MUL if do_usage *then usage $script< detector file >< tripodfile > nThe user directory should be specified when this script is submitted in a batch queue nThe detector file and tripod file correspond to a pre calibrated D0ARCA006 detector fi set_variable WORKDIR pwd set_variable HOMEDIR $WORKDIR case set_variable HOMEDIR
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
*fatal Wrong number of arguments esac eval JPrintDetector a $DETECTOR O IDENTIFIER RUNS
then error Missing CDF files error Run
Definition: JSirene.sh:58
then display $WORKDIR
Definition: plot-Domino.sh:128
function stage_2()
then cp
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
function fixStrings()
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 JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
function stage_3()
script
Definition: JAcoustics.sh:2
do echo Generating $dir eval D
Definition: JDrawLED.sh:53
then fatal Invalid tripod $TRIPOD
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
do JPrintDAQHeader f $INPUT_FILE d read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START set_variable OUTPUT_FILE $WORKDIR KM3NeT_
then usage $script< archive >< detectorfile >< run > nGet tripod