Jpp  17.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mechanics:run.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 zmodload zsh/mathfunc
12 
13 set_variable: DEBUG ACOUSTICS_DEBUG 2
14 set_variable: WORKDIR ACOUSTICS_WORKDIR ./
15 set_variable: FIT ACOUSTICS_FIT 2
16 
17 if do_usage $*; then
18  usage "$script <string identifier> <detector file> (input file)+"
19 fi
20 
21 if (( $# < 3 )); then
22  fatal "Wrong number of arguments."
23 fi
24 
27 set_array INPUT_FILES $argv[3,-1]
28 
29 eval `JPrintDetector -a $DETECTOR -O IDENTIFIER`
30 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
31 eval `JPrintDetector -a $DETECTOR -O CAN`
32 
33 JAcoustics.sh $DETECTOR_ID
34 
35 CHECK_EXIT_CODE
36 
37 if [[ -z "${STRINGS[(r)$STRING]}" ]]; then
38  fatal "Invalid string $STRING; "\
39  "possible values: ${STRINGS[*]}"
40 fi
41 
42 let "AMAX = floor(1.0e+4 / $CAN_ZMAX_M) * 1.0e-4"
43 let "BMAX = floor(1.0e-1 * $CAN_ZMAX_M) * 1.0e+1"
44 let "DA = $AMAX * 2.0e-2"
45 let "DB = $BMAX * 2.0e-2"
46 
47 set_variable MECHANICS_TXT $WORKDIR/mechanicsab_${STRING}.txt
48 
50 mkdir -p $TMPDIR
51 
52 rm -f $TMPDIR/detector.detx
53 
54 JEditDetector \
55  -a $DETECTOR \
56  -k "$STRING" \
57  -o $TMPDIR/detector.detx
58 
59 for (( A = 0.0; $A <= $AMAX; A += $DA )); do
60  for (( B = 0.0; $B <= $BMAX; B += $DB )); do
61 
62  if (( $A*$B < 0.5 )); then
63 
64  rm -f $TMPDIR/katoomba.root
65 
66  JKatoomba \
67  -a $TMPDIR/detector.detx \
68  -f "$INPUT_FILES[*]" \
69  -o $TMPDIR/katoomba.root \
70  -T $WORKDIR/tripod.txt \
71  -V $WORKDIR/sound_velocity.txt \
72  -M $WORKDIR/mechanics.txt \
73  -M "$STRING $A $B" \
74  -@ $WORKDIR/acoustics_fit_parameters.txt \
75  -! $WORKDIR/disable.txt \
76  -F $FIT \
77  -u \
78  -d $DEBUG --!
79 
80  if (( `JPrintResult -f $TMPDIR/katoomba.root:chi2 -F "GetSumOfWeights"` > 1.0 )); then
81 
82  set_array RESULT `JPrintResult -f $TMPDIR/katoomba.root:chi2 -F "GetMean" -F "GetRMS / sqrt(GetSumOfWeights)"`
83 
84  printf "%7.5f %8.3f %7.3f %7.3f\n" $A $B $RESULT[*] >> $MECHANICS_TXT
85  else
86  error "No result."
87  fi
88  fi
89  done
90 done
91 
92 rm -rf $TMPDIR
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 No hydrophone data file $HYDROPHONE_TXT fi sort gr k
do $JPP JMEstimator M
Definition: JMEstimator.sh:37
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
then echo
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR if do_usage *then usage $script[(input file)+] fi set_variable DEBUG set_variable WORKDIR TMPDIR
do set_variable OUTPUT_DIRECTORY $WORKDIR T
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
then awk F
* usage
then JConvertDetectorFormat a $DETECTOR[1] o
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:77
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
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
then display $WORKDIR
Definition: plot-Domino.sh:128
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
double u[N+1]
Definition: JPolint.hh:755
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
script
Definition: JAcoustics.sh:2
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
then usage $script< archive >< detectorfile >< run > nGet tripod
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62