r.flowmd(1)	       Grass User's Manual	      r.flowmd(1)



NNAAMMEE
       _r_._f_l_o_w_m_d   -  construction  of  slope  lines  (flowlines),
       flowpath lengths and flowline  densities  from	a  raster
       digital	elevation  model using a modified multiple direc-
       tions  algorithm.


       _(_G_R_A_S_S _R_a_s_t_e_r_/_V_e_c_t_o_r _P_r_o_g_r_a_m_)

SSYYNNOOPPSSIISS
       rr..fflloowwmmdd

       rr..fflloowwmmdd hheellpp

       rr..fflloowwmmdd  [--dd ] eelleevviinn==nnaammee  aassppiinn==nnaammee
	[bbaarrrriieerriinn==nnaammee ] [sskkiipp==vvaall ] [fflloouutt==nnaammee  [llggoouutt==nnaammee	]
       [ddssoouutt==nnaammee ]



DDEESSCCRRIIPPTTIIOONN
       _r_._f_l_o_w_m_d



	generates   flowlines	using  a  combined  raster-vector
       approach from input elevation _e_l_e_v_i_n , aspect  _a_s_p_i_n   and
       optionally barrier _b_a_r_r_i_e_r_i_n  raster maps.

	Input  elevation  raster  map  with integer values should
       have values in centimeters preventing  premature  flowline
       stop in flat areas.  Aspect used for input must follow the
       same rules as aspect computed in other GRASS programs (see
       r.slope.aspect,	s.surf.rst). Barriers are defined by non-
       zero values in an input raster map _b_a_r_i_e_r_i_n  .  Make  sure
       that  the  resolution of your current region is set to the
       resolution of the elevation raster file.

	There are three possible output maps which  can  be  pro-
       duced  in  any  combination  simultaneously: a vector file
       _f_l_o_u_t  of flowlines,  a	raster	map  _l_g_o_u_t   of  flowpath
       lengths,  and  a  raster  map _d_s_o_u_t of flowline densities.
       Flowlines are constructed by straight line segments  (vec-
       tors)  with  endpoints creating intersections of the flow-
       line with edges of the imaginary mesh  connecting  centers
       of  the	grid  cells.   Flowlines  are generated from each
       cell uphill by default; they  can  be  generated  downhill
       using  the flag --dd .  A flowline stops if its next segment
       would reverse the direction of flow (from up  to  down  or
       vice-versa),  cross  a  barrier,  or arrive at a cell with
       undefined elevation or aspect.  Another option, sskkiipp  =_v_a_l
       , indicates that only the flowlines from every _v_a_l th cell
       are to be included in _f_l_o_u_t .  The default sskkiipp	is  1.	A
       high  sskkiipp   usually  speeds  up processing time and often
       improves the readability of a visualization of _f_l_o_u_t .




       Flowpath length output _f_l_o_u_t  gives the horizontal  length
       of  the	flowline  for given grid cell in units defined by
       your mapset. It is computed  as	the  sum  of  the  planar
       length of all straight flowline segments.


       Flowline  density  output  _d_s_o_u_t  represents the number of
       generated flowlines passing through the given  cell.  This
       program	uses  a  modified  multiple directions algorithm.
       Flowline density for each flowline passing between 2  grid
       cell  centers  is   fractioned between these grid cells by
       distance. This algorithm smoothes  flowline  densities  on
       convex (dispersing) slopes. Flowline lengths and densities
       can be computed for both uphill and downhill  directionss.



OOPPTTIIOONNSS
       The user can run this program either interactively or non-
       interactively. The program will be  run	non-interactively
       if  the user specifies program arguments and flag settings
       on the command line using the form:


       rr..fflloowwmmdd  [--dd ] eelleevviinn==nnaammee  aassppiinn==nnaammee	 [bbaarrrriieerriinn==nnaammee]]
       [[sskkiipp==vvaall ] [fflloouutt==nnaammee ] [llggoouutt==nnaammee ] [ddssoouutt==nnaammee ]




       Alternately,  the  user	can  simply type rr..fflloowwmmdd  on the
       command line without program arguments.	In this case, the
       user  will  be prompted for parameter values and flag set-
       tings using the standard GRASS parser interface.




       FFllaagg::

       [--dd ]
	   Generate flowlines downhill (default  generates  flow-
	   lines uphill)





       PPaarraammeetteerrss::

       eelleevviinn==_n_a_m_e
	   Use	the  existing raster file with elevations_n_a_m_e  as
	   input.

       aassppiinn==_n_a_m_e
	   Use the  existing  raster  file  with  aspect_n_a_m_e   as
	   input.

       bbaarrrriieerriinn==_n_a_m_e
	    "  4m Use the existing raster file with non-zero val-
	   ues representing barriers with _n_a_m_e	as input.

       sskkiipp==_v_a_l
	   Set the the number of cells	skipped  for  origins  of
	   flowlines to _v_a_l .

       fflloouutt==_n_a_m_e
	   Output  coordinates	of flowlines to vector file named
	   _n_a_m_e .

       llggoouutt==_n_a_m_e
	   Output flowpath length values  to  raster  file  named
	   _n_a_m_e .

       ddssoouutt==_n_a_m_e
	   Output  flowline  density  values to raster file named
	   _n_a_m_e .




AAllggoorriitthhmm bbaacckkggrroouunndd
       1. Construction of flow-lines (slope-lines):  r.flow  uses
       an  original  vector-grid algorithm which uses an infinite
       number of directions  between  0.0000...  and  360.0000...
       and traces the flow as a line (vector) in the direction of
       gradient (rather than from cell to cell in one  of  the	8
       directions = D-infinity algorithm). They are traced in any
       direction using aspect (so there is  no	limitation  to	8
       directions here). The D8 algorithm produces zig-zag lines.
       The value in the outlet is very similar for both  r.flowmd
       and  r.flow  algorithms	(because  it  is  essentially the
       watershed area), however the spatial distribution of flow,
       especially on hillslopes is quite different. It is still a
       1D flow routing so the dispersal flow  is  not  accurately
       described, but still better than D8.

       2.  Computation	of  contributing  areas: r.flowmd divides
       this flow proportionally to two downslope  adjacent  cells
       using the distance between the intersection node (flowline
       node) and these adjacent cell centres.  (All  these  three
       points  are  always  on	one  connection line).	Therefore
       r.flowmd uses a multiple flow algorithm but using  a  flux
       decomposition  different from Desmet & Govers (1996). D. &
       G. split the flux vector to two ordinal components (cells)
       using  sin,  cos  of  the  aspect  value. The flux is then
       divided to 2 from 4 neighboring cardinal cells.	The algo-
       rithm  used  in	r.flowmd divides the flux to two adjacent
       downslope cells (always	one  cardinal  and  one  diagonal
       cell) using a procedure as described above.

NNOOTTEESS
       Flowlines generated uphill are used for computation of the
       flowpath length	(slope	lenghts)  defining  the  distance
       between	the  grid  cell    and	upland area.  This can be
       used, for example, in water erosion modeling for the  com-
       putation  of LS factor in standard form of USLE. Flowlines
       can be also generated downhill from  each  grid	point  to
       simulate  the topographic potential for quasi steady-state
       overland water flow. Downslope flowline density multiplied
       by  grid  cell  area gives the upslope contributing  area.
       This topographic parameter  defines  an	area  from  which
       water  inflows to the given cell. This area is an estimate
       of potential steady-state water flux and can  be  used  in
       the  modeling of water erosion and for computation of unit
       stream  power  based  LS  factor.  The  program	has  been
       designed for modeling erosion on hillslopes and has a very
       strict condition for ending the flowline. It is	therefore
       not  very suitable for the extraction of stream network or
       delineation of watersheds unless a  DEM	without  pits  or
       flat areas is available.



	To label the vector flowlines automatically, the user can
       use v.llabel.

FFUURRTTHHEERR NNOOTTEESS
       Differences between _r_._f_l_o_w and _r_._f_l_o_w_m_d



	       r.flow has an option to compute slope  and  aspect
	      internally  thus making the program capable to pro-
	      cess much larger data sets than  r.flowmd.  It  has
	      also  2  additional  options  for handling of large
	      data sets but it is not known that they work  prop-
	      erly.

	       the  programs  handle  the  special cases when the
	      flowline passes exactly (or very close) through the
	      grid vertices differently.

	       r.flowmd has the simplified multiple flow addition
	      so the results are smoother.

       In conclusion, _r_._f_l_o_w_m_d	produces  nicer  results  but  is
       slower and it do support as large data sets as _r_._f_l_o_w.

SSEEEE AALLSSOO
       _r_._f_l_o_w_,

       _r_._w_a_t_e_r_s_h_e_d_,

       _r_._d_r_a_i_n_,

       _r_._s_l_o_p_e_._a_s_p_e_c_t_,

       _s_._s_u_r_f_._r_s_t _v_._l_l_a_b_e_l






AAUUTTHHOORR
       Jaroslav Hofierka, GeoModel s.r.o., Bratislava, Slovakia



RREEFFEERREENNCCEESS
       Mitasova, H., L. Mitas, 1993, Interpolation by regularized
       spline with tension : I. Theory and implementation. Mathe-
       matical Geology 25, p. 641-655.	(online)

       GMSL/University of Illinois at Urbana-Champaign

       Mitasova, H., J. Hofierka, 1993, Interpolation by regular-
       ized spline with tension :  II.	 Application  to  terrain
       modeling and surface geometry analysis. Mathematical Geol-
       ogy 25, p. 657-669. (online)

	Mitasova, H., Hofierka, J., Zlocha, M.,  Iverson,  R.  L.
       (1996).	Modelling  Topographic	Potential for Erosion and
       Deposition Using GIS. International Journal of  Geographi-
       cal Information Systems, 10, 629-641.  (online)

       Mitasova,  H.(1993): Surfaces and modeling. Grassclippings
       (winter and spring) p.18-19.

       Mitasova, H., J. Hofierka, M. Zlocha, L.R. Iverson,  1996,
       Modeling  topographic potential for erosion and deposition
       using GIS. Int. Journal of Geographical	Information  Sci-
       ence,  10(5),  629-641.	(reply to a comment to this paper
       appears in 1997 in Int. Journal of  Geographical  Informa-
       tion Science, Vol. 11, No. 6)

       _L_a_s_t _c_h_a_n_g_e_d_: _$_D_a_t_e_: _2_0_0_2_/_0_3_/_0_1 _0_0_:_0_8_:_3_1 _$



GRASS 5.0					      r.flowmd(1)
