Jpp  18.2.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 
21 if do_usage $*; then
22  usage "$script <source directory> [user directory]"\
23  "\nThe source directory corresponds to a pre-calibrated D0ARCA009 detector."\
24  "\nThe user directory should be specified when this script is submitted in a batch queue."
25 fi
26 
29 
30 case $# in
32  1) set_variable DIR ${1:a};;
33  *) fatal "Wrong number of arguments."
34 esac
35 
36 
37 # post-calibration of input detector
38 
39 if [[ ! -d $WORKDIR/post-calibration ]]; then
40 
41  mkdir -p $WORKDIR/post-calibration
42 
43  pushd $WORKDIR/post-calibration
44 
45  $JPP_DIR/examples/JAcoustics/post-calibration_D0ARCA009.sh $DIR
46 
47  popd
48 fi
49 
50 set_variable DIR $WORKDIR/post-calibration
51 
53 set_variable TRIPOD $DIR/tripod.txt
54 set_variable DETECTOR_INITIAL detector_initial.datx
55 set_variable TRIPOD_INITIAL tripod_initial.txt
56 expand_array RUNS
57 
58 
59 # Run in HOMEDIR
60 
61 mkdir -p $HOMEDIR
62 
63 cd $HOMEDIR
64 
65 if [[ ! -f $DETECTOR_INITIAL ]]; then
66  JDetectorDB \
67  -D $DETECTOR_ID \
68  -r $RUNS[1] \
69  -V "" \
70  -WW \
71  -o $DETECTOR_INITIAL
72 fi
73 
74 if [[ ! -f $TRIPOD_INITIAL ]]; then
75 
76  cat>$TRIPOD_INITIAL<<EOF
77 # Very preliminary acoustic emitter positions from survey
78 7 +587198.628 +4016228.693 -3433.306
79 8 +588257.896 +4017034.442 -3457.240
80 9 +587646.419 +4017109.956 -3456.980
81 10 +587763.722 +4017253.398 -3453.894
82 12 +587600.000 +4017500.000 -3457.240
83 13 +587510.740 +4016869.160 -3451.700
84 EOF
85 fi
86 
87 JEditDetector \
88  -a $DETECTOR \
89  -r "19" \
90  -o detector_tmp.datx --!
91 
92 eval `JPrintDetector -a $DETECTOR_INITIAL -O SUMMARY`; FINAL_STRINGS=($STRINGS[*])
93 eval `JPrintDetector -a detector_tmp.datx -O SUMMARY`; FIXED_STRINGS=($STRINGS[*])
94 
95 if [[ ! -f detector.datx ]]; then
96 
97  # Apply modifications.
98 
99  JEditDetector \
100  -a $DETECTOR_INITIAL \
101  -s "-1 mul $MUL" \
102  -o detector.datx --!
103 
104  eval `JPrintDetector -a detector.datx -O SUMMARY`
105 
106  for STRING in ${STRINGS[*]}; do
107 
108  set_variable MODULE `getModule -a detector.datx -L "$STRING 0"`
109 
110  JEditDetector \
111  -a detector.datx \
112  -M "$MODULE setz -11.7" \
113  -o detector.datx --!
114  done
115 
116  JEditDetector -a detector.datx -r "$FIXED_STRINGS[*]" -o detector.datx --!
117  JMergeDetector -a detector.datx -a detector_tmp.datx -o detector.datx --!
118  JEditDetector -a detector.datx -k "$FINAL_STRINGS[*]" -o detector.datx --!
119 fi
120 
121 source JAcousticsToolkit.sh
122 
123 typeset -A TRIPODS
124 
125 get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(k)TRIPODS[*]})
126 get_tripods $TRIPOD TRIPODS; FIXED_TRIPODS=(${(k)TRIPODS[*]})
127 
128 if [[ ! -f tripod.txt ]]; then
129 
130  cp -p $TRIPOD_INITIAL tripod.txt
131 
132  JEditTripod -f tripod.txt -r "${FIXED_TRIPODS}" -o tripod.txt
133  JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
134  JEditTripod -f tripod.txt -k "${FINAL_TRIPODS}" -o tripod.txt
135 fi
136 
138 set_variable TRIPOD tripod.txt
139 
140 echo Fixed strings: $FIXED_STRINGS[*]
141 echo Fixed tripods: $FIXED_TRIPODS[*]
142 
143 JAcoustics.sh $DETECTOR_ID
144 
145 cat>acoustics_trigger_parameters.txt<<EOF
146 Q = 0.0;
147 TMax_s = 0.020;
148 numberOfHits = 200;
149 EOF
150 
151 JAcousticsEventBuilder.sh $DETECTOR $RUNS[*]
152 
153 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
154 
155 
156 # Run in WORKDIR
157 
158 cd $WORKDIR
159 
160 source $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.sh
161 
162 if [ ! $HOMEDIR -ef $WORKDIR ]; then
164  cp -p $HOMEDIR/${^ACOUSTICS_KEYS}.txt $WORKDIR
165  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
166 fi
167 
168 cat>script.txt<<EOF
169 
170 fix string $FIXED_STRINGS[*]
171 fix tripod $FIXED_TRIPODS[*]
172 
173 stage 0 0 2 250.0e-6 10.0 20 0.5
174 stage 1A 0 2 250.0e-6 10.0 20 0.5 1.0
175 stage 1B 0 2 250.0e-6 10.0 0 0.0005 0.2
176 stage 1C 2 0 250.0e-6 10.0 20 0.3
177 stage 2A 2 0 100.0e-6 10.0 20 0.2 0.4
178 stage 2C 2 0 100.0e-6 10.0 20 0.2
179 
180 initialise
181 
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 stage 3a 2 0 50.0e-6 10.0 20 0.2 0.4
185 stage 3c 2 0 50.0e-6 10.0 20 0.2
186 EOF
187 
188 JSydney.sh $DETECTOR $INPUT_FILES[*] script.txt
189 
190 if [ ! $HOMEDIR -ef $WORKDIR ]; then
191  cp -vru * $HOMEDIR
192 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 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:68
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 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
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
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DETECTOR_ID set_array RUNS if do_usage *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
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:77
$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
backup $HOMEDIR
fi set_variable FILENAME $WORKDIR
Definition: datalogs.sh:34
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
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
static JNullStream null
Null I/O stream.
Definition: JNullStream.hh:51
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
script
Definition: JAcoustics.sh:2
do echo Generating $dir eval D
Definition: JDrawLED.sh:53
then fatal Invalid tripod $TRIPOD
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number
esac done
Definition: JAddHDE.sh:21