.
#!/bin/ksh
#======================================================================
# L W P L O T _ C O R R
# doc: Sat Oct 15 13:42:50 2011
# dlm: Thu May 16 15:23:26 2013
# (c) 2011 A.M. Thurnherr
# uE-Info: 82 26 NIL 0 0 72 2 2 4 NIL ofnI
#======================================================================
# HISTORY:
# Oct 19, 2011: - adapted from [LWplot_residuals]
# Oct 24, 2011: - LADCP_bin_length => ADCP_bin_length
# Nov 14, 2011: - added file layout check
# Mar 12, 2012: - sh -> ksh as this does not work with /bin/sh on MacOSX 10.6.4
# Apr 12, 2012: - made re-entrant
# May 16, 2013: - adapted to file layout change
#--------------------------------------------------
# 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 "$min_ens" ] && min_ens=`expr -- "$line" : '#ANTS#PARAMS#.*min_ens{\([^}]*\)}`
[ -z "$max_ens" ] && max_ens=`expr -- "$line" : '#ANTS#PARAMS#.*max_ens{\([^}]*\)}`
[ -z "$ADCP_bin_length" ] && ADCP_bin_length=`expr -- "$line" : '#ANTS#PARAMS#.*ADCP_bin_length{\([^}]*\)}`
[ -z "$fields" ] && fields=`expr -- "$line" : '#ANTS#FIELDS# \(.*\)' | sed -e s/{//g -e s/}//g`
done
set -- $fields
[ "$1" = ensemble -a "$4" = depth -a "${15}" = correlation ] || {
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_corr
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`echo "scale=1;$min_ens-0.5"|bc`/`echo "scale=1;$max_ens+0.5"|bc`/`\
echo "scale=1;$min_depth-$ADCP_bin_length/2"|bc`/`echo "scale=1;$max_depth+$ADCP_bin_length/2"|bc`
U=-R0/1/0/1
X=-JX10/-10
C=-C`which LWplot_corr | sed 's@LWplot_corr$@corr.cpt@'`
ens_width=`echo "scale=5;10/($max_ens-$min_ens+1)"|bc`
bin_length=`echo "scale=5;10*$ADCP_bin_length/($max_depth-$min_depth+$ADCP_bin_length)"|bc`
awk "{print \$1, \$4, \$15, $ens_width, $bin_length}" $TMPFILE \
| psxy -P -K $R $X $C -Sr > "$eps_file"
echo 0.02 0.02 12 0 0 TL $out_basename $run_label | pstext -O -K $U $X >> "$eps_file"
if [ 0 -eq `echo "($max_depth-$min_depth)>1000"|bc` ]
then
depth_tics=f10a100
ens_tics=f50a500
else
depth_tics=f100a500
ens_tics=f500a1000
fi
cat `which LWplot_corr | sed 's@LWplot_corr$@corr_scale.skel@'` >> "$eps_file"
psbasemap -O $R $X -B$ens_tics:"Ensemble":/$depth_tics:"Depth [m]":WeSn >> "$eps_file"
rm $TMPFILE
fixbb "$eps_file"
cd "$PWD"
rm -rf /tmp/$$