LWplot_prof
changeset 5 509cc9966b68
parent 4 e681262d0fd7
child 6 4d48ffde2471
equal deleted inserted replaced
4:e681262d0fd7 5:509cc9966b68
     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"