Hello all, I've found a possible bug (or user error) with GDDIAG and the MASK grid function, but wanted to check with everyone here before sending out an official support request. Within a GEMPAK grid file (test.grd), I have a temperature field (TEMPA) which needs to be masked to only show values between a certain temperature range (>=80F). I run this process daily, and have never had a problem up until this point. When NO temperatures in TEMPA are >=80F, the MASK function generates an erroneously large number rather than -9999.00 (RMISSD). Dataset: test.grd gdlist GDATTIM=101007/0000F001 GLEVEL=0 GVCORD=NONE GFUNC=TEMPA Using GDLIST (tempa.dat) I see that TEMPA: MINIMUM AND MAXIMUM VALUES 1.03 60.00 Goal: only keep temperatures >=80F gddiag GDATTIM=101007/0000F001 GLEVEL=0 GVCORD=NONE GFUNC=MASK(TEMPA,SGE(TEMPA,80)) GRDNAM=TEMPB GRDTYP=S GPACK= GRDHDR= PROJ= GRDAREA= KXKY= MAXGRD= CPYFIL= ANLYSS= Using GDLIST (tempb.dat) I see that TEMPB: MINIMUM AND MAXIMUM VALUES9999999848243207295109594873856.009999999848243207295109594873856.00 I would expect all TEMPB values to be -9999.00 (RMISSD) since no temperatures are greater than 80F, but instead it blows up and returns a very large value. http://www.unidata.ucar.edu/cgi-bin/gempak/manual/apxB_index MASK Masking function MASK (S1, S2) = RMISSD IF S2 = RMISSD = S1 otherwise In this example TEMPA had no values >=80F, but my csh scripts are constantly mining through temperature grids, and "usually" there are values >=80F. Has anyone ever experienced this type of result? If yes, do you know a work around to get the grid (TEMPB) with all values = -9999.00 (RMISSD) rather than erroneously large values? Regards, Evan Lowery
Attachment:
test.grd
Description: Binary data
Attachment:
tempa.dat
Description: Binary data
Attachment:
tempb.dat
Description: Binary data
gembud
archives: