Necesito calcular la pendiente, o el gradiente de la corriente, de dos maneras diferentes:
-
Pendiente del canal principal desde el punto de vertido hasta el punto de cabecera/fuente a lo largo de la red de corrientes vectoriales
-
una pendiente local consistente en 100 metros hacia arriba desde el punto de vertido
Estoy utilizando los datos de alta resolución del NHD (necesito utilizar este conjunto de datos porque algunos otros cálculos dependen de él, así que no quiero derivar mis propios flujos de datos del DEM) y tengo algo menos de 500 "puntos de vertido" que se ajustan a los datos de alta resolución del NHD. Comprendo perfectamente la intención y los conceptos, pero me cuesta componer los métodos para automatizar esto para todos los sitios dentro de los límites de ArcGIS (versión 9.3.1). Dispongo de datos DEM de 10 m para toda la zona de estudio para obtener las elevaciones.
Obstáculos con los que estoy luchando mentalmente:
-
Cómo identificar todos los segmentos del arroyo que componen el "canal principal" para poder sumar sus longitudes. En algunos casos, cerca de la cabecera del arroyo puede haber un afluente de primer orden, pero entonces el canal principal también tiene el mismo orden de arroyo (he calculado los órdenes de arroyo de Strahler y de Shreve utilizando una herramienta llamada RivEx, de modo que los segmentos de arroyo se atribuyen con estos, así como sus nodos de origen y de destino a través de la herramienta RivEx, y tengo los nodos de origen y de destino). No parece haber un atributo común en los atributos de las líneas de flujo de NHD (por ejemplo, el ID del GNIS) para disolver esencialmente lo común, o al menos para seleccionar de alguna manera todos ellos. Muchos de los segmentos simplemente no tienen ID de GNIS.
-
Cómo medir sólo 100 m hacia arriba desde un punto de vertido y luego generar un nuevo "nodo desde" para representar esa ubicación de 100 m aguas arriba para obtener datos de elevación y así calcular la pendiente local del arroyo.
He estado trabajando muchas horas así que mi cerebro probablemente está haciendo esto más difícil de lo que es...
y me he encontrado con estos otros dos posts en GIS StackExchange pero he estado luchando con la forma de adaptarlos a mis necesidades:
¿Flujo de trabajo para determinar el gradiente de la corriente?
¿Asignación de puntos a sus respectivos Reaches mediante Stream Gradient?
Parece que todas las piezas están ahí ("m-aware vector streams"), etc. pero empiezo a preguntarme si no es así sin, de nuevo, un identificador común para identificar qué segmentos aguas arriba deben considerarse parte del "canal principal" aguas abajo.
He aquí un ejemplo:
En el ejemplo mostrado, los puntos rojos más oscuros son los nodos, y los puntos rojos brillantes son los puntos de muestreo del flujo. Para calcular la pendiente del canal principal, si escribo un programa de automatización necesito algún tipo de atributo para poder identificar cuáles de los segmentos mostrados aguas arriba son parte del "canal principal". En este caso, el segmento que tiene los puntos de muestreo (rojo brillante) y el segmento aguas arriba que se ramifica a la izquierda tienen el mismo ID del GNIS, por lo que podría utilizarlo. Pero los datos del NHD tienen muchos casos en los que arroyos más pequeños de esta naturaleza simplemente no tienen ID del GNIS. Y la información del nodo desde/hasta o incluso la tabla de flujo de NHD que tengo simplemente te dice que ambos segmentos aguas arriba fluyen hacia el segmento del punto de muestreo. Con este ejemplo como demostración de otras instancias que carecen de un ID GNIS, necesito una forma de automatizar la decisión de CUÁL segmento aguas arriba usar para calcular la pendiente del canal principal en un programa con script. ¿Qué otra cosa podría usarse para hacer esto?
Otro ejemplo en el que el ID del GNIS no podría utilizarse como forma de identificar hidrológicamente todos los segmentos que componen el canal principal es cuando una sección aguas arriba tiene un ID del GNIS y un nombre único del GNIS (por ejemplo, "arroyo X", y luego toma un nombre diferente (por ejemplo, arroyo "y") desde una confluencia con otro trib. Un punto en el arroyo "y" sigue recibiendo hidrológicamente el flujo del canal principal del arroyo x, pero el ID del GNIS no puede utilizarse para conectar los dos.