! +-======-+ ! Copyright (c) 2003-2018 United States Government as represented by ! the Admistrator of the National Aeronautics and Space Administration. ! All Rights Reserved. ! ! THIS OPEN SOURCE AGREEMENT ("AGREEMENT") DEFINES THE RIGHTS OF USE, ! REPRODUCTION, DISTRIBUTION, MODIFICATION AND REDISTRIBUTION OF CERTAIN ! COMPUTER SOFTWARE ORIGINALLY RELEASED BY THE UNITED STATES GOVERNMENT AS ! REPRESENTED BY THE GOVERNMENT AGENCY LISTED BELOW ("GOVERNMENT AGENCY"). ! THE UNITED STATES GOVERNMENT, AS REPRESENTED BY GOVERNMENT AGENCY, IS AN ! INTENDED THIRD-PARTY BENEFICIARY OF ALL SUBSEQUENT DISTRIBUTIONS OR ! REDISTRIBUTIONS OF THE SUBJECT SOFTWARE. ANYONE WHO USES, REPRODUCES, ! DISTRIBUTES, MODIFIES OR REDISTRIBUTES THE SUBJECT SOFTWARE, AS DEFINED ! HEREIN, OR ANY PART THEREOF, IS, BY THAT ACTION, ACCEPTING IN FULL THE ! RESPONSIBILITIES AND OBLIGATIONS CONTAINED IN THIS AGREEMENT. ! ! Government Agency: National Aeronautics and Space Administration ! Government Agency Original Software Designation: GSC-15354-1 ! Government Agency Original Software Title: GEOS-5 GCM Modeling Software ! User Registration Requested. Please Visit http://opensource.gsfc.nasa.gov ! Government Agency Point of Contact for Original Software: ! Dale Hithon, SRA Assistant, (301) 286-2691 ! ! +-======-+ function precip (args) expid = subwrd(args,1) season = subwrd(args,2) output = subwrd(args,3) obsfile = subwrd(args,4) obsdsc = subwrd(args,5) expdsc = subwrd(args,6) 'set rgb 50 50 0 255' 'set rgb 51 50 100 254' 'set rgb 52 75 140 240' 'set rgb 53 116 180 228' 'set rgb 54 120 243 230' 'set rgb 55 160 242 200' 'set rgb 56 200 240 180' 'set rgb 57 220 240 165' 'set rgb 58 240 240 150' 'set rgb 59 240 195 165' 'set rgb 60 240 150 180' 'set rgb 61 245 100 140' 'set rgb 62 245 50 100' 'set rgb 63 255 0 50' 'set vpage off' 'set parea off' 'set grid off' 'set mproj scaled' 'set frame on' 'set xlopts 1 3 .11' 'set ylopts 1 3 .11' 'set dfile 1' 'set t 1' 'define mod = preacc'season'geos' 'run getenv "BEGDATE"' begdate = result 'run getenv "ENDDATE"' enddate = result 'count "'season'" 'begdate' 'enddate nmod = result 'set dfile 'obsfile 'define obs = precip'season'obs' 'run getenv "CLIMATE"' climate = result if( climate = "Climatology" ) 'count "'season'"' nobs = result else nobs = nmod endif 'set vpage 0 8.5 0.0 11' 'set parea 1.5 7.0 7.70 10.50' 'set grads off' 'set clevs 2 3 4 5 6 7 8 10 12 14 16 18 20' 'set ccols 0 50 52 53 54 55 56 57 58 59 60 61 62 63' 'd mod' 'set parea 0 8.5 7.0 11' 'cbarn -vert' 'set parea off' 'set vpage 0 8.5 0.0 11' 'set parea 1.5 7.0 4.30 7.10' 'set grads off' 'set clevs 2 3 4 5 6 7 8 10 12 14 16 18 20' 'set ccols 0 50 52 53 54 55 56 57 58 59 60 61 62 63' 'd obs' 'set parea off' 'set vpage 0 8.5 0.0 11' 'set parea 1.5 7.0 0.90 3.70' 'set grads off' 'getinfo lon' lon = result 'define obsg = regrid2( obs,1,1,bs_p1,'lon',-90)' 'define modg = regrid2( mod,1,1,bs_p1,'lon',-90)' 'rgbset' 'set clevs -9 -8 -7 -6 -5 -4 -3 -2 -1 1 2 3 4 5 6 7 8 9' 'set ccols 55 49 47 45 44 36 34 33 32 0 21 22 23 24 25 26 27 28 69' 'd maskout( modg-obsg,abs(obsg) )' 'cbarn' 'stats maskout(modg,abs(obsg))' avgmod = subwrd(result,1) stdmod = subwrd(result,2) 'stats maskout(obsg,abs(obsg))' avgobs = subwrd(result,1) stdobs = subwrd(result,2) 'stats maskout(modg-obsg,abs(obsg))' avgdif = subwrd(result,1) stddif = subwrd(result,2) 'set vpage off' 'set string 1 c 6' 'set strsiz .11' *'xlabel 1 4.25 10.9' 'draw string 4.25 10.9 EXPID: 'expid' 'expdsc 'draw string 4.25 10.6 Total Precipitation (mm/day) 'season' ('nmod')' 'draw string 4.25 7.2 'obsdsc' 'season' ('climate' 'nobs')' 'draw string 4.25 3.80 Model - Observations' 'set string 1 c 4' 'set strsiz .08' 'draw string 0.52 10 Mean: 'avgmod 'draw string 0.52 9.8 Std: 'stdmod 'draw string 0.52 6.6 Mean: 'avgobs 'draw string 0.52 6.4 Std: 'stdobs 'draw string 0.52 3.2 Mean: 'avgdif 'draw string 0.52 3.0 Std: 'stddif 'print' 'set mproj latlon'