$ cd Map_TS/
[2015年 9月 4日 金曜日 11:01:40 JST]
[~/2015.Ibnu.Indian.Ocean/WOA13/Map_TS]
::::::::::::::
pl.ts.all.run.sh
::::::::::::::
#!/bin/bash
exe=pl.ts.run.sh
if [ ! -f $exe ]; then echo "Error in $0, No such file, $exe"; exit0; fi
vlev=2
m=1
while [ $m -le 12 ]; do
$exe $m $vlev
m=$(expr $m + 1)
done
exit 0
::::::::::::::
pl.ts.run.sh
::::::::::::::
#!/bin/sh
export LANC=C
exe=./runncl.sh
ncl=pl.ts.ncl
# Default value
dataset=WOA
yyyy="2005-2012"
version="_01v2"
m=1
vlev=1
m=$1
vlev=$2
indir=/work4/data/${dataset}
if [ ! -d $indir ]; then
echo
echo Error in $0 : No such directory, $indir
echo
exit 1
fi
outdir=${HOME}/2015.Ibnu.Indian.Ocean/Fig/${dataset}/$(basename $(pwd))/\
$(basename $0 .sh)/${yyyy}
if [ ! -d $outdir ]; then
mkdir -vp $outdir
fi
mm=$(printf %02d $m)
if [ $m -eq 1 ]; then mmm="Jan"; fi
if [ $m -eq 2 ]; then mmm="Feb"; fi
if [ $m -eq 3 ]; then mmm="Mar"; fi
if [ $m -eq 4 ]; then mmm="Apr"; fi
if [ $m -eq 5 ]; then mmm="May"; fi
if [ $m -eq 6 ]; then mmm="Jun"; fi
if [ $m -eq 7 ]; then mmm="Jul"; fi
if [ $m -eq 8 ]; then mmm="Aug"; fi
if [ $m -eq 9 ]; then mmm="Sep"; fi
if [ $m -eq 10 ]; then mmm="Oct"; fi
if [ $m -eq 11 ]; then mmm="Nov"; fi
if [ $m -eq 12 ]; then mmm="Dec"; fi
in[0]=${indir}"/woa13_A5B2_t"${mm}"${version}.nc"
in[1]=${indir}"/woa13_A5B2_s"${mm}"${version}.nc"
$exe $ncl ${in[0]} ${in[1]} ${yyyy} ${m} ${mmm} ${vlev} ${outdir}
echo
echo Done $(basename $0).
echo
exit 0
::::::::::::::
runncl.sh
::::::::::::::
#!/bin/bash
#
# Universal wrapper script for ncl.
# Pass arguments from the command line to environment variables
#
# version 0.1, Thierry Corti, C2SM ETH Zurich
#
E_BADARGS=65
if [ ! -n "$1" ]
then
echo "Usage: `basename $0` script.ncl argument1 argument2 etc."
exit $E_BADARGS
fi
# save number of arguments to environment variable NCL_N_ARG
export NCL_N_ARGS=$#
# save command line arguments to environment variable NCL_ARG_#
for ((index=1; index<=$#; index++))
do
eval export NCL_ARG_$index=\$$index
done
# run ncl
ncl -Q -n $1
exit 0
::::::::::::::
pl.ts.ncl
::::::::::::::
;
; Plot horizontal map of T & S of WOA13F V2 dataset
;
; Refer to http://dx.doi.org/10.1002/2014JC010336 for details on dr080
;
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
begin
wallClock1 = systemfunc("date") ; retrieve wall clock time
;
; Read command line arguments
;
scname = getenv("NCL_ARG_1")
infle1 = getenv("NCL_ARG_2")
infle2 = getenv("NCL_ARG_3")
yyyy = getenv("NCL_ARG_4")
m = getenv("NCL_ARG_5")
mmm = getenv("NCL_ARG_6")
vlev = getenv("NCL_ARG_7")
outdir = getenv("NCL_ARG_8")
;
; Read input data
;
ft=addfile(infle1,"r")
fs=addfile(infle2,"r")
t3d=ft->t_an
s3d=fs->s_an
z1d=ft->depth
;
; Set month
;
dateprt= mmm + " (" + yyyy +")"
;Set depth
klev=stringtointeger(vlev)-1
z=floattointeger(z1d(klev))
;
; Set output file name
;
filetype="png" ;"ps"
mm=sprinti("%0.2i",stringtointeger(m))
ofle=outdir + "/" + "WOA13_TS." + sprinti("%0.5i",z) + "m." \
+ yyyy + "." + mm + "." + filetype
wks = gsn_open_wks(filetype,ofle)
;
; Set NCL resources
;
res = True
res@gsnDraw = False ; don't draw
res@gsnFrame = False ; don't advance frame
;Figure size
res@vpHeightF = 0.35
res@vpWidthF = 0.55
res@vpXF = 0.2
;Map
res@mpFillOn = True
;Contour
res@cnFillOn = True ; turn on color fill
res@cnLineColor = "white"
res@lbOrientation = "vertical"
res@cnLevelSelectionMode = "ManualLevels" ; manually set the contour levels with the following 3 resources
res@gsnContourLineThicknessesScale=1.5
;Choose subregion
res@mpMinLatF =-20
res@mpMaxLatF = 20
res@mpMinLonF = 40
res@mpMaxLonF =110
res@mpDataBaseVersion = "Ncarg4_1" ; use GMT coastline
;
; Upper panel
;
res1=res
res1@vpYF = 0.9
res1@cnMinLevelValF = 22 ; set min contour level
res1@cnMaxLevelValF = 32 ; set max contour level
res1@cnLevelSpacingF = 1 ; set contour spacing
res1@gsnLeftString = dateprt ; add the gsn titles
res1@gsnCenterString = "T"
res1@gsnRightString = z + " m"
plot1 = gsn_csm_contour_map(wks,t3d(0,klev,:,:),res1) ; Draw a contour plot.
; now assign plotA to array
draw(plot1)
delete(res1)
txres = True ; text mods desired
txres@txFontHeightF = 0.015 ; font smaller. default big
txres@txBackgroundFillColor = "white"
txres@txFontColor="black"
gsn_text_ndc(wks,dateprt,0.65,0.59,txres)
;
; Lower panel
;
res2=res
res2@vpYF = 0.45
res2@cnMinLevelValF = 30 ; set min contour level
res2@cnMaxLevelValF = 38 ; set max contour level
res2@cnLevelSpacingF = 1 ; set contour spacing
res2@gsnLeftString = dateprt ; add the gsn titles
res2@gsnCenterString = "S"
res2@gsnRightString = z + " m"
plot2 = gsn_csm_contour_map(wks,s3d(0,klev,:,:),res2) ; Draw a contour plot.
draw(plot2)
delete(res2)
gsn_text_ndc(wks,dateprt,0.65,0.14,txres)
;
; Header and footer
;
;drawNDCGrid(wks)
txres = True ; text mods desired
txres@txFontHeightF = 0.01 ; font smaller. default big
gsn_text_ndc(wks,outdir,0.5,0.99,txres)
text=systemfunc("export LANG=C; date")
gsn_text_ndc(wks,text,0.2,0.010,txres)
text=systemfunc("pwd")+"/"+scname
gsn_text_ndc(wks,text,0.5,0.03,txres)
frame(wks)
print("")
print("Output: "+ ofle)
print("")
end