Jpp  18.3.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pre-calibration_D0ARCA021.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 D0ARCA021 (133) 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 13290-13297
19 set_variable: MUL ACOUSTICS_MUL -1.21e-2
20 set_variable: THREADS ACOUSTICS_THREADS 5
21 
22 if do_usage $*; then
23  usage "$script <source directory> [user directory]"\
24  "\nThe source directory corresponds to a pre-calibrated D0ARCA009 detector."\
25  "\nThe user directory should be specified when this script is submitted in a batch queue."
26 fi
27 
30 
31 case $# in
33  1) set_variable DIR ${1:a};;
34  *) fatal "Wrong number of arguments."
35 esac
36 
37 
38 # post-calibration of input detector
39 
40 if [[ ! -d $WORKDIR/post-calibration ]]; then
41 
42  mkdir -p $WORKDIR/post-calibration
43 
44  pushd $WORKDIR/post-calibration
45 
46  $JPP_DIR/examples/JAcoustics/post-calibration_D0ARCA009.sh $DIR
47 
48  popd
49 fi
50 
51 set_variable DIR $WORKDIR/post-calibration
52 
54 set_variable TRIPOD $DIR/tripod.txt
55 set_variable DETECTOR_INITIAL detector_initial.datx
56 set_variable TRIPOD_INITIAL tripod_initial.txt
57 expand_array RUNS
58 
59 
60 # Run in HOMEDIR
61 
62 mkdir -p $HOMEDIR
63 
64 cd $HOMEDIR
65 
66 if [[ ! -f $DETECTOR_INITIAL ]]; then
67 
68  JDetectorDB \
69  -D $DETECTOR_ID \
70  -r $RUNS[1] \
71  -V "" \
72  -WW \
73  -o $DETECTOR_INITIAL
74 fi
75 
76 if [[ ! -f $TRIPOD_INITIAL ]]; then
77 
78  cat>$TRIPOD_INITIAL<<EOF
79 # Very preliminary acoustic emitter positions from survey
80 7 +587198.628 +4016228.693 -3433.306
81 8 +588257.896 +4017034.442 -3457.240
82 9 +587646.419 +4017109.956 -3456.980
83 10 +587763.722 +4017253.398 -3453.894
84 12 +587600.000 +4017500.000 -3457.240
85 13 +587510.740 +4016869.160 -3451.700
86 EOF
87 fi
88 
89 JEditDetector \
90  -a $DETECTOR \
91  -r "19" \
92  -o detector_tmp.datx --!
93 
94 eval `JPrintDetector -a $DETECTOR_INITIAL -O SUMMARY`; FINAL_STRINGS=($STRINGS[*])
95 eval `JPrintDetector -a detector_tmp.datx -O SUMMARY`; FIXED_STRINGS=($STRINGS[*])
96 
97 if [[ ! -f detector.datx ]]; then
98 
99  # Apply modifications.
100 
101  JEditDetector \
102  -a $DETECTOR_INITIAL \
103  -s "-1 mul $MUL" \
104  -o detector.datx --!
105 
106  eval `JPrintDetector -a detector.datx -O SUMMARY`
107 
108  for STRING in ${STRINGS[*]}; do
109 
110  set_variable MODULE `getModule -a detector.datx -L "$STRING 0"`
111 
112  JEditDetector \
113  -a detector.datx \
114  -M "$MODULE setz -11.7" \
115  -o detector.datx --!
116  done
117 
118  JEditDetector -a detector.datx -r "$FIXED_STRINGS[*]" -o detector.datx --!
119  JMergeDetector -a detector.datx -a detector_tmp.datx -o detector.datx --!
120  JEditDetector -a detector.datx -k "$FINAL_STRINGS[*]" -o detector.datx --!
121 
122  JEditDetector \
123  -a detector.datx \
124  -M "817802210 lower $((-60.0 * $PI / 180.0 ))" \
125  -o detector.datx --!
126 fi
127 
128 source JAcousticsToolkit.sh
129 
130 typeset -A TRIPODS
131 
132 get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(k)TRIPODS[*]})
133 get_tripods $TRIPOD TRIPODS; FIXED_TRIPODS=(${(k)TRIPODS[*]})
134 
135 if [[ ! -f tripod.txt ]]; then
136 
137  cp -p $TRIPOD_INITIAL tripod.txt
138 
139  JEditTripod -f tripod.txt -r "${FIXED_TRIPODS}" -o tripod.txt
140  JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
141  JEditTripod -f tripod.txt -k "${FINAL_TRIPODS}" -o tripod.txt
142 fi
143 
145 set_variable TRIPOD tripod.txt
146 
147 echo Fixed strings: $FIXED_STRINGS[*]
148 echo Fixed tripods: $FIXED_TRIPODS[*]
149 
150 JAcoustics.sh $DETECTOR_ID
151 
152 cat>acoustics_trigger_parameters.txt<<EOF
153 Q = 0.0;
154 TMax_s = 0.020;
155 numberOfHits = 300;
156 EOF
157 
158 JAcousticsEventBuilder.sh $DETECTOR $RUNS[*]
159 
160 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
161 
162 
163 # Run in WORKDIR
164 
165 cd $WORKDIR
166 
167 if [ ! $HOMEDIR -ef $WORKDIR ]; then
168  cp -p $HOMEDIR/$DETECTOR $WORKDIR
169  cp -p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR
170  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
171 fi
172 
173 cat>script.txt<<EOF
174 
175 fix string $FIXED_STRINGS[*]
176 fix tripod $FIXED_TRIPODS[*]
177 
178 stage 0 0 2 250.0e-6 10.0 20 0.5
179 stage 1A 0 2 250.0e-6 10.0 20 0.5 1.0
180 stage 1B 0 2 250.0e-6 10.0 0 0.0005 0.2
181 stage 1C 2 0 250.0e-6 10.0 20 0.3
182 stage 2A 2 0 100.0e-6 10.0 20 0.2 0.4
183 stage 2C 2 0 100.0e-6 10.0 20 0.2
184 
185 initialise
186 
187 stage 2a 2 0 100.0e-6 10.0 20 0.2 0.4
188 stage 2c 2 0 100.0e-6 10.0 20 0.2
189 stage 3a 2 0 50.0e-6 10.0 20 0.2 0.4
190 stage 3c 2 0 50.0e-6 10.0 20 0.2
191 EOF
192 
193 JSydney.sh $DETECTOR $INPUT_FILES[*] script.txt
194 
195 if [ ! $HOMEDIR -ef $WORKDIR ]; then
196  cp -vru * $HOMEDIR
197 fi
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
Q(UTCMax_s-UTCMin_s)-livetime_s
$WORKDIR stage
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
then JLigier sh continue fi cat
Definition: JDAQDriver.sh:51
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O SUMMARY JPrintDAQHeader f $INPUT_FILE read A DAQ_HEADER set_variable DETECTOR_ID
Definition: JSquid.sh:28
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
exit
Definition: JPizza.sh:36
then fatal Number of tripods
Definition: JFootprint.sh:45
then usage $script< detector specific pre-calibration script >< option > nAuxiliary script to make scan of pre stretching of detector strings(see JEditDetector)." "\nPossible options
data_type r[M+1]
Definition: JPolint.hh:868
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
&set_variable RUNS
Definition: datalogs.sh:21
then
Definition: datalogs.sh:31
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable TRIPOD $argv[2] set_array INPUT_FILES $argv[3,-1] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O CAN JAcoustics sh $DETECTOR_ID
Definition: footprint.sh:38
then fatal Wrong number of arguments fi DIR
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
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:70
static const double C
Physics constants.
do JPrintDAQHeader f $INPUT_FILE d read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START set_variable OUTPUT_FILE $WORKDIR KM3NeT_
then fatal Detector file should be binary format fi eval JPrintDetector a $DETECTOR O IDENTIFIER typeset a INPUT_FILES expand_array RUNS for RUN 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
then JCalibrateToT a
Definition: JTuneHV.sh:113
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[*]
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
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:79
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
set_array INPUT_FILES argv[2,$((START_INDEX_STRING-1))] set_array STRINGS
fi set_variable FILENAME $WORKDIR
Definition: datalogs.sh:34
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
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:48
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 error Missing CDF files error Run
Definition: JSirene.sh:58
then cp
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
then echo
Definition: JQAQC.sh:90
then usage $script[user directory] nThe user directory should be specified when this script is submitted in a batch queue fi set_variable WORKDIR pwd set_variable HOMEDIR $WORKDIR case set_variable HOMEDIR
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
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
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number
esac done
Definition: JAddHDE.sh:21