Jpp  master_rocky-37-gf0c5bc59d
the software that should make you happy
sound-V:fit.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 FORMULA "[0] + [1]*(sqrt(1.0 + 0.5*(x-[2])*(x-[2])/([3]*[3])) - 1.0)"
14 set_variable: FORMAT GRAPHICS_FORMAT gif
15 set_variable+ BATCH GRAPHICS_BATCH -B
16 
17 if do_usage $*; then
18  usage "$script"
19 fi
20 
21 if (( $# != 0 )); then
22  fatal "Wrong number of arguments."
23 fi
24 
25 set_variable VELOCITY_TXT $WORKDIR/soundv.txt
26 set_variable VELOCITY_ROOT $WORKDIR/soundv.root
27 
28 if [[ ! -f $VELOCITY_TXT ]]; then
29  fatal "No sound velocity file $VELOCITY_TXT."
30 fi
31 
32 JGraph \
33  -f $VELOCITY_TXT \
34  -o $VELOCITY_ROOT
35 
36 sort -gr -k 2,2 $VELOCITY_TXT | tail -1 | read X Y RMS
37 
38 JFit \
39  -f ${VELOCITY_ROOT}:\.\* \
40  -o $WORKDIR/fit.root \
41  -F "$FORMULA" \
42  -@"p0 = $Y" \
43  -@"p1 = 1.0" \
44  -@"p2 = $X" \
45  -@"p3 = 1.0" \
46  -d $DEBUG
47 
48 set_array P2 `JPrintFit -f $WORKDIR/fit.root:\.\* -@p2`
49 
50 printf "result %10.5f +/- %10.5f\n" $P2[1] $P2[2]
51 
52 mv $WORKDIR/fit.root $VELOCITY_ROOT
53 
54 JPlot1D \
55  -f $VELOCITY_ROOT:\.\* \
56  -> "V [m/s]" \
57  -\^ "#chi^{2}/NDF" \
58  -T "" \
59  -o $WORKDIR/velocity.$FORMAT $BATCH
60 
61 rm -f $VELOCITY_ROOT