[GRASS-user] r.lake units

As usual, I continue to be thoroughly impressed with the capabilities and functionality of GRASS GIS! A huge thanks out to everyone contributing to the ever growing success of GRASS…

r.lake is really cool. I am looking forward to producing some animated raster series with it. Currently, I am using it for stage/storage calculations of natural and man made features. The blue color ramp for color depth is a very nice touch for illustrative purposes. This is another “out of the box” function in GRASS for which there is no comparative function in that other commercial GIS software (to my knowledge). I really like the calculations r.lake outputs as well such as area and volume. Outstanding.

I have read through the 6.3 man pages, and could not find this answer. The output of r.lake gives a warning stating that “Volume is only correct if lake depth (terrain raster map) is in meters.” To me this was ambiguous if x,y and z of the terrain map need to be in meters, or just the Z value.

I presumed that at a minimum the Z value needs to be converted to meters. My data resides in stateplane, units feet, coordinate system. I did a crude measurement of the area of the outputted lake area to compare it against the “lake area” output from r.lake. Upon converting my measurements (in feet) against the area reported by r.lake (meters), it seems that the lake area output converts the area to meters automagically, however, I wanted to verify this on the list.

After the long preamble, finally the question… For correct lake volumes outputted by r.lake, can the data be in feet for x,y, and meters for Z to obtain correct volume? As a kind suggestion, perhaps input unit clarification would be a nice addition to the man page for this cool function.

Mark

Hi,

thanks for good words :slight_smile: That blue gradient took some time till it
looked good :slight_smile: If I will have time, I will look how to add it to
default GRASS gradients, as currently it is hardcoded into r.lake code
:wink:

Talking about units - warning about volume is a bit incorrect, but now
I have no time to seek proper solution. Volume calculation in r.lake
is done by taking cell size (G_area_of_cell_at_row(row)) * cell count
* cell depth. As You may see - it will work only if depth is in same
units as cell size. There was some movement to add raster metadata
about it's units, but as I'm still in summer regime, I have no time to
investigate how to use it to make volume calculations allways correct
(i.e. if area is in m but depth (elevation) is in feet or any other
strange unit). I will put this issue on my (long) to-do list (nearby
wish to have 3D raster output).
r.lake reported area will be in units returned by
G_area_of_cell_at_row(row). IIRC they where meters. This also could be
changed to user's preferred units.
Anyway - You can always use other tools for area/volume calculations
(r.stats,r.mapcalc) etc.

If You have more questions - feel free to ask.

WBR,
Maris.