4# --------------------------------------------------------------------------------------------
6# Steering script for the back-propagation procedure of the D0ARCA028 (160) detector from the
7# D0ARCA030 (232) detector.
9# --------------------------------------------------------------------------------------------
11if [ -z $JPP_DIR ]; then
12 echo "Variable JPP_DIR undefined."
16source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
18set_variable DETECTOR_ID 160
19set_array RUNS 18826-18833
20set_variable: THREADS ACOUSTICS_THREADS 8
21set_variable: CALIBRATION_ARCHIVE CALIBRATION_ARCHIVE
22set_variable WORKDIR `pwd`
23set_variable HOMEDIR $WORKDIR
28 "\nRequires variable CALLIBRATION_ARCHIVE to be set for the user."
31source JAcousticsToolkit.sh
33set_variable DETECTOR detector.datx
34set_variable TRIPOD_INITIAL tripod_initial.txt
35set_variable TRIPOD_ABSOLUTE tripod_absolute.txt
36set_variable TRIPOD tripod.txt
44# retrieve D0ARCA030 detector and tripod from calibration archive
45getFile.sh $CALIBRATION_ARCHIVE 232 1 detector A_2.1.0 $WORKDIR/D0ARCA030_A_2.1.0
46getFile.sh $CALIBRATION_ARCHIVE 232 1 tripod $WORKDIR/tripod_D0ARCA030
48cp -p $WORKDIR/D0ARCA030_A_2.1.0.datx $WORKDIR/detector.datx
50# define initial tripod for D0ARCA028 (to be optimised in the back-propagation procedure)
51cat>$TRIPOD_INITIAL<<EOF
52# Data from D0ARCA028_tripods.csv
537 +587198.628 +4016228.693 -3433.306
548 +588257.896 +4017034.442 -3457.240
559 +587646.419 +4017109.956 -3456.980
5610 +587763.722 +4017253.398 -3453.894
5713 +587510.740 +4016869.160 -3451.700
60# Create TRIPOD for D0ARCA028 to be optimised in the back-propagation procedure.
64 -f $WORKDIR/tripod_D0ARCA030.txt \
68get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(k)TRIPODS[*]})
69get_tripods $TRIPOD_ABSOLUTE TRIPODS; FIXED_TRIPODS=(${(k)TRIPODS[*]})
71cp -p $TRIPOD_INITIAL tripod.txt
73JEditTripod -f tripod.txt -r "${FIXED_TRIPODS}" -o tripod.txt
74JMergeTripod -f tripod.txt -f $TRIPOD_ABSOLUTE -o tripod.txt
75JEditTripod -f tripod.txt -k "${FINAL_TRIPODS}" -o tripod.txt
77# Edit detector file to remove string from D0ARCA030 not present in D0ARCA028
81 -@ "id=$DETECTOR_ID" \
84# Create auxiliary files for D0ARCA028 back-propagation procedure.
86# waveform identifier; emitter identifier
107cat>acoustics_trigger_parameters.txt<<EOF
114# disable transmissions
115# -85c0-42be-8923-2b56d90c4ebf$
116# GIT test-rotations-old-309-g7eec518ad-D
118# application JEditDisable
119# command /pbs/home/m/martin/Jpp_withVP/out//Linux/bin//JEditDisable -f disable.log -o disable.log -a detector.datx -q -d 2 --!
121# system Linux ccwslurm2038 5.14.0-570.42.2.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Sep 8 12:15:13 EDT 2025 x86_64
231cat>transmitter.txt<<EOF
232# Data from D0ARCA028_baseAcousticBeacon.csv
23315 32 0 -0.38 -0.67 0.48
23517 18 0 0.12 0.76 0.48
238cat>hydrophone.txt<<EOF
239# Data from D0ARCA028_hydrophones.csv
240 9 -1 -0.57 -0.42 0.57
243 13 0 -0.68 -0.37 0.62
245 19 0 -0.16 -0.76 0.62
248 23 0 -0.59 -0.49 0.62
249 24 0 -0.68 -0.37 0.62
252 25 0 -0.74 -0.22 0.62
253 30 0 -0.08 -0.77 0.62
263 14 0 -0.20 -0.75 0.62
264 15 0 -0.75 -0.20 0.62
266 18 0 -0.22 -0.74 0.62
270# Build acoustic events for D0ARCA028 pre-calibration runs
271JAcousticsEventBuilder.sh $DETECTOR $RUNS[*]
273INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
279if [ ! $HOMEDIR -ef $WORKDIR ]; then
280 cp -p $HOMEDIR/$ACOUSTICS_DETECTOR $WORKDIR
281 cp -p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR
282 cp -p $HOMEDIR/${^ACOUSTICS_AUXS}.txt $WORKDIR
283 cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
288# Do not fix string 9 and 31 as they were dead for D0ARCA030 but are active for D0ARCA028
289fix string 1 3 4 5 6 7 8 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 32
292stage 1A -3 2 250.0e-6 10.0 20 0.5 0.5
293stage 2A -3 2 100.0e-6 10.0 20 0.2 0.2
294stage 3A -3 2 50.0e-6 10.0 20 0.2 0.2
295stage 4A 3 2 50.0e-6 10.0 20 0.2 0.2
299JSydney.sh $DETECTOR $INPUT_FILES[*] script.txt
301# Apply creep correction to D0ARCA028 detector file
302JKatoomba.sh $DETECTOR $INPUT_FILES[*] katoomba.root
309if [ ! $HOMEDIR -ef $WORKDIR ]; then