Jpp  master_rocky-43-ge265d140c
the software that should make you happy
pre-calibration_D0ORCA018.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 D0ORCA018 (148) 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 
17 set_variable DETECTOR_ID 148
18 set_array RUNS 16662-16668
19 set_variable: THREADS ACOUSTICS_THREADS 5
20 set_variable SINGULARITY -
21 set_variable WORKDIR `pwd`
22 set_variable HOMEDIR $WORKDIR
23 
24 if do_usage $*; then
25  usage "$script <source directory> [user directory]"\
26  "\nThe source directory corresponds to a pre-calibrated D1ORCA015 detector."\
27  "\nThe user directory should be specified when this script is submitted in a batch queue."
28 fi
29 
30 case $# in
31  2) set_variable HOMEDIR $2;&
32  1) set_variable DIR ${1:a};;
33  *) fatal "Wrong number of arguments."
34 esac
35 
36 source JAcousticsToolkit.sh
37 
38 set_variable DETECTOR $DIR/detector.datx
39 set_variable TRIPOD $DIR/tripod.txt
40 set_variable DETECTOR_INITIAL detector_initial.datx
41 set_variable TRIPOD_INITIAL tripod_initial.txt
42 expand_array RUNS
43 
44 
45 # Run in HOMEDIR
46 
47 mkdir -p $HOMEDIR
48 cd $HOMEDIR
49 
50 JDetectorDB \
51  -D $DETECTOR_ID \
52  -r $RUNS[1] \
53  -WW \
54  -o $DETECTOR_INITIAL
55 
56 cat>$TRIPOD_INITIAL<<EOF
57 # position of emitter 5 taken from https://elog.km3net.de/Operations+FR/8271 (RAB1v2)
58 # position of emitter 6 taken from https://elog.km3net.de/Operations+FR/8731 (RAB2)
59 # position of emitter 8 taken from https://elog.km3net.de/Operations+FR/9603 (RAB3)
60 5 +257040.800 +4743317.600 -2439.900
61 6 +256807.500 +4743636.500 -2442.500
62 8 +257118.100 +4743781.100 -2440.300
63 EOF
64 
65 JEditDetector \
66  -a $DETECTOR \
67  -o detector_tmp.datx --!
68 
69 eval `JPrintDetector -a $DETECTOR_INITIAL -O SUMMARY`; FINAL_STRINGS=($STRINGS[*])
70 eval `JPrintDetector -a detector_tmp.datx -O SUMMARY`; FIXED_STRINGS=($STRINGS[*])
71 
72 # Apply modifications.
73 
74 JEditDetector \
75  -a $DETECTOR_INITIAL \
76  -o detector.datx --!
77 
78 eval `JPrintDetector -a detector.datx -O SUMMARY`
79 
80 for STRING in ${STRINGS[*]}; do
81 
82  set_variable MODULE `getModule -a detector.datx -L "$STRING 0"`
83 
84  JEditDetector \
85  -a detector.datx \
86  -M "$MODULE setz -2.9" \
87  -o detector.datx --!
88 done
89 
90 JEditDetector -a detector.datx -r "$FIXED_STRINGS[*]" -o detector.datx --!
91 JMergeDetector -a detector.datx -a detector_tmp.datx -o detector.datx --!
92 JEditDetector -a detector.datx -k "$FINAL_STRINGS[*]" -o detector.datx --!
93 
94 JEditDetector \
95  -a detector.datx \
96  -M "817315169 swap 14 18" \
97  -o detector.datx --!
98 
99 REMOVE_STRINGS=(27 28)
100 
101 FINAL_STRINGS=(${FINAL_STRINGS:|REMOVE_STRINGS})
102 FIXED_STRINGS=(${FIXED_STRINGS:|REMOVE_STRINGS})
103 
104 JEditDetector -a detector.datx -r "$REMOVE_STRINGS[*]" -o detector.datx --!
105 
106 typeset -A TRIPODS
107 
108 get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(k)TRIPODS[*]})
109 get_tripods $TRIPOD TRIPODS; FIXED_TRIPODS=(${(k)TRIPODS[*]})
110 
111 cp -p $TRIPOD_INITIAL tripod.txt
112 
113 JEditTripod -f tripod.txt -r "${FIXED_TRIPODS}" -o tripod.txt
114 JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
115 JEditTripod -f tripod.txt -k "${FINAL_TRIPODS}" -o tripod.txt
116 
117 cat>acoustics_trigger_parameters.txt<<EOF
118 Q = 0.0;
119 TMax_s = 0.015;
120 numberOfHits = 210;
121 EOF
122 
123 cat>disable.txt<<EOF
124 # disable transmissions
125 # $20fac36a-495b-4b25-b814-9f297c3db1da$
126 # GIT 18.3.0-305-g4e82b04f4-D
127 # ROOT 6.30/02
128 # application JEditDisable
129 # command /data1/dejong/km3net/GIT/Jpp/out//Linux/bin//JEditDisable -f disable.log -o disable.log -a detector.datx -q -d 2 --!
130 # namespace KM3NET
131 # system Linux verster.lorentz.leidenuniv.nl 6.6.8-200.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 21 04:01:49 UTC 2023 x86_64
132 1 809521500
133 2 808472260
134 2 808966194
135 2 808977319
136 3 808966194
137 3 813553576
138 5 806487231
139 5 808978694
140 6 817329086
141 8 806483369
142 8 806487231
143 8 808964883
144 8 817338744
145 EOF
146 
147 cat>transmitter.txt<<EOF
148 # Data from D0ORCA018_baseAcousticBeacon.csv
149  9 27 0 -0.74 -0.64 0.71
150 EOF
151 
152 cat>hydrophone.txt<<EOF
153 # Data from D0ORCA018_hydrophones.csv
154  1 -1 -0.93 0.46 0.55
155  2 0 0.02 1.04 0.55
156  3 0 0.46 0.93 0.55
157  9 0 -0.75 -0.72 0.55
158  10 -1 0.11 1.04 0.55
159  12 0 0.46 0.93 0.55
160  4 0 0.20 1.02 0.55
161  18 0 0.61 0.84 0.55
162  28 0 0.69 0.78 0.55
163  11 0 -0.07 1.04 0.55
164  19 0 0.46 0.93 0.55
165  20 0 0.61 0.84 0.55
166  29 0 0.46 0.93 0.55
167  30 0 0.46 0.93 0.55
168  21 0 0.11 1.04 0.55
169  17 0 0.46 0.93 0.55
170  27 0 1.04 0.07 0.55
171  31 0 0.75 0.72 0.55
172 EOF
173 
174 JAcousticsEventBuilder.sh detector.datx $RUNS[*]
175 
176 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
177 
178 
179 # Run in WORKDIR
180 
181 cd $WORKDIR
182 
183 if [ ! $HOMEDIR -ef $WORKDIR ]; then
184  cp -p $HOMEDIR/$ACOUSTICS_DETECTOR $WORKDIR
185  cp -p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR
186  cp -p $HOMEDIR/${^ACOUSTICS_AUXS}.txt $WORKDIR
187  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
188 fi
189 
190 cat>script.txt<<EOF
191 
192 fix string $FIXED_STRINGS[*]
193 fix tripod $FIXED_TRIPODS[*]
194 
195 stage 1B ${SINGULARITY}1 0 100.0e-6 10.0 0 0.001 0.1
196 stage 2A ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2 0.5
197 stage 2C ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2
198 
199 initialise
200 
201 stage 2a ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2 0.5
202 stage 2c ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2
203 stage 3a ${SINGULARITY}1 0 50.0e-6 10.0 20 0.2 0.5
204 stage 3c ${SINGULARITY}1 0 50.0e-6 10.0 20 0.2
205 EOF
206 
207 JSydney.sh detector.datx $INPUT_FILES[*] script.txt
208 
209 if [ ! $HOMEDIR -ef $WORKDIR ]; then
210  cp -vru * $HOMEDIR
211 fi