Jpp  19.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JAcousticsTriggerProcessor.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 if [ -z $JPP_DIR ]; then
5  echo "Variable JPP_DIR undefined."
6  exit
7 fi
8 
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
10 
11 set_variable: DEBUG ACOUSTICS_DEBUG 2
12 set_variable: WORKDIR ACOUSTICS_WORKDIR ./
13 set_variable+ HYDROPHONE ACOUSTICS_HYDROPHONE -H $WORKDIR/hydrophone.txt
14 set_variable: QUALITY_FACTOR ACOUSTICS_QUALITYFACTOR 4.0e3
15 set_variable: VERSION ACOUSTICS_VERSION \*
16 set_variable: EFFICIENCY ACOUSTICS_EFFICIENCY 0.70
17 set_variable: V_SOUND ACOUSTICS_V_SOUND 1550.0 # m/s
18 
19 if do_usage $*; then
20  usage "$script <detector file> (run[-run])+"
21 fi
22 
23 if (( $# > 1 )); then
25  set_array RUNS $argv[2,-1]
26 else
27  fatal "Wrong number of arguments."
28 fi
29 
30 JCookie.sh
31 
32 eval `JPrintDetector -a $DETECTOR -O IDENTIFIER`
33 eval `JPrintDetector -a $DETECTOR -O CAN`
34 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
35 
36 source JAcousticsToolkit.sh
37 
38 expand_array RUNS
39 
40 # Locally install input files.
41 
42 for KEY in sound_velocity waveform; do
43 
44  if [[ ! -f $WORKDIR/${KEY}.txt ]]; then
45 
46  getFile.sh $JPP_ARCHIVE $DETECTOR_ID $RUNS[1] $KEY $VERSION $WORKDIR/${KEY}
47 
48  if (( $? != 0 )); then
49  fatal "Abort."
50  fi
51  fi
52 done
53 
54 for RUN in $RUNS[*]; do
55 
56  set_variable INPUT_FILE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${(l:8::0::0:)RUN}_toa.root
57  set_variable OUTPUT_FILE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${(l:8::0::0:)RUN}_event.root
58 
59  if [[ ! -f $INPUT_FILE ]]; then
60 
61  JToA \
62  -@ "detid = `getDetector -D $DETECTOR_ID`" \
63  -@ "minrun = $RUN" \
64  -@ "maxrun = $RUN" \
65  -@ "QUALITYFACTOR >= $QUALITY_FACTOR" \
66  -o $INPUT_FILE \
67  -d $DEBUG --!
68  fi
69 
70  if [[ ! -f $OUTPUT_FILE ]]; then
71 
72  set_variable TMAX_S `printf "%f" $(($CAN_DISTANCE_M / $V_SOUND))`
73  set_variable NUMBER_OF_HITS `printf "%d" $(($EFFICIENCY * $NUMBER_OF_MODULES))`
74 
76 
77  JAcousticsTriggerProcessor \
78  -a $DETECTOR \
79  -f $INPUT_FILE \
80  -o $OUTPUT_FILE \
81  -V $WORKDIR/sound_velocity.txt \
82  -W $WORKDIR/waveform.txt \
83  -@ "Q = $QUALITY_FACTOR" \
84  -@ "TMax_s = $TMAX_S" \
85  -@ "numberOfHits = $NUMBER_OF_HITS" \
86  ${HYDROPHONE} \
87  -d $DEBUG --!
88 
89  timer_stop
90  timer_print
91  fi
92 done
*fatal Wrong number of arguments esac source JAcousticsToolkit sh mkdir p $WORKDIR post calibration pushd $WORKDIR post calibration post calibration_D0ARCA021 sh $DIR popd set_variable DETECTOR $WORKDIR post calibration detector datx set_variable TRIPOD $WORKDIR post calibration tripod txt set_variable DETECTOR_INITIAL detector_initial datx expand_array RUNS mkdir p $HOMEDIR cd $HOMEDIR JDetectorDB D $DETECTOR_ID r $RUNS[1] V WW o $DETECTOR_INITIAL JEditDetector a $DETECTOR r o detector_tmp datx!eval JPrintDetector a $DETECTOR_INITIAL O SUMMARY
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
Definition: JDataMonitor.sh:24
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
then usage else fatal Wrong number of arguments fi JCookie sh eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O CAN eval JPrintDetector a $DETECTOR O SUMMARY source JAcousticsToolkit sh expand_array RUNS for KEY in sound_velocity waveform
static const double H
Planck constant [eV s].
exit
Definition: JPizza.sh:36
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
then
Definition: datalogs.sh:34
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then fatal Missing detector file $DETECTOR fi eval JPrintDetector a $DETECTOR O IDENTIFIER RUNS
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 $
TFile * getFile(const std::string &file_name, const std::string &option="exist")
Get TFile pointer corresponding to give file name.
then JCalibrateToT a
Definition: JTuneHV.sh:107
&set_variable VERSION
Definition: getLs.sh:21
then rm i $OUTPUT_FILE fi let RUN
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
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 JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonStart.sh:47
then usage $script[energy[distance[z of PMT]]] fi case set_variable z
Definition: JDrawPDF.sh:45
do set_variable INPUT_FILE $WORKDIR KM3NeT_
then fatal The output file must have the wildcard in the e g root fi 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 JHobbit a $DETECTOR f
static const JPBS_t HYDROPHONE(4, 5)
PBS of hydrophone
then fatal Abort fi fi done for RUN in $RUNS[*]
then eval ls $DIR $ID $TYPE _
Definition: getArchive.sh:108
set_variable DETECTOR
then echo
Definition: JQAQC.sh:92
then getFile sh $ARCHIVE $DETECTOR_ID $RUN positions $VERSION
Definition: JSpark.sh:47
then getFile sh $JPP_ARCHIVE $DETECTOR_ID $RUNS[1] $KEY $VERSION $WORKDIR
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62