r.flow.html 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. <h2>DESCRIPTION</h2>
  2. <em>r.flow</em> generates flowlines using a combined raster-vector
  3. approach
  4. (see <a href="http://www4.ncsu.edu/~hmitaso/gmslab/papers/hmg.rev1.ps">Mitasova
  5. and Hofierka 1993</a>
  6. and <a href="http://www4.ncsu.edu/~hmitaso/gmslab/papers/ijgis.html">Mitasova
  7. et al. 1995</a>) from an input <b>elevation</b> raster map (integer or
  8. floating point), and optionally an input <b>aspect</b> raster map
  9. and/or an input <b>barrier</b> raster map.
  10. <p>
  11. There are three possible output raster maps which can be produced in any
  12. combination simultaneously: a vector map <b>flowline</b> of flowlines,
  13. a raster map
  14. <b>flowlength</b> of flowpath lengths, and a raster map
  15. <b>flowaccumulation</b> of flowline densities (which are equal upslope
  16. contributed areas per unit width, when multiplied by resolution).
  17. <h2>NOTES</h2>
  18. Aspect used for input must follow the same rules as aspect computed in
  19. other modules (see <em><a href="v.surf.rst.html">v.surf.rst</a></em>
  20. or <em><a href="r.slope.aspect.html">r.slope.aspect</a></em>).
  21. <p>
  22. Output <b>flowline</b> is generated downhill. The line segments of
  23. flowline vectors have endpoints on edges of a grid formed by drawing
  24. imaginary lines through the centers of the cells in the elevation
  25. map. Flowlines are generated from each cell downhill by default; they
  26. can be generated uphill using the flag <b>-u</b>. A flowline stops if
  27. its next segment would reverse the direction of flow (from up to down
  28. or vice-versa), cross a barrier, or arrive at a cell with undefined
  29. elevation or aspect. Another option, <b>skip</b>, indicates that
  30. only the flowlines from every val-th cell are to be included
  31. in <b>flowline</b>. The default <b>skip</b> is <tt>max(1,&nbsp;&lt;rows
  32. in elevation&gt;/50,&nbsp;&lt;cols in elevation&gt;/50)</tt>. A
  33. high <b>skip</b> usually speeds up processing time and often improves
  34. the readability of a visualization of <b>flowline</b>.
  35. <p>
  36. Flowpath length output is given in a raster map <b>flowlength</b>. The value
  37. in each grid cell is the sum of the planar lengths of all segments of the
  38. flowline generated from that cell. If the flag <b>-3</b> is given, elevation
  39. is taken into account in calculating the length of each segment.
  40. <p>Flowline density downhill or uphill output is given in a raster map
  41. <b>flowaccumulation.</b> The value in each grid cell is the number of
  42. flowlines which pass through that grid cell, that means the number of
  43. flowlines from thec entire map which have segment endpoints within that cell.
  44. With the <b>-m</b> flag less memory is used as aspect at each cell is
  45. computed on the fly. This option incurs a severe performance penalty. If
  46. this flag is given, the <b>aspect</b> input map (if any) will be ignored.
  47. <!-- doesn't exist
  48. <p><b>-M</b> Use a fixed size memory and utilize page-swapping to handle
  49. large input files. This option incurs a severe performance penalty but
  50. is the only way to handle arbitrarily-large data files. If this flag is
  51. given, the <b>-m</b> flag will be ignored.
  52. -->
  53. The <b>barrier</b> parameter is a raster map name with non-zero
  54. values representing barriers as input.
  55. <p>
  56. For best results, use input elevation maps with high precision units (e.g.,
  57. centimeters) so that flowlines do not terminate prematurely in flat areas.
  58. To prevent the creation of tiny flowline segments with imperceivable changes
  59. in elevation, an endpoint which would land very close to the center of
  60. a grid cell is quantized to the exact center of that cell. The maximum
  61. distance between the intercepts along each axis of a single diagonal segment
  62. and another segment of 1/2 degree different aspect is taken to be "very
  63. close" for that axis. Note that this distance (the so-called &quot;quantization
  64. error&quot;) is about 1-2% of the resolution on maps with square cells.
  65. <p>The values in length maps computed using the <b>-u</b> flag represent
  66. the distances from each cell to an upland flat or singular point. Such
  67. distances are useful in water erosion modeling for computation of the LS
  68. factor in the standard form of USLE. Uphill flowlines merge on ridge lines;
  69. by redirecting the order of the flowline points in the output vector map,
  70. dispersed waterflow can be simulated. The density map can be used for the
  71. extraction of ridge lines.
  72. <p>Computing the flowlines downhill simulates the actual flow (also known
  73. as the raindrop method). These flowlines tend to merge in valleys; they
  74. can be used for localization of areas with waterflow accumulation and for
  75. the extraction of channels. The downslope flowline density multiplied by
  76. the resolution can be used as an approximation of the upslope contributing
  77. area per unit contour width. This area is a measure of potential water
  78. flux for the steady state conditions and can be used in the modeling of
  79. water erosion for the computation of the unit stream power based LS factor
  80. or sediment transport capacity.
  81. <p><em>r.flow</em> has been designed for modeling erosion on
  82. hillslopes and has rather strict conditions for ending flowlines. It
  83. is therefore not very suitable for the extraction of stream networks
  84. or delineation of watersheds unless a DEM without pits or flat areas
  85. is available (<em><a href="r.fill.dir.html">r.fill.dir</a></em> can be
  86. used to fill pits).
  87. <p> To label the vector flowlines automatically, the user can use
  88. <em><a href="v.category.html">v.category</a></em> (add categories).
  89. <h3>Algorithm background</h3>
  90. <p>
  91. <em>r.flow</em> uses an original vector-grid algorithm which uses an
  92. infinite number of directions between 0.0000... and 360.0000... and
  93. traces the flow as a line (vector) in the direction of gradient
  94. (rather than from cell to cell in one of the 8 directions = D-infinity
  95. algorithm). They are traced in any direction using aspect (so there is
  96. no limitation to 8 directions here). The D8 algorithm produces zig-zag
  97. lines. The value in the outlet is very similar for <em>r.flow</em>
  98. algorithm (because it is essentially the watershed area), however the
  99. spatial distribution of flow, especially on hillslopes is quite
  100. different. It is still a 1D flow routing so the dispersal flow is not
  101. accurately described, but still better than D8.
  102. <p>
  103. <em>r.flow</em> uses a single flow algorithm, i.e. all flow is
  104. transported to a single cell downslope.
  105. <!--
  106. Differences between <em>r.flow</em> and <em>r.flowmd</em>
  107. <p>
  108. <ol>
  109. <li> <em>r.flow</em> has an option to compute slope and aspect internally thus making
  110. the program capable to process much larger data sets than <em>r.flowmd</em>. It has
  111. also 2 additional options for handling of large data sets but it is not
  112. known that they work properly.
  113. <li> the programs handle the special cases when the flowline passes exactly
  114. (or very close) through the grid vertices differently.
  115. <li> <em>r.flowmd</em> has the simplified multiple flow addition so the results are
  116. smoother.
  117. </ol>
  118. In conclusion, <em>r.flowmd</em> produces nicer results but is slower and it does not
  119. support as large data sets as <em>r.flow</em>.
  120. -->
  121. <h3>Diagnostics</h3>
  122. <div class="code"><pre>
  123. Elevation raster map resolution differs from current region resolution
  124. </pre></div>
  125. The resolutions of all input raster maps and the current region must
  126. match (see <em><a href="g.region.html">g.region</a></em>).
  127. <div class="code"><pre>
  128. Resolution too unbalanced
  129. </pre></div>
  130. The difference in length between the two axes of a grid cell is so
  131. great that quantization error is larger than one of the
  132. dimensions. Resample the map and try again.
  133. <h2>EXAMPLE</h2>
  134. In this example a flow line vector map, a flow path length raster map and
  135. a flow accumulation raster map are computed from an elevation raster map
  136. (North Carolina sample dataset):
  137. <div class="code"><pre>
  138. g.region raster=elevation -p
  139. r.flow elevation=elevation skip=3 flowline=flowline flowlength=flowlength \
  140. flowaccumulation=flowaccumulation
  141. </pre></div>
  142. <center>
  143. <img src="r_flow_line.png" alt="flow line">
  144. <img src="r_flow_length.png" alt="flow path length">
  145. <img src="r_flow_accumulation.png" alt="flow accumulation map">
  146. <p>
  147. Figure: Flow lines with underlying elevation map;
  148. flow lines with underlying flow path lengths (in map units: meters);
  149. flow accumulation map (zoomed view)
  150. </center>
  151. <!--
  152. d.vect map=flowline
  153. d.rast map=flowlength
  154. d.rastmap=flowaccumulation
  155. -->
  156. <h2>REFERENCES</h2>
  157. <ul>
  158. <li>Mitasova, H., L. Mitas, 1993, Interpolation by regularized spline with
  159. tension : I. Theory and implementation. Mathematical Geology 25, p. 641-655.
  160. (<a href="http://www4.ncsu.edu/~hmitaso/gmslab/papers/lmg.rev1.ps">online</a>)
  161. <li>Mitasova and Hofierka 1993 : Interpolation by Regularized Spline with
  162. Tension: II. Application to Terrain Modeling and Surface Geometry Analysis.
  163. Mathematical Geology 25(6), 657-669
  164. (<a href="http://www4.ncsu.edu/~hmitaso/gmslab/papers/hmg.rev1.ps">online</a>).
  165. <li>Mitasova, H., Mitas, L., Brown, W.M., Gerdes, D.P., Kosinovsky, I.,
  166. Baker, T., 1995: Modeling spatially and temporally distributed phenomena:
  167. New methods and tools for GRASS GIS. International Journal of Geographical
  168. Information Systems 9(4), 433-446.
  169. <li>Mitasova, H., J. Hofierka, M. Zlocha, L.R. Iverson, 1996, Modeling
  170. topographic potential for erosion and deposition using GIS. Int. Journal of
  171. Geographical Information Science, 10(5), 629-641. (reply to a comment to
  172. this paper appears in 1997 in Int. Journal of Geographical Information
  173. Science, Vol. 11, No. 6)
  174. <li>Mitasova, H.(1993): Surfaces and modeling. Grassclippings (winter and
  175. spring) p.18-19.
  176. </ul>
  177. <h2>SEE ALSO</h2>
  178. <em>
  179. <a href="r.basins.fill.html">r.basins.fill</a>,
  180. <a href="r.drain.html">r.drain</a>,
  181. <a href="r.fill.dir.html">r.fill.dir</a>,
  182. <a href="r.water.outlet.html">r.water.outlet</a>,
  183. <a href="r.watershed.html">r.watershed</a>,
  184. <a href="v.category.html">v.category</a>,
  185. <a href="v.to.rast.html">v.to.rast</a>
  186. </em>
  187. <h2>AUTHORS</h2>
  188. <i>Original version of program:</i> Maros Zlocha and Jaroslav
  189. Hofierka, Comenius University, Bratislava, Slovakia
  190. <p>
  191. <i>The current version of the program (adapted for GRASS 5.0)</i>:
  192. Joshua Caplan, Mark Ruesink, Helena Mitasova, University of Illinois
  193. at Urbana-Champaign with support from USA CERL.
  194. <a href="http://www4.ncsu.edu/~hmitaso/gmslab/">GMSL/University of Illinois
  195. at Urbana-Champaign</a>
  196. <p>
  197. <i>Last changed: $Date$</i>