In today's digital world of computers and Internet links, we are able to accomplish feats that were either impossible or too time consuming to be feasible not too long ago. There is an ever-increasing amount of information being stored in digital form, ready to be processed in a multitude of ways by an ever-increasing number of software products that are getting more powerful every day.
One type of useful data readily available online free of charge is Digital elevation models (DEM's) covering large areas of the earth (30 arc-second resolution), and the United States (3 arc-second resolution). In this project, I examine one use of the 30 arc-second resolution Digital Elevation Models in the field of atmospheric science by making use of a Geographic Information System software package called Idrisi for Windows and a number of equations to create a realistic simulation of the solar illumination of mountainous terrain. All of the relevant equations and Idrisi commands used are described in this report, followed by the resulting image from several perspectives, some sample insolation measurements and a discussion of the results, including how the resulting insolation simulation could be useful for studies in other fields than meteorology.
Since my home is British Columbia, Canada, I decided to work with 30 arc-second digital elevation data covering all of British Columbia and some surrounding areas. The data set I used came from the U.S. Geological Survey's FTP site, which is now edcwww.cr.usgs.gov/pub/data/gtopo30/global/ . The data used had the following attributes:
Since I was interested in the solar illumination of the topography, I had to select
a time and date for the
simulation. My choice was 1:00 PM Pacific Daylight Savings Time on June 22'nd, which
was the middle of the summer solstice. What follows is
a description of the equations I made use of for my mountainous terrain insolation
simulation.
These equations come from the text "Meteorology
Today For Scientists and Engineers" by
Dr. Roland B. Stull.
This equation calculates the solar declination angle, which is the latitude where
the sun is directly overhead. It assumes
a circular orbit and is therefore only approximate:
Where:
Where:
Where:
However, this simple model neglected a number of factors, including the effects of the atmosphere, the shading of other flatter surfaces by steeper topography and the terrestrial reflection on the incoming solar radiation. My choice of the summer solstice allowed me to avoid problems with the shading due to the high elevation of the sun.
Here are the steps I took to create the insolation simulation model for BC using the equations defined above:
The Idrisi format digital elevation model data was provided for me by my Geography 472 instructor, Brian Klinkenberg. He accessed the digital elevation model data from the U.S. Geological Survey's FTP site , which is now edcwww.cr.usgs.gov/pub/data/gtopo30/global/. He used ARC/INFO, a much more sophisticated GIS software package to import the large raw data file, windowing out the portion containing BC, and exporting it to Idrisi format, which was much more convenient since he had downloaded the data into a UNIX machine which could handle extremely LARGE data files. Memory limitations on the PC's would have created problems for processing the data using Idrisi's BILIDRIS import module and WINDOW sub-image extraction module.
The water was reassigned from -9999 to 0 meters above sea level:
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE |
RECLASS | BCDEM | 0 to all values from -9999 to just less than 0 | BCDEM2 |
Here are a couple of versions of the highly revered Digital Elevation Model: | |
---|---|
Plain Greyscale DEM | Color Enhanced DEM |
Click here for a medium size greyscale DEM! | Click here for a medium size color-enhanced DEM! |
Click here for the FULL-SIZE (1046 K) greyscale DEM! | Click here for the FULL-SIZE (529 K) color-enhanced DEM! |
The latitude file for our region was created by first creating a blank map, copying
the parameters from the digital
elevation model. The bottom and top rows of the image were then set to the correct
latitudes in degrees and linear interpolation was used to
fill in the middle. The image was then converted to radians for Idrisi's trigonometric
functions.
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY |
INITIAL | BCDEM2 | Copy spatial parameters from: BCDEM2 Output data type: REAL Output file type: BINARY Initial value: 0 |
BCLA | |
UPDATE | BCLA | BCLA | ||
TREND | BCLA | Linear interpolation No zero cells included |
BCLAT | |
TRANSFOR | BCLAT | RADIANS(BCLAT) | BCLA |
Here is what the latitude file looked like: |
---|
The longitude file for my region was created by first creating a blank map, copying
the parameters from the digital
elevation model. The left and right columns of the image were then set to the correct
longitudes in degrees and linear interpolation was used to
fill in the middle. The image was then converted to radians for Idrisi's trigonometric
functions.
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY |
INITIAL | BCDEM2 | Copy spatial parameters from: BCDEM2 Output data type: REAL Output file type: BINARY Initial value: 0 |
BCLO | UPDATE | BCLO | Column 0 assigned 140 Column 2999 assigned 115 |
BCLO | TREND | BCLO | Linear interpolation No zero cells included |
BCLONG | TRANSFOR | BCLONG | RADIANS(BCLONG) | BCLO |
Here is what the longitude file looked like: |
---|
The DEM's elevation units, which were in meters, had to be defined for Idrisi
before the slope
and aspect files could be created. These files then had to be converted from degrees
to radians for Idrisi's trigonometric
functions.
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY |
DOCUMENT | BCDEM2 | Value units: m | BCDEM2 | |
SURFACE | BCDEM2 | Slope and aspect Calculations in degrees |
Slope file: BCSLOPE Aspect file: BCASPECT |
|
TRANSFOR | BCSLOPE | RADIANS(BCSLOPE) | BCSLOPRD | |
TRANSFOR | BCASPECT | RADIANS(BCASPECT) | BCASPCTR |
Here is what the slope file looked like: | Here is what the aspect file looked like: |
---|---|
Click here for a MEDIUM-SIZE version of the slope image! | Click here for a MEDIUM-SIZE version of the aspect image! |
Click here for the FULL-SIZE (1484 K) slope image! | Click here for the FULL-SIZE (2325 K) aspect image! |
Making use of the previously defined equation , and plugging in the following variables for June 22'nd on a non-leap year:
The solar elevation was calculated using the previously
defined equation:
Where:
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY: |
TRANSFOR | BCLA | SINE(BCLA) | SINLAT | |
TRANSFOR | BCLO | COSINE(BCLO) | COSLAT | |
SCALAR | BCLO | BCLO-5.235987757 Value units=RADIANS |
BCLODIFF | -() |
The sign was irrelevant due to cosine's symmetry about 0.
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY: |
TRANSFOR | BCLODIFF | COSINE(BCLODIFF) | BCOSDIFF | |
SCALAR | BCOSDIFF | 0.9174077001*BCOSDIFF | BCCOS2 | |
SCALAR | SINLAT | SINLAT*0.3979486315 | BCSIN1 | |
OVERLAY | COSLAT BCCOS2 |
COSLAT*BCCOS2 | BCCOS1 | |
OVERLAY | BCSIN1 BCCOS1 |
BCSIN1-BCCOS1 | SINELEV | |
TRANSFOR | SINELEV | ARCSINE(SINELEV) VALUE UNITS=RADIANS |
SOLELEV |
Here is what the solar elevation file looked like: |
---|
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY: |
SCALAR | SOLELEV | SOLELEV-1.570796327 | TEMPZEN | |
SCALAR | TEMPZEN | TEMPZEN*-1 Value Units=RADIANS |
SOLZEN | |
TRANSFOR | SOLZEN | SINE(SOLZEN) | SINZEN | |
TRANSFOR | SOLZEN | COSINE(SOLZEN) | COSZEN | |
OVERLAY | SINZEN COSLAT |
SINZEN*COSLAT | TMPDENOM | |
OVERLAY | SINLAT COSZEN |
SINLAT*COSZEN | TMPNUM1 | |
SCALAR | TMPNUM1 | TMPNUM1-0.3979486315 | TMPNUM2 | |
SCALAR | TMPNUM2 | TMPNUM2*-1 | TMPNUM | |
OVERLAY | TMPNUM TMPDENOM |
TMPNUM/TMPDENOM | COSAZIM |
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE |
RECLASS | BCLONG | 0 to all values from 120 to just less than 150 2 to all values from 110 to just less than 120 |
CORRECTN |
SCALAR | CORRECTN | CORRECTN*3.141592654 | CORRECT2 |
Here is what the correction file looked like: |
---|
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE |
TRANSFOR | COSAZIM | ARCCOSINE(COSAZIM) | TEMPAZIM |
OVERLAY | CORRECT2 TEMPAZIM |
CORRECT2-TEMPAZIM | TEMPAZM2 |
TRANSFOR | TEMPAZM2 | ABS(TEMPAZM2) Value units: RADIANS |
SOLAZIM |
Here is what the solar azimuth file looked like: |
---|
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE | SYMBOLIZED BY |
TRANSFOR | BCSLOPRD | COSINE(BCSLOPRD) | COSSLOPE | |
OVERLAY | COSZEN COSSLOPE |
COSZEN*COSSLOPE | COSLOPZN | |
DOCUMENT | BCASPECT | Value units: DEGREES | BCASPECT | |
TRANSFOR | BCASPECT | RADIANS(BCASPECT) | BCASPCTR | |
OVERLAY | SOLAZIM BCASPCTR |
SOLAZIM-BCASPCTR Value units: RADIANS |
DIFFAZIM | |
TRANSFOR | DIFFAZIM | COSINE(DIFFAZIM) | COSDFAZM | |
TRANSFOR | BCSLOPRD | SINE(BCSLOPRD) | SINSLOPE | |
OVERLAY | COSDFAZM SINSLOPE |
COSDFAZM*SINSLOPE | SNSLCSDA | |
OVERLAY | SNSLCSDA SINZEN |
SNSLCSDA*SINZEN | TEMP | |
OVERLAY | COSLOPZN TEMP |
COSLOPZN+TEMP | COSOLANG |
Since no place was shaded completely from the sun, no reclassification of of the insolation intensity factor image was needed. Otherwise, the negative values would have been eliminated by the following step:
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE |
RECLASS | COSOLANG | 0 to all values from -9999 to just less than 0 | INTNSFAC |
The calculation of the solar constant for June 22'nd involved several equations. The first equation to be evaluated was the mean anomaly equation:
Where:
M=2.924374983
M was then plugged into the equation for the true anomaly:
v=M+0.0333988sin(M)+0.0003486sin(2M)+0.000005sin(3M)=2.931429183
Which, in turn, was inserted into the equation for the sun to earth-moon barycenter
distance for June 22'nd:
Where:
The insolation intensity factor image was finally multiplied by the solar constant for that day (1326.88 ) to arrive at the final image that contained the solar intensity for any point around B.C. on June 22'nd, 1:00 PM PDT.
FUNCTION | INPUT FILE | OPERATION | OUTPUT FILE |
SCALAR | COSOLANG | COSOLANG*1326.88 | INSOLATN |
Here it is! The product of all of those calculations.
This is a full map of British Columbia showing the simulated solar illumination.
The gradations
seen on the ocean are due to the varying angle of the sun over different latitudes
and longitudes.
Click here for the FULL-SIZE (1170 K) image! |
Here is a closer view of southwestern BC cut out using Idrisi's sub-image extraction module WINDOW:
Sorry, but I was unable to recover the imagery below after setting up this page here after it was removed from the UBC server.
Here is a side view of southern BC (same as at the top of this document) using Idrisi's ORTHO module on a WINDOW'ed out portion of the insolation image:
The Idrisi format of the insolation image consisted of the actual values of insolation as calculated by the above procedure. Using Idrisi's "Cursor Inquiry Mode", the values of the direct insolation (assuming no atmosphere) could be read off any point on the map in . Here is an example of a few points in a zoomed section of the Sumas region in the lower Fraser valley:
Insolation at point A on north side of Sumas Mountain: 951.9475
Insolation at point B on south side of Sumas Mountain: 1293.42
Insolation at point C on valley bottom: 1195.418
As previously mentioned, this model neglected a number of factors, such as atmospheric absorption and scattering, and terrestrial reflection of the sunlight as well as the potential shading of terrain whose slope and azimuth would have otherwise allowed for exposure to the sun. However, the combination of my choice of "high noon" on the summer solstice and the coarseness of the data (~1 km) "smoothing" out the steepness of the slopes resulted in no total shading. If it did occur, then the feature blocking out the sun would have had a negative insolation intensity factor on the shaded side, making the reclassification of negative values to 0 mentioned earlier necessary. If I had more time, I would have created a simulated insolation map for the winter solstice, December 22'nd. However, the shading problem would have been quite pronounced due to the sun's low elevation. Idrisi's SURFACE module has an "analytical hillshading" feature which has an effect similar to my results, except that it doesn't account for variations of the solar elevation and azimuth with latitude and longitude. Therefore, it is not an accurate representation of solar illumination of the region, limiting its uses to just illustration of topography.
The above procedure was extremely cumbersome, with each operation taking roughly 10 minutes to process 16 megabyte files. I never had time to investigate the use of Idrisi's macros, which would have "packaged" groups of operations quite nicely. However, the execution time would not have been shortened. Other GIS packages have the feature that allows for flexible user-specified equations to operate on several rasters to create a new raster. ArcGIS's ArcView's Map Calculator, and public domain GRASS's r.mapcalc program are two examples. This feature has since then been incorporated into all the newer versions of Idrisi as the Image Calculator, which has increased its raster image processing flexibility greatly. This feature would have significantly reduced the amount of processing time and work for the above equations. My work was done using Idrisi because its low-cost, easy-to-use features made it the software of choice for learning the concepts of GIS at UBC.
Creating realistic shading and being able to read the insolation off the map is only the tip of the iceberg of possible uses. The results could be the first step in the process of modelling the radiation budget in complex terrain, incorporating many other factors such as atmospheric and terrestrial absorption, emission, reflection and scattering, taking into account their variation with elevation. The 30 arc-second (~1 km) resolution of the DEM used is compatible with the resolution of the Advanced Very High Resolution Radiometer (AVHRR), allowing for the comparison between calculated insolation and thermal satellite imagery to obtain information about the varying albedo (reflectivity) of the surface as well as the atmospheric and terrestrial effects not accounted for.
The use of this information can extend well beyond the field of meteorology. An accurate map of varying solar intensity on the ground could be used to cancel out the shading on satellite imagery, resulting in a more uniformly illuminated surface, eliminating one problem encountered in image classification. Relating the spatial insolation intensity variation with other factors such as elevation, latitude, proximity to climate-moderating bodies of water, general climate type and soil type could result in maps showing the most suitable regions for growing certain crops.
The inspiration for this project came from the United Nations Institute for Training and Research (UNITAR) publication "Explorations in Geographic Information Systems Technology" Workbook Series, Volume 5: "GIS and Mountain Environments" Exercise 4: "Modeling the Impact of Mountains on Regional Climates". The exercise was part of a project in the Puna Atacama province in Chile, whose aim was to examine availability of water and its sources. It made use of digital elevation models of the area's mountainous terrain to model the development of heat islands responsible for heavy summer convective precipitation in the mountains to the northeast. This information was then used, along with drainage patterns, to help learn more about potential water sources.
There are a lot of potential uses for insolation models in a GIS. This project looked at how a simple insolation model could be created using GIS software, a DEM and some equations. Some useful applications were also examined. Idrisi is a relatively small GIS software package, compared to others such as ARC/INFO, and therefore required more work than that using the more sophisticated GIS software packages. With the continuing increase in the amount of available data and the ongoing development of more powerful computers and software packages, models that were once too intimidating due to complexity are presently not only within reach, but are now being implemented.
Stull, Roland B. 1995. "Meteorology Today For Scientists and Engineers", West Publishing Company, Minneapolis/St. Paul, New York, Los Angeles, San Francisco. pp. 42 - 45, ISBN 0-314-06471-0
Clark Labs 1995. "Explorations in Geographic Information Systems Technology" Workbook Series Volume 5: "GIS and Mountain Environments", Exercise 4: "Modeling the Impact of Mountains on Regional Climates". Kristin Schneider and Paul Robbins, editors. Published by the United Nations Institute for Training and Research (UNITAR). pp. 4-1 - 4-15.