Jpp  debug
the software that should make you happy
pre-calibration_D0ORCA015.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 D0ORCA015 (138) 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 138
18 set_array RUNS 15458-15466
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 D1ORCA011 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 3 taken from /pbs/throng/km3net/detectors/KMNeT_00000100_20220310.tripod.txt
58 # position of emitter 5 taken from https://elog.km3net.de/Operations+FR/8271 (RAB1v2)
59 # position of emitter 6 taken from https://elog.km3net.de/Operations+FR/8731 (RAB2)
60 3 +257097.050 +4743636.700 -2440.300
61 5 +257040.800 +4743317.600 -2439.900
62 6 +256807.500 +4743636.500 -2442.500
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 typeset -A TRIPODS
95 
96 get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(k)TRIPODS[*]})
97 get_tripods $TRIPOD TRIPODS; FIXED_TRIPODS=(${(k)TRIPODS[*]})
98 
99 cp -p $TRIPOD_INITIAL tripod.txt
100 
101 JEditTripod -f tripod.txt -r "${FIXED_TRIPODS}" -o tripod.txt
102 JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
103 JEditTripod -f tripod.txt -k "${FINAL_TRIPODS}" -o tripod.txt
104 
105 cat>acoustics_trigger_parameters.txt<<EOF
106 Q = 0.0;
107 TMax_s = 0.015;
108 numberOfHits = 200;
109 EOF
110 
111 cat>disable.txt<<EOF
112 # disable transmissions
113 # $6387779b-094a-4993-a6fa-11298e2fda0d$
114 # GIT 18.3.0-305-g4e82b04f4-D
115 # ROOT 6.30/02
116 # application JEditDisable
117 # command /data1/dejong/km3net/GIT/Jpp/out//Linux/bin//JEditDisable -f disable.log -o disable.log -a detector.datx -q -d 2 --!
118 # namespace KM3NET
119 # 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
120 1 809521500
121 2 808472260
122 2 808966194
123 2 808977319
124 3 808966194
125 3 813553576
126 5 806487231
127 5 808978694
128 6 817329086
129 EOF
130 
131 cat>transmitter.txt<<EOF
132 # Data from D0ORCA015_baseAcousticBeacon.csv
133  7 20 0 0.02 -0.97 0.71
134 EOF
135 
136 cat>hydrophone.txt<<EOF
137 # Data from D0ORCA015_hydrophones.csv
138  1 -1 -0.93 0.46 0.55
139  2 0 0.02 1.04 0.55
140  3 0 0.46 0.93 0.55
141  9 0 -0.75 -0.72 0.55
142  10 -1 0.11 1.04 0.55
143  12 0 0.46 0.93 0.55
144  4 0 0.20 1.02 0.55
145  18 0 0.61 0.84 0.55
146  28 0 0.69 0.78 0.55
147  11 0 -0.07 1.04 0.55
148  19 0 0.46 0.93 0.55
149  20 0 0.61 0.84 0.55
150  29 0 0.46 0.93 0.55
151  30 0 0.46 0.93 0.55
152  21 0 0.11 1.04 0.55
153 EOF
154 
155 JAcousticsEventBuilder.sh detector.datx $RUNS[*]
156 
157 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
158 
159 
160 # Run in WORKDIR
161 
162 cd $WORKDIR
163 
164 if [ ! $HOMEDIR -ef $WORKDIR ]; then
165  cp -p $HOMEDIR/$ACOUSTICS_DETECTOR $WORKDIR
166  cp -p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR
167  cp -p $HOMEDIR/${^ACOUSTICS_AUXS}.txt $WORKDIR
168  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
169 fi
170 
171 cat>script.txt<<EOF
172 
173 fix string $FIXED_STRINGS[*]
174 fix tripod $FIXED_TRIPODS[*]
175 
176 stage 1B ${SINGULARITY}1 0 100.0e-6 10.0 0 0.001 0.1
177 stage 2A ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2 0.5
178 stage 2C ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2
179 
180 initialise
181 
182 stage 2a ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2 0.5
183 stage 2c ${SINGULARITY}1 0 100.0e-6 10.0 20 0.2
184 stage 3a ${SINGULARITY}1 0 50.0e-6 10.0 20 0.2 0.5
185 stage 3c ${SINGULARITY}1 0 50.0e-6 10.0 20 0.2
186 EOF
187 
188 JSydney.sh detector.datx $INPUT_FILES[*] script.txt
189 
190 if [ ! $HOMEDIR -ef $WORKDIR ]; then
191  cp -vru * $HOMEDIR
192 fi