Acumulación de flujo (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Crea un ráster de flujo acumulado en cada celda. Opcionalmente, puede aplicar un factor de peso.

Más información sobre cómo funciona Acumulación de flujo

Ilustración

Ilustración de Acumulación de flujo D8
Flow_Acc = FlowAccumulation(Flow_Dir)

Uso

  • El resultado de Acumulación de flujo es un ráster de flujo acumulado para cada celda, determinado por la acumulación del peso de todas las celdas que fluyen hacia cada celda de pendiente descendente.

  • La herramienta Acumulación de flujo admite tres algoritmos de modelo de flujo mientras se computa el flujo acumulado. Estos son los métodos de flujo D8, Dirección de flujo múltiple (MFD) y D-Infinity (DINF).

  • Si el ráster de dirección de flujo de entrada no se crea con la herramienta Dirección de flujo existe la posibilidad de que se repita el flujo definido. Si la dirección del flujo contiene un bucle, la Acumulación de flujo entrará en un ciclo infinito y nunca finalizará.

    La dirección del flujo de entrada se puede crear utilizando los métodos D8, Dirección del flujo múltiple (MFD) o D-Infinity (DINF). El tipo de ráster de dirección de flujo de entrada entre estos tres influye en cómo la herramienta Acumulación de flujo realiza las particiones y acumula el flujo en cada celda. Utilice el Tipo de dirección del flujo de entrada para especificar el método que se utilizó cuando se creó el ráster de dirección del flujo.

  • Las celdas con dirección de flujo indefinida solo recibirán un flujo; no contribuirán a ningún flujo aguas abajo.

    Para un ráster de dirección de flujo de entrada D8, se considera que una celda tiene una dirección de flujo indefinida si su valor en el ráster de dirección de flujo es distinto de 1, 2, 4, 8, 16, 32, 64 o 128.

    Para un ráster de dirección del flujo de entrada D-Infinity, se considera que una celda tiene una dirección de flujo indefinida si su valor en el ráster de dirección de flujo es distinto de -1.

  • El flujo acumulado está basado en la cantidad total de celdas, o en una fracción de las mismas, que fluyen hacia cada celda en el ráster de salida. En esta acumulación no se considera la celda de procesamiento actual.

  • Las celdas de salida con una acumulación de flujo alta son áreas de flujo concentrado y se pueden utilizar para identificar canales de curso de agua.

  • Las celdas de salida con una acumulación de flujo de cero son alturas topográficas locales y se pueden utilizar para identificar crestas.

  • La herramienta Dirección del flujo no respeta la configuración del entorno Compresión. El ráster de salida siempre estará descomprimido.

  • Esta herramienta admite el procesamiento en paralelo. Si su equipo tiene varios procesadores o procesadores con varios núcleos, puede conseguir un mayor rendimiento, especialmente en los datasets mayores. El tema de ayuda Procesamiento en paralelo con Spatial Analyst contiene más detalles acerca de esta posibilidad y cómo configurarla.

    Al utilizar el procesamiento en paralelo, se escriben datos temporales para administrar los lotes de datos a medida que se procesan. La ubicación de la carpeta temporal predeterminada será su unidad C local. Es posible controlar la ubicación de esta carpeta cambiando el valor de una variable de entorno del sistema denominada TempFolders y especificando la ruta de la carpeta que se desea usar (por ejemplo, E:\RasterCache). Si tiene privilegios de administrador en su equipo, también puede usar una clave de registro (por ejemplo, [HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro\Raster]).

    De forma predeterminada, esta herramienta usará el 50 por ciento de los núcleos disponibles. Si los datos de entrada tienen un tamaño inferior a 5.000 x 5.000 celdas, es posible que se utilicen menos núcleos. Es posible controlar el número de núcleos empleados por la herramienta, a través de la configuración de entorno de Factor de procesamiento en paralelo.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Sintaxis

FlowAccumulation(in_flow_direction_raster, {in_weight_raster}, {data_type}, {flow_direction_type})
ParámetroExplicaciónTipo de datos
in_flow_direction_raster

Ráster de entrada que muestra la dirección del flujo de cada celda.

El ráster de dirección de flujo se puede crear con la herramienta Dirección de flujo.

El ráster de dirección del flujo se puede crear con los métodos D8, Dirección del flujo múltiple (MFD) y D-Infinity. Utilice el parámetro flow_direction_type para especificar el método que se utilizó cuando se creó el ráster de dirección del flujo.

Raster Layer
in_weight_raster
(Opcional)

Ráster de entrada opcional para aplicar un peso en cada celda.

Si no se especifica ningún ráster de peso, se aplica un peso predeterminado de 1 a cada celda. Para cada celda del ráster de salida, el resultado será la cantidad de celdas que fluyan en el mismo.

Raster Layer
data_type
(Opcional)

El ráster de acumulación de salida puede ser de tipo entero, de punto flotante o doble.

  • FLOATEl ráster de salida será de tipo punto flotante. Esta es la opción predeterminada.
  • INTEGEREl ráster de salida será de tipo entero.
  • DOUBLEEl ráster de salida será de tipo doble.
String
flow_direction_type
(Opcional)

El ráster de dirección del flujo de entrada puede ser de tipo D8, Dirección del flujo múltiple (MFD) o D-Infinity (DINF).

  • D8El ráster de dirección del flujo de entrada es de tipo D8. Esta es la opción predeterminada.
  • MFDEl ráster de dirección del flujo de entrada es de tipo Dirección del flujo múltiple (MFD).
  • DINFEl ráster de dirección del flujo de entrada es de tipo D-Infinity (DINF).
String

Valor de retorno

NombreExplicaciónTipo de datos
out_accumulation_raster

El ráster de salida que muestra el flujo acumulado para cada celda.

Raster

Muestra de código

Ejemplo 1 de FlowAccumulation (ventana de Python)

En este ejemplo se crea un ráster de flujo acumulado en cada celda de un ráster de cuadrícula de dirección de flujo de entrada.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFlowAccumulation = FlowAccumulation("flowdir")
outFlowAccumulation.save("C:/sapyexamples/output/outflowacc01")
Ejemplo 2 de FlowAccumulation (script independiente)

En este ejemplo se crea un ráster de flujo acumulado en cada celda de un ráster IMG de dirección de flujo de entrada.

# Name: FlowAccumulation_Ex_02.py
# Description: Creates a raster of accumulated flow to each cell.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inFlowDirRaster = "flowdir"
inWeightRaster = ""
dataType = "INTEGER"

# Execute FlowDirection
outFlowAccumulation = FlowAccumulation(inFlowDirRaster, inWeightRaster, dataType)

# Save the output 
outFlowAccumulation.save("C:/sapyexamples/output/outflowacc02.img")

Información de licenciamiento

  • Basic: Requiere Spatial Analyst
  • Standard: Requiere Spatial Analyst
  • Advanced: Requiere Spatial Analyst

Temas relacionados