1 #!/bin/sh |
1 #!/bin/sh |
2 #====================================================================== |
2 #====================================================================== |
3 # L W P L O T _ P R O F |
3 # L W P L O T _ P R O F |
4 # doc: Fri Oct 14 09:42:36 2011 |
4 # doc: Fri Oct 14 09:42:36 2011 |
5 # dlm: Sat Oct 15 23:20:48 2011 |
5 # dlm: Tue Oct 18 16:25:43 2011 |
6 # (c) 2011 A.M. Thurnherr |
6 # (c) 2011 A.M. Thurnherr |
7 # uE-Info: 96 50 NIL 0 0 72 2 2 4 NIL ofnI |
7 # uE-Info: 78 0 NIL 0 0 72 2 2 4 NIL ofnI |
8 #====================================================================== |
8 #====================================================================== |
9 |
9 |
10 # HISTORY: |
10 # HISTORY: |
11 # Oct 14, 2011: - created |
11 # Oct 14, 2011: - created |
12 # Oct 15, 2011: - added nsamp |
12 # Oct 15, 2011: - added nsamp |
|
13 # Oct 16, 2011: - made depth tic-marks range dependent |
|
14 # Oct 17, 2011: - turned into filter |
|
15 # - added %run_label |
13 |
16 |
14 #-------------------------------------------------- |
17 #-------------------------------------------------- |
15 # Usage |
18 # Usage |
16 #-------------------------------------------------- |
19 #-------------------------------------------------- |
17 |
20 |
18 USAGE="Usage: $0 [-s)ave data to <file>] [in-file]" |
21 USAGE="Usage: $0 <eps-file> [in-file]" |
19 |
22 [ $# -eq 2 ] && exec <"$2" "$0" "$1" |
20 args=`getopt s: $*` |
23 [ $# -ne 1 ] && { echo $USAGE >&2; exit 1; } |
21 [ $? != 0 ] && { |
|
22 echo $USAGE >&2 |
|
23 exit 1 |
|
24 } |
|
25 |
|
26 set -- $args |
|
27 for opt |
|
28 do |
|
29 case "$opt" in |
|
30 -s) opt_s="$2"; |
|
31 rm -f "$opt_s"; |
|
32 shift; shift;; |
|
33 --) shift; break;; |
|
34 esac |
|
35 done |
|
36 |
|
37 [ $# -gt 1 ] && { |
|
38 echo $USAGE >&2 |
|
39 exit 1 |
|
40 } |
|
41 |
|
42 if [ $# -eq 1 ] |
|
43 then |
|
44 if [ -n "$opt_s" ] |
|
45 then |
|
46 exec <$1 $0 -s $opt_s |
|
47 else |
|
48 exec <$1 $0 |
|
49 fi |
|
50 fi |
|
51 |
24 |
52 #-------------------------------------------------- |
25 #-------------------------------------------------- |
53 # Read Header Data |
26 # Read Header Data |
54 #-------------------------------------------------- |
27 #-------------------------------------------------- |
55 |
28 |
56 TMPFILE=/tmp/$$.LWplot_prof |
|
57 |
|
58 [ -f .gmtdefaults4 ] || |
|
59 gmtset PAPER_MEDIA letter+ \ |
|
60 LABEL_FONT_SIZE 14 ANNOT_FONT_SIZE_PRIMARY 14 \ |
|
61 WANT_EURO_FONT true \ |
|
62 PLOT_DEGREE_FORMAT ddd:mm:ssF |
|
63 |
|
64 [ -n "$opt_s" ] && rm -f "$opt_s" |
|
65 |
|
66 while [ -z "$fields" ] |
29 while [ -z "$fields" ] |
67 do |
30 do |
68 read line |
31 read line |
69 [ -n "$opt_s" ] && echo "$line" >> "$opt_s" |
32 [ ! -t 1 ] && echo "$line" |
70 [ -z "$out_basename" ] && out_basename=`expr -- "$line" : '#ANTS#PARAMS#.*out_basename{\([^}]*\)}` |
33 [ -z "$out_basename" ] && out_basename=`expr -- "$line" : '#ANTS#PARAMS#.*out_basename{\([^}]*\)}` |
|
34 [ -z "$run_label" ] && run_label=`expr -- "$line" : '#ANTS#PARAMS#.*run_label{\([^}]*\)}` |
71 [ -z "$min_depth" ] && min_depth=`expr -- "$line" : '#ANTS#PARAMS#.*min_depth{\([^}]*\)}` |
35 [ -z "$min_depth" ] && min_depth=`expr -- "$line" : '#ANTS#PARAMS#.*min_depth{\([^}]*\)}` |
72 [ -z "$max_depth" ] && max_depth=`expr -- "$line" : '#ANTS#PARAMS#.*max_depth{\([^}]*\)}` |
36 [ -z "$max_depth" ] && max_depth=`expr -- "$line" : '#ANTS#PARAMS#.*max_depth{\([^}]*\)}` |
73 [ -z "$fields" ] && fields=`expr -- "$line" : '#ANTS#FIELDS# \(.*\)' | sed -e s/{//g -e s/}//g` |
37 [ -z "$fields" ] && fields=`expr -- "$line" : '#ANTS#FIELDS# \(.*\)' | sed -e s/{//g -e s/}//g` |
74 done |
38 done |
75 |
39 |
76 if [ -n "$opt_s" ] |
40 TMPFILE=/tmp/$$.LWplot_prof |
|
41 if [ ! -t 1 ] |
77 then |
42 then |
78 tee -a "$opt_s" > $TMPFILE |
43 tee $TMPFILE |
79 else |
44 else |
80 cat > $TMPFILE |
45 cat > $TMPFILE |
81 fi |
46 fi |
82 |
47 |
83 #-------------------------------------------------- |
48 #-------------------------------------------------- |
84 # Plot Data |
49 # Plot Data |
85 #-------------------------------------------------- |
50 #-------------------------------------------------- |
86 |
51 |
|
52 [ -f .gmtdefaults4 ] || |
|
53 gmtset PAPER_MEDIA letter+ \ |
|
54 LABEL_FONT_SIZE 14 ANNOT_FONT_SIZE_PRIMARY 14 \ |
|
55 WANT_EURO_FONT true \ |
|
56 PLOT_DEGREE_FORMAT ddd:mm:ssF |
|
57 |
87 R=-R-0.07/0.35/$min_depth/$max_depth |
58 R=-R-0.07/0.35/$min_depth/$max_depth |
88 R2=-R-200/200/$min_depth/$max_depth |
59 R2=-R-200/200/$min_depth/$max_depth |
89 U=-R0/1/0/1 |
60 U=-R0/1/0/1 |
90 X=-JX10/-10 |
61 X=-JX10/-10 |
91 |
62 |
92 echo -e "0 $min_depth\n0 $max_depth" | psxy -P -K $R $X |
63 echo -e "0 $min_depth\n0 $max_depth" | psxy -P -K $R $X > "$1" |
93 echo -e "0.07 $min_depth\n0.07 $max_depth\n0.18 $max_depth\n0.18 $min_depth" | psxy -O -K $R $X -L -G200 |
64 echo -e "0.07 $min_depth\n0.07 $max_depth\n0.18 $max_depth\n0.18 $min_depth" | psxy -O -K $R $X -L -G200 >> "$1" |
94 echo -e "50 $min_depth\n50 $max_depth" | psxy -O -K $R2 $X |
65 echo -e "50 $min_depth\n50 $max_depth" | psxy -O -K $R2 $X >> "$1" |
95 echo -e "100 $min_depth\n100 $max_depth" | psxy -O -K $R2 $X |
66 echo -e "100 $min_depth\n100 $max_depth" | psxy -O -K $R2 $X >> "$1" |
96 echo -e "150 $min_depth\n150 $max_depth" | psxy -O -K $R2 $X |
67 echo -e "150 $min_depth\n150 $max_depth" | psxy -O -K $R2 $X >> "$1" |
97 |
68 |
98 awk '{print $4, $1}' $TMPFILE | grep -vi nan | psxy -O -K $R $X -W4/red |
69 awk '{print $4, $1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4/coral >> "$1" |
99 awk '{print $9, $1}' $TMPFILE | grep -vi nan | psxy -O -K $R $X -W4/blue |
70 awk '{print $9, $1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4/SeaGreen >> "$1" |
100 awk '{print $16,$1}' $TMPFILE | grep -vi nan | psxy -O -K $R $X -W4/green |
71 awk '{print $16,$1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4/black >> "$1" |
101 |
72 |
102 awk '{print $5,$1, $4}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gred |
73 awk '{print $5,$1, $4}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gcoral >> "$1" |
103 awk '{print $10,$1, $9}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gblue |
74 awk '{print $10,$1, $9}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -GSeaGreen >> "$1" |
104 awk '{print $17,$1,$16}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Ggreen |
75 awk '{print $17,$1,$16}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gblack >> "$1" |
105 |
76 |
106 awk '{print $6,$1, $4}' $TMPFILE | grep -vi nan | psxy -O -K -N $R2 $X -W1/red |
77 awk '{print $6,$1,$4}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/coral >> "$1" |
107 awk '{print $11,$1, $9}' $TMPFILE | grep -vi nan | psxy -O -K -N $R2 $X -W1/blue |
78 awk '{print $11,$1,$9}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/SeaGreen >> "$1" |
108 awk '{print $18,$1,$16}' $TMPFILE | grep -vi nan | psxy -O -K -N $R2 $X -W1/green |
79 awk '{print $18,$1,$16}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/black >> "$1" |
109 |
80 |
110 echo 0.02 0.02 12 0 0 TL $out_basename | pstext -O -K $U $X |
81 echo 0.02 0.02 12 0 0 TL $out_basename $run_label | pstext -O -K $U $X >> "$1" |
111 echo 0.6 0.98 12 0 0 BR m.a.d. | pstext -O -K $U $X |
82 echo 0.6 0.98 12 0 0 BR m.a.d. | pstext -O -K $U $X >> "$1" |
112 |
83 |
113 psbasemap -O -K $R $X -Bf0.01a0.1:"Vertical Velocity [m/s]":/f10a100:"Depth [m]":WeS |
84 if [ 0 -eq `echo "($max_depth-$min_depth)>1000"|bc` ] |
114 psbasemap -O -K $R2 $X -Bf10a1000-950:" # of Samples":N |
85 then |
115 psbasemap -O -K $R2 $X -Ba1000-900N |
86 depth_tics=f10a100 |
116 psbasemap -O $R2 $X -Ba1000-850N |
87 else |
|
88 depth_tics=f100a500 |
|
89 fi |
|
90 |
|
91 psbasemap -O -K $R $X -Bf0.01a10-10.05:"Vertical Velocity [m/s] ":/$depth_tics:"Depth [m]":WeS >> "$1" |
|
92 psbasemap -O -K $R $X -Ba10-9.95S >> "$1" |
|
93 psbasemap -O -K $R $X -Ba10-9.85S >> "$1" |
|
94 |
|
95 psbasemap -O -K $R2 $X -Bf10a1000-950:" # of Samples":N >> "$1" |
|
96 psbasemap -O -K $R2 $X -Ba1000-900N >> "$1" |
|
97 psbasemap -O $R2 $X -Ba1000-850N >> "$1" |
117 |
98 |
118 rm $TMPFILE |
99 rm $TMPFILE |
|
100 fixbb "$1" |