function zplot (args) 'numargs 'args numargs = result num = 0 while ( num < numargs ) num = num + 1 if( subwrd(args,num) = '-EXPID' ) ; expid = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-EXPORT' ) ; EXPORT = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-PFILE' ) ; pfile = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-OFILE' ) ; ofile = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-ONAME' ) ; obsnam = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-OBDATE' ) ; begdateo = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-OEDATE' ) ; enddateo = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-NMOD' ) ; nmod = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-NOBS' ) ; nobs = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-ODESC' ) ; odesc = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-OUTPUT' ) ; output = subwrd(args,num+1) ; endif if( subwrd(args,num) = '-SEASON' ) ; season = subwrd(args,num+1) ; endif endwhile * Check for Contour Level Type * ---------------------------- 'run getenv "LEVTYPE"' LEVTYPE = result say '-EXPID 'expid say '-EXPORT 'EXPORT say '-PFILE 'pfile say '-OFILE 'ofile say '-ONAME 'obsnam say '-OBDATE 'begdateo say '-OEDATE 'enddateo say '-NMOD 'nmod say '-NOBS 'nobs say '-ODESC 'odesc say '-OUTPUT 'output say '-SEASON 'season * Get Dates for Plots * ------------------- 'run getenv "BEGDATE"' begdate = result 'run getenv "ENDDATE"' enddate = result if( begdate = "NULL" ) 'set dfile 'pfile 'set t '1 'getinfo date' begdate = result endif if( enddate = "NULL" ) 'set dfile 'pfile 'getinfo tdim' tdim = result 'set t 'tdim 'getinfo date' enddate = result endif 'set gxout shaded' * Get Plotting Values from Resource File * -------------------------------------- 'run getenv "GEOSUTIL"' geosutil = result PLOTRC = geosutil'/plots/grads_util/plot.rc' say '' 'getresource 'PLOTRC' 'EXPORT'_TITLE_S' ; names = result 'getresource 'PLOTRC' 'EXPORT'_TITLE_P' ; namep = result 'getresource 'PLOTRC' 'EXPORT'_FACT_Z' ; fact = result 'getresource 'PLOTRC' 'EXPORT'_YFMT' ; yfmt = result 'getresource 'PLOTRC' 'EXPORT'_CMAX_S' ; cmaxs = result 'getresource 'PLOTRC' 'EXPORT'_CMIN_S' ; cmins = result 'getresource 'PLOTRC' 'EXPORT'_CMAX_P' ; cmaxp = result 'getresource 'PLOTRC' 'EXPORT'_CMIN_P' ; cminp = result say '' if( fact = "NULL" ) ; fact = 1 ; endif oname = '/zonal_'obsnam'_'EXPORT * Make Mean Plot * -------------- 'set vpage off' 'set grid off' 'set clab on' 'set xlopts 1 3 .11' 'set ylopts 1 3 .11' 'set csmooth on' 'set vpage 0 6 1.5 7.5' 'set lat -90 90' 'set lon 0' 'set z 1' 'set t 1' 'set grads off' 'set clopts -1 -1 .13' 'set xlopts 1 4 .2' 'set ylopts 1 4 .2' 'set dfile 'ofile 'set lat -90 90' 'set lon 0' 'set z 1' 'set t 1' if( yfmt != 'NULL' ) ; 'set ylab 'yfmt ; endif 'set axlim 'cminp' 'cmaxp 'define one = lev/lev' 'define p1000 = psobsz'season'/100' *'define p1000 = lev-lev+1000' 'define numer = vint(p1000,qpqpoz*'fact',0.1)' 'define denom = vint(p1000,one ,0.1)' 'define rato = numer/denom' 'set dfile 'pfile 'set lat -90 90' 'set lon 0' 'set z 1' 'set t 1' 'define one = lev/lev' 'define p1000 = psmodz'season'/100' 'define numer = vint(p1000,qpqpmz*'fact',0.1)' 'define denom = vint(p1000,one ,0.1)' 'define ratm = numer/denom' axmin = subwrd(cminp,1) axmax = subwrd(cmaxp,1) dummy = axmin*axmax if( dummy < 0 ) 'set cmark 0' 'set ccolor 2' 'set cstyle 1' 'set cthick 1' 'd lev-lev' endif 'set cmark 0' 'set ccolor 1' 'set cstyle 1' 'set cthick 8' 'd rato' 'set cmark 0' 'set ccolor 1' 'set cstyle 1' 'set cthick 3' 'd ratm' 'set vpage 5 11 1.5 7.5' 'set grads off' 'set clopts -1 -1 .13' 'set xlopts 1 4 .2' 'set ylopts 1 4 .2' 'set dfile 'ofile 'set lat -90 90' 'set lon 0' 'set z 1' 'set t 1' if( yfmt != 'NULL' ) ; 'set ylab 'yfmt ; endif 'set axlim 'cmins' 'cmaxs 'define one = lev/lev' 'define p1000 = psobsz'season'/100' *'define p1000 = lev-lev+1000' 'define numer = vint(p1000,qsqsoz*'fact',0.1)' 'define denom = vint(p1000,one ,0.1)' 'define rato = numer/denom' 'set dfile 'pfile 'set lat -90 90' 'set lon 0' 'set z 1' 'set t 1' 'define one = lev/lev' 'define p1000 = psmodz'season'/100' 'define numer = vint(p1000,qsqsmz*'fact',0.1)' 'define denom = vint(p1000,one ,0.1)' 'define ratm = numer/denom' axmin = subwrd(cmins,1) axmax = subwrd(cmaxs,1) dummy = axmin*axmax if( dummy < 0 ) 'set cmark 0' 'set ccolor 2' 'set cstyle 1' 'set cthick 1' 'd lev-lev' endif 'set cmark 0' 'set ccolor 1' 'set cstyle 1' 'set cthick 8' 'd rato' 'set cmark 0' 'set ccolor 1' 'set cstyle 1' 'set cthick 3' 'd ratm' 'set vpage off' 'set string 1 c 6' 'set strsiz .13' 'xlabel 'pfile' 6.0 7.7' 'draw string 6.0 8 Experiment: 'expid 'set strsiz .13' 'draw string 3.55 7.200 'namep' 'season 'draw string 8.55 7.200 'names' 'season date = getdate (begdate) bmnthm = subwrd(date,1) byearm = subwrd(date,2) date = getdate (enddate) emnthm = subwrd(date,1) eyearm = subwrd(date,2) date = getdate (begdateo) bmntho = subwrd(date,1) byearo = subwrd(date,2) date = getdate (enddateo) emntho = subwrd(date,1) eyearo = subwrd(date,2) 'set string 1 l 4' 'set strsiz .08' 'draw string 1.85 1.25 Mod Beg: 'bmnthm' 'byearm 'draw string 1.85 1.10 Mod End: 'emnthm' 'eyearm 'set string 1 r 4' 'set strsiz .08' 'draw string 10.15 1.25 Obs Beg: 'bmntho' 'byearo 'draw string 10.15 1.10 Obs End: 'emntho' 'eyearo '!'geosutil'/plots/quad/mk_text 'expid'_\('nmod'\) 'obsnam'_\('nobs'\)' 'lines "zonal.vint.stack" 1' 'set string 1 c 6' 'myprint -name 'output'/'oname'_vint.'season return function getdate (date,month,year) num = 1 bit = substr(date,num,1) while( bit != '' ) num = num+1 bit = substr(date,num,1) endwhile loc = num-7 month = substr(date,loc ,3) year = substr(date,loc+3,4) return month' 'year