La ayuda de ArcGIS dice:
Las cuencas hidrográficas se pueden delinear desde un DEM calculando la dirección del flujo y usándola en la herramienta Cuencas hidrográficas. Para determinar el área contribuyente, primero se debe crear un ráster que represente la dirección del flujo con la herramienta Dirección del flujo.
La dirección del flujo se calcula a partir del DEM utilizando el método D8 , donde el flujo se abstrae calculando para cada celda, a cuál de sus 8 vecinos, fluirá el agua de esta celda.
Hay muchas alternativas a D8, como Rho8, Froh8 y Stream Tubes, pero la mayoría del software GIS, incluido ArcGIS, tiende a usar D8, ya que es más simple y menos computacionalmente intensivo que otros.
Hace unos años, estaba trabajando en un proyecto de delineación de cuencas hidrográficas, y nos enfrentamos a varios problemas debido a ArcGIS que utiliza el método D8. Los dos problemas principales fueron
- D8 solo permite flujo unidireccional. El agua puede fluir solo en una dirección desde una celda.
- Los flujos de corriente generados tenían un gran sesgo a lo largo del eje diagonal. Esto dio lugar a corrientes de aspecto extraño.
A partir de nuestros datos, sabíamos que estos dos problemas eran grandes, por lo que había desarrollado algunas herramientas para generar direcciones de flujo utilizando métodos híbridos.
Una de mis primeras tareas fue realizar ingeniería inversa en la herramienta de cálculo de captación. Descubrí que era lógicamente bastante simple. Si desea encontrar la cuenca para un punto dado (también llamado punto de fluidez), primero encuentre la celda a la que pertenece. A menudo intentará ajustarlo al punto con la acumulación de flujo más alta en una tolerancia dada.
Para esta celda, encontrará todas las celdas en el vecindario que contribuyen a ella. Para cada una de estas celdas vecinas, encontrará las celdas que contribuyen a ellas, etc. Continúa este proceso iterativo hasta que no encuentres nuevas celdas. Ahí es cuando has llegado a las líneas de la cresta o al límite de la cuenca.
Encontré que mi código simple que hizo esto para los rásteres ASCII, dio un resultado casi similar en comparación con la herramienta Watershed de ArcGIS. A veces solía haber una diferencia de algunas celdas en el límite, por lo que estoy convencido de que ArcGIS sigue un algoritmo D8 no modificado.