At this time, we have the program incorporated into nwmapmaker.pl as a "resolution enhancement option". This option performs downscaling of PRISM-derived degree-day maps for the 5-state Northwestern US. The downscaling now takes 1:15 (1 minute 15 second or about 1.5 KM) heat unit data down to 0:09 (9 second) resolution using USGS GTOPO30 DEM (30 second elevation, about 580 meter resolution) and 360m DEM. This is approximately a 16 fold improved resolution, and does improve both relative and absolute precision and accuracy, as well as the readability, of the degree-day maps. The method uses a moving window 5x5 weighted simple linear regression. In addition, it has a) ability to ignore data beyond map edges, and b) a threshold r-value with "fail-back" to the non-downscaled value (currently used at r=0.15). Both distance-weights and threshold r-values are user-determined and set.
This program may provide a tool for other downscaling needs to provide an alternative to gaussian smoothing.
A brief outline of the process for computing PRISM-derived degree-day maps without the downscaling step is available from /wea/avgmapexp.html, and documentation for using the mapmaker application is available from /wea/mapmkrdoc.html. Please review.
Fig. 1. Initial PRISM-derived DD map, 4 km (corrected using near-realtime site data)
Fig. 2. Final (gaussian-smoothed) DD map, 500 m (as available from mapmaker.pl web application with the default, "original resolution" option selected)
Fig. 3. New downscaled DD map, 100 m (downscaled using r.downscale.pl, no additional gaussian smoothing, this based on USGS 30m DEM, no longer available at mapmaker.pl)
Fig. 4. New downscaled DD map, 500 m (downscaled using r.downscale.pl, with additional gaussian smoothing, based on USGS GTOPO30 DEM, now available at mapmaker.pl as the "resolution enhancement" option)
r.downscale.pl: Perl script to use r.mapcalc and GWR to downscale from low to high resolution using 5 x 5 local weighted regressions between variables like rainfall or temperature (dep. variable) and elevation (indep. variable). The program expects to be run twice: Once at the lower resolution to build models using calc=BUILD, then at a higher resolution using calc=EST to calculate new high resolution values. Example usage: GRASS >g.region res=0:02:30.00 # set lower res GRASS >r.downscale.pl input=H_50 elev_lo=lodem calc=BUILD # build model GRASS >g.region res=0:00:09.00 # set higher res GRASS >r.downscale.pl elev_hi=DEM30m elev_lo=lodem input=H_50 output=HI_50 calc=EST # estimate For help: --help or -h print this message and exit. --keys or -k print the list of keys and exit. --defaults or -d print the list of keys and defaults and exit. Other arguments are interpreted as parameter=value pairs Notes: For GRASS 4.x, all stats are scaled up: B1 (x1000), B0 (x100), r (x100), residuals (x100). Keep this in mind when checking resultsRunning the script as r.downscale.pl -d (show defaults) results in this summary:
# #parameter =default # description (all filenames are GRASS raster maplayers) #-------------------------------------------------------------------------------- calc =BUILD # req: function performed (BUILD or EST) input =H_50 # req: BUILD & EST low res filename to be downscaled elev_lo =us_25m_dem # req: BUILD low res elev filename elev_hi =DEM30m # req: EST high res elev filename output =HIDD5d # req: EST output filename with downscaled values b1 =BONE # opt: BUILD & EST slope filename b0 =BZERO # opt: BUILD & EST intercept filename rval =RVAL # opt: BUILD corr. coeff. (r) filename resid =RESID # opt: BUILD residual (Yi - YHATi) (x10) filename ssxy =SSXY # opt: BUILD intermediate filename SSXY (sum of squares xy) ssxx =SSXX # opt: BUILD intermediate filename SSXX (sum of squares xx) ssyy =SSYY # opt: BUILD intermediate filename SSYY (sum of squares yy) d0 =1.0 # opt: BUILD wt value for 5 x 5 center cell d1 =1.0 # opt: BUILD wt value at dist. = 1 cell from center d2 =1.0 # opt: BUILD wt value at dist. = 2 cells from center e0 =8.0 # opt: EST wt value for 5 x 5 center cell e1 =2.0 # opt: EST wt value at dist. = 1 cell from center e2 =1.0 # opt: EST wt value at dist. = 2 cells from center rth =0.08 # opt: EST minimum acceptable local rsqr from build (not in orig version) #--------------------------------------------------------------------------------
For the inclusive data set, the correlation between the 4km DDs (sampled from the maplayer shown in Fig. 1 using GRASS command r.what) and actual site DDs is very good, r=0.97, reflecting the fact that DD maps were corrected using these site data. The correlation is not perfect primarily because site location precision could be improved (see lat-long coordinates). Gaussian smoothing appears to slightly improve the correlation, to r=0.998. Downscaling using the described regression algorithm also produced a high correlation, r=0.973, indicating that the method does not appear biased or inaccurate. It is expected that improvements in location precision, and in selection of a more appropriate DEM maplayer, will help with future verifications.
In the case of the exclusive data set, as expected, none of the estimated DD totals are as highly correlated with the reference (site) calculated DDs. The corrected PRISM DDs at 4km resolution show good correlation, on average within 7% of the reference data set (r=0.673). This result can be expected given the lack of precision in spatial resolution. The DDs smoothed by a gaussian filter to 500m are better correlated, r=0.764, which reflects that gaussian smoothing can be helpful for point-specific readings. The gaussian-smoothed maps do not follow the higher resolution topography, however, whereas it is known that temperature gradients will follow a much higher elevation scale of better than 100-500 m (references). The preliminary results using the downscaling method support this fact, with a correlation that is further improved to r=0.810. Much better results would be expected in a jackknife validation, by building maps using all sites other than the site tested. Such an analysis would improve the overall accuracy of these DD maps, and further support the intuitive conclusion that higher resolution maps can only be meaningfully used in conjunction with a more densely distributed network of weather stations. Also, a more rigorous test could involve weather station networks located as transects along slopes.
Table 1. Verification and validation data for 4km, gaussian smoothing, and least squares downscale techniques used for producing degree-day maps in Figs. 1-3 above. Click on station names for location map of grower-run stations.
|BUILD Model Results|
|Station||Station||Station||Actual||Elev||Elev||Est DD||Est DD||Est DD||Slope||Intercept||Corr.||Residual|
|B1||B0||coeff.||Yi - Yhat|
|1. Stations included from the analysis (verification data)|
|correlation: EST DD vs actual DD||0.970||0.998||0.973|
|2. Hood River stations excluded from the analysis (validation data)|
|correlation: EST DD vs actual DD||0.673||0.764||0.810|
Fotheringham, A. S., C. Brunsdon, and M. Charlton. 2002. Geographically Weighted Regression – the analysis of spatially varying relationships. J. Wiley & Sons.269 pp.
[Home] [Intro] [Data Table-OR] [DD Calc & Models] [Links]
On-line since April 5, 1996
This page last updated Mar 25, 2004
Contact Len Coop at email@example.com if you have any questions about this information.