.
#!/bin/ksh
#======================================================================
# L W P L O T _ P R O F _ 2 B E A M
# doc: Fri Oct 14 09:42:36 2011
# dlm: Mon Nov 3 22:01:45 2014
# (c) 2011 A.M. Thurnherr
# uE-Info: 13 59 NIL 0 0 72 2 2 4 NIL ofnI
#======================================================================
# HISTORY:
# May 15, 2013: - created from [LWplot_prof]
# Oct 30, 2103: - got rid of non-portable echo -e
# Nov 3, 2014: - adapted to updated layout of .prof file
# NOTES:
# - this version plots 2-beam solutions instead of final w
#--------------------------------------------------
# Usage
#--------------------------------------------------
USAGE="Usage: $0 <eps-file> [in-file]"
[ $# -eq 2 ] && exec <"$2" "$0" "$1"
[ $# -ne 1 ] && { echo $USAGE >&2; exit 1; }
eps_file="$1"
#--------------------------------------------------
# Read Header Data
#--------------------------------------------------
while [ -z "$fields" ]
do
read line
[ ! -t 1 ] && echo "$line"
[ -z "$out_basename" ] && out_basename=`expr -- "$line" : '#ANTS#PARAMS#.*out_basename{\([^}]*\)}`
[ -z "$run_label" ] && run_label=`expr -- "$line" : '#ANTS#PARAMS#.*run_label{\([^}]*\)}`
[ -z "$min_depth" ] && min_depth=`expr -- "$line" : '#ANTS#PARAMS#.*min_depth{\([^}]*\)}`
[ -z "$max_depth" ] && max_depth=`expr -- "$line" : '#ANTS#PARAMS#.*max_depth{\([^}]*\)}`
[ -z "$fields" ] && fields=`expr -- "$line" : '#ANTS#FIELDS# \(.*\)' | sed -e s/{//g -e s/}//g`
done
set -- $fields
[ "$1" = depth -a "$7" = dc_w12 -a "$8" = dc_w34 -a "$5" = dc_w.mad -a "$6" = dc_w.nsamp -a \
"${14}" = uc_w12 -a "${15}" = uc_w34 -a "${12}" = uc_w.mad -a "${13}" = uc_w.nsamp -a \
"${16}" = BT_w -a "${17}" = BT_w.mad -a "${18}" = BT_w.nsamp ] || {
echo "$0: file layout error" >&2
exit 1
}
#--------------------------------------------------
# Plot Data
#--------------------------------------------------
eps_file="$PWD/$eps_file" # make outfile name absolute (hopefully, it is not already...)
mkdir /tmp/$$ # GMT makes tmpfiles and is not reentrant
cd /tmp/$$
TMPFILE=/tmp/$$.LWplot_prof
if [ ! -t 1 ]
then
tee $TMPFILE
else
cat > $TMPFILE
fi
[ -f .gmtdefaults4 ] ||
gmtset PAPER_MEDIA letter+ \
LABEL_FONT_SIZE 14 ANNOT_FONT_SIZE_PRIMARY 14 \
WANT_EURO_FONT true \
PLOT_DEGREE_FORMAT ddd:mm:ssF
R=-R-0.07/0.35/$min_depth/$max_depth
R2=-R-200/200/$min_depth/$max_depth
U=-R0/1/0/1
X=-JX10/-10
# FRAME
{ echo 0 $min_depth; echo 0 $max_depth; } | psxy -P -K $R $X > "$eps_file"
{ echo 0.07 $min_depth; echo 0.07 $max_depth; echo 0.18 $max_depth; echo 0.18 $min_depth; } | psxy -O -K $R $X -L -G200 >> "$eps_file"
{ echo 50 $min_depth; echo 50 $max_depth; } | psxy -O -K $R2 $X >> "$eps_file"
{ echo 100 $min_depth; echo 100 $max_depth; } | psxy -O -K $R2 $X >> "$eps_file"
{ echo 150 $min_depth; echo 150 $max_depth; } | psxy -O -K $R2 $X >> "$eps_file"
# VERTICAL VELOCITIES (2-BEAM SOLUTIONS)
awk '{print $7, $1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4,coral,6_2:0 >> "$eps_file"
awk '{print $8, $1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4,coral,4_6:0 >> "$eps_file"
awk '{print $14,$1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4,SeaGreen,6_2:0 >> "$eps_file"
awk '{print $15,$1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4,SeaGreen,4_6:0 >> "$eps_file"
awk '{print $16,$1}' $TMPFILE | psxy -O -K -N -Mn $R $X -W4,black >> "$eps_file"
# MEAN ABSOLUTE DEVIATIONS (COMBINED SOLUTION)
awk '{print $5,$1, $4}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gcoral >> "$eps_file"
awk '{print $12,$1,$11}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -GSeaGreen >> "$eps_file"
awk '{print $17,$1,$20}' $TMPFILE | grep -vi nan | psxy -O -K -N $R $X -Sc0.1c -Gblack >> "$eps_file"
# NUMBER OF SAMPLES (COMBINED SOLUTION)
awk '{print $6,$1, $4}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/coral >> "$eps_file"
awk '{print $13,$1,$11}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/SeaGreen >> "$eps_file"
awk '{print $18,$1,$20}' $TMPFILE | sed '/nan/s/.*/nan/' | psxy -O -K -N -Mn $R2 $X -W1/black >> "$eps_file"
# LABELS
echo 0.02 0.02 12 0 0 TL $out_basename $run_label | pstext -O -K $U $X >> "$eps_file"
echo 0.6 0.98 12 0 0 BR m.a.d. | pstext -O -K $U $X >> "$eps_file"
# AXES
if [ 0 -eq `echo "($max_depth-$min_depth)>1000"|bc` ]
then
depth_tics=f10a100
else
depth_tics=f100a500
fi
psbasemap -O -K $R $X -Bf0.01a10-10.05:"Vertical Velocity [m/s] ":/$depth_tics:"Depth [m]":WeS >> "$eps_file"
psbasemap -O -K $R $X -Ba10-9.95S >> "$eps_file"
psbasemap -O -K $R $X -Ba10-9.85S >> "$eps_file"
psbasemap -O -K $R2 $X -Bf10a1000-950:" # of Samples":N >> "$eps_file"
psbasemap -O -K $R2 $X -Ba1000-900N >> "$eps_file"
psbasemap -O $R2 $X -Ba1000-850N >> "$eps_file"
rm $TMPFILE
fixbb "$eps_file"
cd "$PWD"
rm -rf /tmp/$$