La naturaleza recuperará lo que es suyo, no importa lo que construyamos

Como ejecutar los programas de análisis espacial

Ejecutar un programa para realizar un análisis espacial es una operación más dentro del proceso general. Hay que tener claro que queremos o buscamos, pensar que datos pueden ayudarnos, etc. Si hemos llegado hasta aquí, es porque antes hemos tenido que reflexionar bastante (o esa es la idea, claro!).

Diseña tu estrategia de análisis

Existen dos formas de abordar la metodología propuesta, una con una visión general, donde se van incluyendo datos para ser analizados con el objetivo de entender, de forma amplia, el área de estudio que nos compete. Es una estrategia de construcción, donde aceptamos datos de cualquier índole sin que exista necesariamente un propósito específico para ello. Hay que tener en cuenta que, un dato que hoy puede no ser muy significativo, cuando se plantean problemas específicos, si puede ser relevante. Si ya esta disponible (la capa preparada para ser analizada), se ahorra tiempo, especialmente de preparación previo al cálculo.

La otra forma de trabajo es más dirigida, centrada en dar respuesta a problemas concretos. En este caso, antes de ejecutar los programas es necesario plantearse cómo abordar el problema, por ejemplo, considerar que datos pueden ayudar más significativamente, cómo podemos combinarlos, que indicadores nuevos pueden ser necesarios, etc. Para ello, es recomendable la posibilidad de discutir con un grupo multidisciplinar, marcando unos objetivos claros. Hemos puesto un ejemplo para mostrar los pasos y análisis necesarios para el Distrito Metropolitano de Quito, centrado en determinar el número de edificaciones potencialmente expuestas a zonas inundables o bien movimientos en masa localizados en las vertientes de ríos y quebradas.

Ejecución de los programas, aspectos a considerar

Una vez se tiene claro en el modo de trabajo en el que nos encontramos, tenemos ya disponibles los datos de entrada, almacenados en las carpetas, sabemos lo que queremos hacer y tenemos correctamente instalado los programas, entonces estamos preparado para realizar los análisis espaciales. De forma esquemática, seguiríamos los siguientes pasos:

En términos generales, en GNU/Linux la línea de ejecución empieza con los caracteres "./", luego viene el nombre de la aplicación y, si procede (esto ya depende de como se haya diseñado el programa), el archivo de configuración o parámetros que condicionan su funcionamiento. De los archivos de configuración pueden tenerse tantas copias como queramos, siempre y cuando todos respecten la misma estructura (si queremos uno nuevo, lo más fácil es copiar, pegar y modificar las líneas que se consideren). Si el archivo de configuración está en la misma carpeta que el programa no hace falta escribir la ruta completa al mismo, en caso contrario si. En la actualización 2022 sse han homogeneizado los archivos de configuración primarios y secundarios para que sean los mismos, independientemente de la estrategia espacial seleccionada. Sin embargo, por cuestiones de orden y manejo, los duplicamos en carpetas independientes.

Importante: todas las rutas escritas dentro del archivo de configuración primario empiezan en el directorio principal donde se ubican los datos, sin considerar el /home/usuario/. Por ejemplo, donde vemos /GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_UAE/SISTEMA/GRD/, a nivel interno funciona como /home/usuario/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_UAE/SISTEMA/GRD/. El motivo es que este inicio de la ruta es añadido por el programa. Esta mecánica ayuda a la hora de facilitar la transferencia entre PCs del software y de los datos, si tener que editar, uno por uno, los archivos principales de configuración. 

Los nombres utilizados para describir los archivos de configuración están pensados para que puedan identificarse claramente, pero igualmente podrían cambiarse por otros. Lo que si es importante distinguir el archivo principal de los secundarios. Igualmente, cada dato incluido en los archivos puede ser renombrado, en el caso de utilizar codificaciones que se ajusten más al propio usuario (por ejemplo si tu idioma natal es otro, pero evitando usar caracteres especiales y espacios). Pero este tipo de operaciones hay que hacerlas cuando se tiene muy claro la forma de proceder.

En la versión previa a 2022, cada estrategia de análisis estaba desarrollada en un ejecutable independiente, por lo que había más variación respecto a los archivos primarios y secundarios. En la versión actual solo existe un ejecutable (o dos si generamos el específico para el DMQ). A continuación especificamos en detalle el proceso de ejecución del SEAE en modo General, dado que la modalidad sistema está adaptada para operar en el DMQ y no tiene sentido disponerla para otros sitios. No obstante, hablaremos de ella en el ejemplo del DMQ.

Ejecutando el SEAE

Como hemos indicado, ejecutar el software en línea de comando es sencillo. Nos desplazamos con el navegador de carpetas hasta la posición donde hemos descargado (y compilado) el SEAE. Presionamos el botón derecho en el espacio en blanco de la derecha y en la ventana flotante seleccionamos abrir terminal. 

Una vez abierta deberemos escribir el nombre del ejecutable (./seae) y la ruta del archivo de configuración. No confundir con el archivo donde está el código del programa, cuya extensión es .c.

Para capturar la ruta del archivo de configuración, en el mismo navegador de carpetas nos desplazamos hasta donde está ubicado el archivo de configuración principal, que en el ejemplo del repositorio será dentro de una carpeta específica que se ha creado en función de cada una de las estrategias de análisis disponibles (RR, VR, etc.). Seleccionamos el archivo y utilizamos, bien el botón derecho del ratón y luego la opción copiar, bien CTRL-C. Para pegar la ruta en el terminal siempre debemos usar el botón derecho del ratón y la ventana flotante que aparece.

Sin embargo, antes de ejecutar el SEAE deberemos haber preparado correctamente los archivos de configuración primarios y secundarios, los cuales describiremos en detalle en los siguientes apartados. No obstante, para facilitar el uso, en el repositorio dispondremos de un ejemplo operativo para cada estrategia de análisis espacial.

El archivo de configuración principal

Hay una serie de reglas que deben respetarse para que el archivo de configuración pueda ser leído correctamente por el SEAE:

Significado de cada uno de los parámetros presentes en el archivo de configuración

Ejemplo de un archivo de configuración real

#****ESTRATEGIA_ANALISIS****

ESTRATEGIA:2

MODE:1

UNIFAM:4

CODE:Analisis-1

DIR_INBASER:/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_UAE/SISTEMA/GRD/

DIR_INBASEC:/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_UAE/SISTEMA/CSV/

DIR_INSUPR:/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_VAR-VECTOR/SISTEMA/CSV/

DIR_INSUPC:/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_IN/DATA_VAR-VECTOR/SISTEMA/CAT/

DIR_OUTGEN:/GIS/HAZARD_MODELS/DATOS/QUITO_DMQ/QUITO_SEAE-DMQ/DATA_OUT/DATAOUT_RV/

BAS_FILES:/GIS/HAZARD_MODELS/SOFTWARE/c_especificos/seae/Config_Files/RV/base-sis_infiles.cfg

SUP_FILES:/GIS/HAZARD_MODELS/SOFTWARE/c_especificos/seae/Config_Files/RV/sup-sis_infiles.cfg

#****ENDFILE****

Los archivos de configuración secundarios (infiles)

Consideraciones sobre los archivos secundarios:

Significado de las columnas que son comunes en todas las estrategias de análisis espacial

PROS: Indica en valor entero si la capa será procesada (1) o no (0).

ORDER: Indica en valor entero el orden de la capa para que el sistema pueda identificarla. En el modo Adaptado es un número crítico dado que es a partir de él como se procesan las capas superiores. Cuando se opera en modo General, su uso es menos relevante.

NAMEPRIN: Nombre del archivo principal que sera objeto de análisis (base) o bien servirá para realizar el análisis (superior)

NAMESEC: Nombre del archivo secundario que, en algunos casos va adjunto al anterior, bien para indicar la estructura donde se almacenarán los resultados, bien para aportar los diccionarios de categorías según la estrategia de análisis escogida.

TIPO: Código o clave alfanumérica que se puede utilizar para identificar la temática del archivo. Inicialmente fue utilizado para los nombres de salida, pero de momento dicho uso ha sido anulado.

Significado de las columnas que son específicas para los archivos raster

NULVAL: Valor nulo entero que será aplicado a todas aquellas celdas de el raster que estén por debajo o por encima del valor mínimo (MIN) y máximo (MAX) indicados a continuación. Yo suelo utilizar -9999.

MIN: Valor mínimo decimal aceptado para las celdas del raster. El valor estará acorde con los límites teóricos que el raster de entrada tiene.

MAX: Valor máximo decimal aceptado para las celdas del raster. El valor estará acorde con los límites teóricos que el raster de entrada tiene.

ESFLOAT: Determina en entero si el valor de las celdas del raster están expresadas en enteros (0) o en decimales (1). En función de uno u otro caso, las arrays internas tendrán el formato correspondiente.

Significado de las columnas que son específicas para los archivos vectoriales

CAT: Determina en valor entero si la capa vectorial tiene un diccionario de categorías (1) o no (0). Si lo tiene, se realiza un segundo análisis, por ejemplo en Raster-Vector, que tiene en cuenta, para esa capa, la distribución de valores según las categorías disponibles.

LINEAL: Determina en valor entero si la capa vectorial deriva de una capa de líneas que ha sido transformada a puntos mediante distancias equidistantes, en cuyo caso se indica con un 1.

DISCRE: Si el valor anterior es 1, en este caso se indica la distancia de separación en metros utilizada para cada punto (valor entero), que siempre es la misma.

TEST: Por compatibilidad para facilitar la lectura de los archivos se ha mantenido esta columna aunque todavía no se ha implementado una función específica. De momento se iguala a 0 como valor entero.

Ejemplo de un archivo secundario para archivo raster

PROS NULVAL MIN MAX ESFLOAT ORDER NAMEPRIN NAMESEC TIPO

1 -9999 1 10 0 1 eco_pobreza_sectores_2010_6m.grd cat_eco_niveleco.csv Eco

1 -9999 1 10 0 2 haz_movi_en_masa_SIRGAS_10m.grd cat_haz_movenmasa-SIRGAS_10m.csv Peli

0 -9999 1 6 0 3 haz_incendios-forestales_90m.grd cat_haz_incendios_90m.csv Peli

0 -9999 1 6 0 4 eco_espacio-publico_5m.grd cat_eco_espacio-publico.csv Eco

Ejemplo de un archivo secundario para archivo vectorial

PROS CAT LINEAL DISCRE TEST ORDER NAMEPRIN NAMESEC TIPO

0 0 0 0 0 1 ec_pobla_manloc-act65_2010.csv Sincat Pob

0 0 0 0 0 2 ec_pobla_manloc-act1664_2010.csv Sincat Pob

0 1 0 0 0 3 qui_eco_comercio-total-2021.csv qui_cat_eco_comercio-total-2021.csv Eco

0 0 1 5 0 4 qui_cober_via-alcan.csv Sincat Tran

Existe una segunda modalidad aplicada únicamente a aquellas estrategias donde están implicados datos raster. Esta consiste en generar, a partir de una serie de parámetros, el área objeto de análisis. En este caso se utiliza un archivo sensiblemente distinto al anterior.

PROS: Indica en valor entero si la capa será procesada (1) o no (0). Pueden tenerse varios de estos espacios almacenados en un fichero e ir activando y desactivando en función del interés que tenga cada uno. Esto permite, si así se desea, no perder los datos de análisis anteriores.

ORDER: Indica en valor entero el orden de la capa para que el sistema pueda identificarla.

XCOOR: Coordenada x decimal del centroide del polígono que será generado. Debe estar en la misma proyección geográfica que el resto de capas en uso.

YCOOR: Coordenada y decimal del centroide del polígono que será generado. Debe estar en la misma proyección geográfica que el resto de capas en uso.

RADIO: Radio en decimales y metros que tendrá el polígono, que tendrá forma cuadrada, no circular. Servirá para establecer el largo y el ancho.

RESOL: Resolución en decimales y metros del raster, habitualmente un valor bajo si es relativamente pequeño.

NAMEPRIN: Código en texto que será asignado al archivo de salida para identificar el análisis realizado.

Ejemplo de un archivo secundario para archivo raster por generación por parámetros

PROS ORDER XCOOR YCOOR RADIO RES NOMBRE

0 1 786005.638000 9977723.478000 250.0 2.0 centro_test

0 2 777943.958951 9986769.135126 200.0 2.0 zaphire-prox

0 3 777943.958951 9986769.135126 1000.0 3.0 zaphire-far

1 4 777943.958951 9986769.135126 100.0 2.0 zaphire-near


Nombre de los archivos de salida

El nombre de los archivos de salida ha sido reformulado en la versión del SEAE de 2022 en un intento de simplificar y evitar sobre-escrituras. Las características comunes son las siguientes:

A partir de aquí tenemos dos opciones en función de si la estrategia de análisis es 1 a 1 (1 capa base 1 capa superior), o es 1 a muchos. El primer caso solo ocurre en las estrategias RR, VV y ViV y el nombre continúa con:

En el caso concreto de las estrategias VV y ViV, generan también un fichero alternativo, el primer caso para mostrar el análisis opuesto, el segundo porque muestra la agrupación (suma) de los datos obtenidos asociados a la línea o transecto de la calle, en vez de al punto.

Para nombres 1 a muchos, que se da en las estrategias RV y VR tenemos.

Para el caso concreto de la estrategia RV

Ejemplo de nombres 1 a 1 para cada estrategia