Jpp  17.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pre-calibration_00000116.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 D0ARCA020 (116) 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 12617-12622
19 set_variable MUL -1.21e-2
20 
21 if do_usage $*; then
22  usage "$script <detector file> <tripod file> [user directory]"\
23  "\nThe user directory should be specified when this script is submitted in a batch queue."\
24  "\nThe detector file and tripod file correspond to a pre-calibrated D0ARCA009 detector."
25 fi
26 
29 
30 case $# in
31  3) set_variable HOMEDIR $3;&
34  *) fatal "Wrong number of arguments."
35 esac
36 
37 set_variable TRIPOD_INITIAL tripod_initial.txt
38 set_variable DETECTOR_INITIAL detector_initial.datx
39 
40 
41 # Run in HOMEDIR
42 
43 mkdir -p $HOMEDIR
44 
45 cd $HOMEDIR
46 
47 if [[ ! -f $DETECTOR_INITIAL ]]; then
48 
49  JDetectorDB \
50  -D $DETECTOR_ID \
51  -r $RUNS[1] \
52  -V "" \
53  -WW \
54  -o $DETECTOR_INITIAL
55 fi
56 
57 if [[ ! -f $TRIPOD_INITIAL ]]; then
58 
59  cat>$TRIPOD_INITIAL<<EOF
60 # Very preliminary acoustic emitter positions from survey
61 3 +587848.700 +4016749.700 -3450.467
62 7 +587198.628 +4016228.693 -3433.306
63 8 +588257.896 +4017034.442 -3457.240
64 9 +587646.419 +4017109.956 -3456.980
65 10 +587763.722 +4017253.398 -3453.894
66 EOF
67 fi
68 
69 # Apply modifications.
70 
71 JEditDetector \
72  -a $DETECTOR_INITIAL \
73  -s "-1 mul $MUL" \
74  -o detector.datx
75 
76 eval `JPrintDetector -a $DETECTOR_INITIAL -O SUMMARY`; STRINGS_INITIAL=($STRINGS[*])
77 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
78 
79 JEditDetector -a detector.datx -r "$STRINGS[*]" -o detector.datx
80 JMergeDetector -a detector.datx -a $DETECTOR -o detector.datx
81 JEditDetector -a detector.datx -k "$STRINGS_INITIAL[*]" -o detector.datx
82 
83 FIXED_STRINGS=($STRINGS[*])
84 
85 cp -p $TRIPOD_INITIAL tripod.txt
86 
87 source JAcousticsToolkit.sh
88 
89 typeset -A TRIPODS_INITIAL
90 typeset -A TRIPODS
91 
92 get_tripods $TRIPOD_INITIAL TRIPODS_INITIAL
93 get_tripods $TRIPOD TRIPODS
94 
95 JEditTripod -f tripod.txt -D "${(k)TRIPODS}"
96 JMergeTripod -f tripod.txt -f $TRIPOD -o tripod.txt
97 JEditTripod -f tripod.txt -K "${(k)TRIPODS_INITIAL}"
98 
99 FIXED_TRIPODS=(${(k)TRIPODS[*]})
100 
103 
104 JAcoustics.sh $DETECTOR_ID
105 
106 cat>acoustics_trigger_parameters.txt<<EOF
107 Q = 0.0;
108 TMax_s = 0.020;
109 numberOfHits = 120;
110 EOF
111 
112 JAcousticsEventBuilder.sh $DETECTOR $RUNS[*]
113 
114 INPUT_FILES=(`ls KM3NeT_${(l:8::0::0:)DETECTOR_ID}_0*${^RUNS}_event.root`)
115 
116 
117 # Run in WORKDIR
118 
119 cd $WORKDIR
120 
121 if [ ! $HOMEDIR -ef $WORKDIR ]; then
122  cp -p $HOMEDIR/$DETECTOR $WORKDIR
123  cp -p $HOMEDIR/$TRIPOD $WORKDIR
124  cp -p $HOMEDIR/${^INPUT_FILES} $WORKDIR
125  cp -p $HOMEDIR/{acoustics_fit_parameters,acoustics_trigger_parameters,disable,hydrophone,mechanics,sound_velocity,tripod,waveform}.txt $WORKDIR
126 fi
127 
128 source $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.sh
129 
131 
133 
134 fixStrings $FIXED_STRINGS[*]
135 fixTripods $FIXED_TRIPODS[*]
136 
137 stage_1A >& stage-1A.log; timer_lap
138 
140 
141 stage_2 >& stage-2.log; timer_lap
142 stage_3 >& stage-3.log; timer_lap
143 
144 if [ ! $HOMEDIR -ef $WORKDIR ]; then
145  cp -vru * $HOMEDIR
146 fi
147 
148 clean
&set_variable TRIPOD
function stage_1A()
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
Q(UTCMax_s-UTCMin_s)-livetime_s
static const uint32_t K[64]
Definition: crypt.cc:77
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage $script< DEETECTOR_ID >< inputdetectorfile >< outputdetectorfile >< firstrun >< lastrun >< namesuffix >< outputdirectory >< datadirectory > fi DETECTOR_ID
Definition: SN_timecalib.sh:15
then JLigier sh continue fi cat
Definition: JDAQDriver.sh:51
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
data_type r[M+1]
Definition: JPolint.hh:758
then usage source $script nThis script contains auxiliary functions for the pre calibration of specific detectors nIt should be sourced by the detector specific scripts fi source JAcousticsToolkit sh set_variable WORKDIR pwd set_variable TMPDIR $WORKDIR typeset A TRIPODS typeset a CHI2 set_variable PRECISION set_variable EPSILON set_variable RADIUS_M function initialise()
clean for KEY in pcal ccal tripod transmitter hydrophone
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
function fixTripods()
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage source $script nToolkit for acoustics scripts fi function get_tripods()
then echo
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
then timer_start(JRandomTimesliceWriter-a ${DETECTOR}-o ${PIPE}-n ${NUMBER_OF_SLICES}-P ${PMT_FILE}-d ${DEBUG}-S ${SEED}-B"$BACKGROUND_HZ"-N"$RECYCLING"--!&&for((i=0;$i!=10;++i));do;echo 'EOF' > $PIPE;usleep 100000;done &&rm-f $PIPE)&JTimesliceReprocessor-a $
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
case $OPTION in clean clean
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 JConvertDetectorFormat a $DETECTOR[1] o
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:77
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DETECTOR_ID set_array RUNS set_variable MUL if do_usage *then usage $script< detector file >< tripodfile > nThe user directory should be specified when this script is submitted in a batch queue nThe detector file and tripod file correspond to a pre calibrated D0ARCA006 detector fi set_variable WORKDIR pwd set_variable HOMEDIR $WORKDIR case set_variable HOMEDIR
then JCalibrateToT a
Definition: JTuneHV.sh:116
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
*fatal Wrong number of arguments esac eval JPrintDetector a $DETECTOR O IDENTIFIER RUNS
then error Missing CDF files error Run
Definition: JSirene.sh:58
then display $WORKDIR
Definition: plot-Domino.sh:128
function stage_2()
then cp
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
function fixStrings()
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
function stage_3()
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
do JPrintDAQHeader f $INPUT_FILE d read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START set_variable OUTPUT_FILE $WORKDIR KM3NeT_
then usage $script< archive >< detectorfile >< run > nGet tripod