Este es el comando r.lakegrass que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
r.lago - Llena el lago en un punto dado hasta un nivel determinado.
PALABRAS CLAVE
trama, hidrología, peligro, inundación
SINOPSIS
r.lago
r.lago --ayuda
r.lago [-no] elevación=nombre nivel de agua=flotar [lago=nombre ] [coordenadas=Noreste]
[dispersores =nombre ] [-exagerar] [-ayuda] [-verboso] [-tranquilo] [-ui]
Banderas
-n
Utilice valores de profundidad negativos para el mapa ráster del lago
-o
Sobrescribir el mapa de semillas con el mapa de resultados (lago)
--Sobrescribir
Permitir que los archivos de salida sobrescriban los archivos existentes
--ayuda
Resumen de uso de impresión
--verboso
Salida del módulo detallado
--tranquilo
Salida de módulo silencioso
--ui
Forzar el inicio del cuadro de diálogo GUI
parámetros:
elevación=nombre [requerido]
Nombre del mapa ráster de elevación de entrada
nivel de agua=flotar [requerido]
Nivel del agua
lago=nombre
Nombre del mapa ráster de salida
coordenadas=Noreste
Coordenadas del punto de semilla
Se debe especificar este par de coordenadas o un mapa semilla
dispersores =nombre
Ingrese el mapa ráster con los puntos de inicio dados (al menos 1 celda> 0)
Se debe especificar este parámetro o un par de coordenadas
DESCRIPCIÓN
El módulo llena un lago hasta un nivel de agua objetivo desde un punto de inicio determinado. El usuario puede
piensa en ello como r.crecer con controles adicionales de elevación. El mapa ráster resultante
contiene celdas con valores que representan la profundidad del lago y NULL para todas las demás celdas más allá del
lago. La profundidad del lago se informa en relación con el nivel de agua especificado (nivel especificado = 0
profundidad).
Este módulo utiliza un enfoque de ventana móvil de 3x3 para encontrar todas las celdas que coinciden con tres criterios
y para definir el lago:
· Las celdas están por debajo de la elevación especificada (es decir, el nivel del agua);
· Las celdas están conectadas con una celda inicial (valor del par de coordenadas o semilla);
· Las celdas no son NULL ni están enmascaradas.
El nivel del agua debe estar en unidades DEM.
NOTAS
El punto inicial (inicial) puede ser un mapa ráster con al menos un valor de celda mayor que
cero, o un punto semilla se puede especificar como un par de coordenadas E, N. Si la semilla es
especificado como un par de coordenadas, se realiza una verificación adicional para asegurarse de que el objetivo
el nivel del agua está por encima del nivel del DEM. Sin embargo, cuando se utiliza un mapa ráster como semilla,
no se realizan tales comprobaciones. Especificar un nivel de agua objetivo por debajo de la superficie representado por DEM
resultará en un mapa vacío. Nota: un mapa de lago ráster creado en una ejecución anterior también se puede
se utiliza como mapa inicial para una nueva ejecución para simular el aumento del nivel del agua.
El módulo creará un nuevo mapa (lago = foo) o se puede configurar para reemplazar la entrada (semilla = barra)
mapa si el -o se utiliza la bandera. El usuario puede utilizar -o bandera para crear animaciones de agua en ascenso
nivel sin producir un mapa separado para cada fotograma. Un mapa de semillas inicial debe ser
creado para iniciar la secuencia, y se sobrescribirá durante las ejecuciones posteriores con
mapas de niveles de agua resultantes (es decir, un solo archivo sirve tanto para la entrada como para la salida).
Salida negativa (el -n flag) es útil para visualizaciones en NVIZ. Es igual al
expresión de mapcalc "negativo = 0 - positivo".
r.mapcalc equivalente - for HIERBA los piratas informáticos
Este módulo se creó inicialmente como un script utilizando r.mapcalc. Esto tuvo algunas limitaciones
- fue lento y no se realizaron comprobaciones para averiguar el recuento de iteraciones requerido. La cáscara
código de secuencia de comandos (usando r.mapcalc) utilizado en el script original se muestra a continuación:
$ {seedmap} = if ($ {dem}, \
if (if (isnull ($ {seedmap}), 0, $ {seedmap}> 0), $ {wlevel} - $ {dem}, \
si( \
if (isnull ($ {seedmap} [- 1,0]), 0, $ {seedmap} [- 1,0]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [- 1,1]), 0, $ {seedmap} [- 1,1]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [0,1]), 0, $ {seedmap} [0,1]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [1,1]), 0, $ {seedmap} [1,1]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [1,0]), 0, $ {seedmap} [1,0]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [1, -1]), 0, $ {seedmap} [1, -1]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [0, -1]), 0, $ {seedmap} [0, -1]> 0 && $ {wlevel}> $ {dem}) || \
if (isnull ($ {seedmap} [- 1, -1]), 0, $ {seedmap} [- 1, -1]> 0 && $ {wlevel}> $ {dem}), \
$ {wlevel} - $ {dem}, null ())))
La variable $ {seedmap} se reemplaza por los nombres del mapa semilla, $ {dem} con el nombre del mapa DEM y
$ {wlevel} con el nivel de agua objetivo. Para obtener un solo nivel de agua, este bloque de código se llama
con el mismo nivel varias veces (en un bucle) a medida que el lago crece por células individuales durante una sola
huye.
CONOCIDO CUESTIONES
· Todo el mapa se carga en RAM.
· ¡Un mapa semilla completamente negativo no funcionará! Al menos una celda debe tener un valor
> 0. Salida de r.lake -n no puede se utilizará como entrada en la siguiente ejecución.
EJEMPLO
Ejemplo de pequeña inundación a lo largo de una calle (conjunto de datos de muestra de Carolina del Norte):
g.region raster = elev_lid792_1m -p
# acumulación de agua junto a la presa de la calle
r.lake elev_lid792_1m coordenadas = 638759.3,220264.1 water_level = 113.4 lago = inundación
# dibuja el mapa del lago resultante sobre el mapa del terreno sombreado
r.relief input = elev_lid792_1m output = elev_lid792_1m_shade
rast elev_lid792_1m_shade
d. inundaciones anteriores
d.vect street_wake
Pequeña inundación a lo largo de una calle (r.lago, usando Lidar 1m DEM)
Utilice r.lakegrass en línea utilizando los servicios de onworks.net