Posts filed under TutorialPython

Ejemplo simple de disolución cinética de calcita con Phreeqc y Aquifer Lab - Tutorial

This is an example of calcite dissolution with kinetics where a simplified rate and initial molality are defined. The tutorial covers creation of an input file for Phreeqc, database selection, Phreeqc simulation in Aquifer App and analysis of processed output data on a Jupyter notebook. Finally the molality of Calcium and pH are plotted with time.

Posted on March 18, 2024 and filed under TutorialHidrologia, TutorialPython, Modelamiento.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Ejercicio simple de especiación del agua en Phreeqc con Aquifer App - Tutorial

Ejemplo muy sencillo para la construcción de un archivo de ingreso de Phreeqc de una solución acuosa con Calcio y Fluor. El archivo es ingresado dentro de Aquifer App, se selecciona la base de datos y se simula el modelo geoquímico obteniendo resultados crudos y procesados en la plataforma.

Posted on March 4, 2024 and filed under TutorialPython, Tutorial, TutorialHidrologia.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Como importar un modelo geológico de Leapfrog a Model Muse con Python - Tutorial

Tener un modelo geológico puede mejorar los modelos numéricos, ya que permite representar con mayor precisión la distribución potencial de parámetros hidráulicos en dirección horizontal y vertical. El proceso de implementar/incorporar un modelo geológico en un modelo Modflow es un desafío debido a las restricciones en software propietario y herramientas espaciales.

Posted on January 18, 2024 and filed under TutorialModflow, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Como georeferenciar un raster con Python y Rasterio - Tutorial

Georeferenciar una imagen / raster es el proceso de localizar espacialmente una imagen para que cada pixel este asociado a una posición. Este proceso es ampliamente conocido en QGIS con su complemento de Georeferenciación pero tambien puede ser realizado por Python y Rasterio.

El proceso de georeferenciar en Python tiene la ventaja que puede realizar el proceso repetidas veces sin necesidad de definir los puntos de control cada vez; también te permite añadir / quitar puntos de control y ver el impacto en el arreglo de transformación. Este tutorial muestra el proceso completo de georeferenciación de un mapa nacional sobre 3 puntos cuyas coordinadas de pixel han sido extraídas del utilitario Paint de Windows, el tutorial también exporta el raster asignando un sistema de referencia.


Tutorial

Datos de ingreso

Puede descargar los datos de ingreso desde este enlace.

Código

#import required libraries
import rasterio
import matplotlib.pyplot as plt
from rasterio.plot import show
#open ungeoreferenced raster
unRefRaster = rasterio.open('data/Peligros_Geologicos.jpg')
unRefRaster
C:\Users\saulm\anaconda3\Lib\site-packages\rasterio\__init__.py:317: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
  dataset = DatasetReader(path, driver=driver, sharing=sharing, **kwargs)


<open DatasetReader name='data/Peligros_Geologicos.jpg' mode='r'>
#show raster band values
unRefRaster.read(1)
array([[255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       ...,
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255]], dtype=uint8)
#show raster
show(unRefRaster)
#show raster shape
unRefRaster.read(1).shape
(4133, 2922)

Insert control points from coordinates captured in paint

Control point 1

point1 = rasterio.control.GroundControlPoint(row=368, col=190, x=-81, y=-1)
point1
GroundControlPoint(row=368, col=190, x=-81, y=-1, id='5a920799-66fd-469b-b8f5-8ad0f50194dd')

Control point 2

point2 = rasterio.control.GroundControlPoint(row=3497, col=239, x=-81, y=-16)
point2
GroundControlPoint(row=3497, col=239, x=-81, y=-16, id='e74eee05-5a73-4632-a863-cf80dd0150b3')

Control point 3

point3 = rasterio.control.GroundControlPoint(row=3706, col=2645, x=-69, y=-17)
point3
GroundControlPoint(row=3706, col=2645, x=-69, y=-17, id='75f9378c-a918-4a45-a7f8-7f662578e132')
#list of selected gcps
points = [point1, point2, point3]
points
[GroundControlPoint(row=368, col=190, x=-81, y=-1, id='5a920799-66fd-469b-b8f5-8ad0f50194dd'),
 GroundControlPoint(row=3497, col=239, x=-81, y=-16, id='e74eee05-5a73-4632-a863-cf80dd0150b3'),
 GroundControlPoint(row=3706, col=2645, x=-69, y=-17, id='75f9378c-a918-4a45-a7f8-7f662578e132')]
#get transformation array from points
transformation = rasterio.transform.from_gcps(points)
transformation
Affine(0.004994325053839821, -7.821090688339848e-05, -81.92014014649648,
       7.980704784024951e-07, -0.00479387635201452, 0.7639948641504404)
#define output raster
outputPath = 'data/georefRaster.tif'
#create raster and write bands
with rasterio.open(
    outputPath,
    'w',
    driver='GTiff',
    height=unRefRaster.read(1).shape[0],
    width=unRefRaster.read(1).shape[1],
    count=3,
    dtype=unRefRaster.read(1).dtype,
    crs=rasterio.crs.CRS.from_epsg(4326),
    transform=transformation,
) as dst:
    dst.write(unRefRaster.read(1), 1)
    dst.write(unRefRaster.read(2), 2)
    dst.write(unRefRaster.read(3), 3)
#show georeferenced raster
geoRaster = rasterio.open(outputPath)
show(geoRaster)
 
Posted on January 10, 2024 and filed under TutorialQGIS, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Una clase de Python para exportar un modelo en Modflow 6 a archivos Vtk - Tutorial

Generar visualizaciones 3D de modelos es esencial para analizar el sistema de flujo, realizar comprobaciones de calidad y ver la interacción del régimen de aguas subterráneas con las condiciones de contorno. La librería Flopy tiene herramientas para exportar los parámetros, condiciones de borde y resultados que los hemos modificado y alterado dentro de una clase de Python (Python class). El uso de esta clase permite la generación de archivos Vtk de una manera dinámica y en pocos pasos. El tutorial también incluye una representación de los parámetros generados en ParaView.

Posted on December 29, 2023 and filed under TutorialModflow, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Como hacer una rosa de vientos online con Hatari Utils - Tutorial

Este es un tutorial aplicado para la generación online de una rosa de vientos con Hatari Utils a partir de la velocidad y dirección del viento almacenada en un archivo CSV o insertada en un formulario en línea. El tutorial explora las opciones en línea de Hatari Utils para representar rosas de vientos como barras, cajas, polígonos o contornos.

Posted on August 7, 2023 and filed under TutorialPython, Tutorial.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Bitácora de instalación de un sensor online en una Raspberry Pi bajo un framework Istsos (SOS Standard)

No llamamos a este artículo un tutorial ya que no se explicarán todos los pasos de la configuración del sensor. Puede ser la idea de este artículo mostrar el panorama general de la instalación de sensores en una Raspberry Pi bajo el framework Istsos que implementa el estándar SOS.

Posted on June 2, 2023 and filed under TutorialPython, Tecnologia Web.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Modelamiento de flujo de agua subterránea usando la aproximación de Dupuit con Python y Landlab - Tutorial

Este tutorial cubre un ejemplo de simulación de flujo de agua subterránea y descarga de agua subterránea con el componente GroundwaterDupuitPercolator de Landlab. La simulación se ejecuta en régimen uniforme sobre un acuífero de una capa y los resultados se representan en gráficos y mapas.

Posted on May 15, 2023 and filed under TutorialQGIS, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Delimitación de redes hídricas a partir de un DEM raster con Python y Landlab - Tutorial

En función de los diversos componentes de Landlab junto con otros paquetes de Python se pueden establecer algunos procedimientos para extraer redes de flujo únicas o múltiples de un ráster de modelo de elevación digital (DEM) y exportarlas como formatos de datos espaciales vectoriales como ESRI shapefiles o representarlos en Jupyter Lab .

Posted on May 10, 2023 and filed under TutorialPython, TutorialQGIS, Hidrología.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Análisis de Cambio de Cobertura Terrestre con Python y Rasterio - Tutorial

Este tutorial cubre el procedimiento completo para crear un ráster de cambio de cobertura terrestre a partir de una comparación de rásteres de índice de vegetación generado (NDVI) mediante el uso de Python y las bibliotecas Numpy y Rasterio. Los resultados del NDVI para años determinados y el cambio de NDVI se representan en Jupyter Lab como cuadrícula de color y cuadrícula de contorno; las matrices de resultado son exportados como raster geoespaciales en formato TIFF.

Posted on May 8, 2023 and filed under TutorialPython, TutorialQGIS.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Cálculo de la dispersión de mayor pendiente con área de drenaje con Python y Landlab - Tutorial

El análisis de superficies a nivel regional requiere un mayor grado de cálculo para evaluar varios temas de gestión del terreno. Por lo general, esos tipos de análisis sobre archivos ráster se limitaban al software de escritorio GIS con resultados para un solo ráster y con opciones limitadas para crear gráficos de valores de píxeles.

Python, Rasterio, Landlab y otros paquetes de alto rendimiento nos permiten tener otra vista de la elevación de nuestra superficie y evaluar diferentes variables que eran impensables con el software GIS tradicional. Este tutorial muestra el procedimiento completo para abrir un archivo raster con Rasterio, importar como model grid de Landlab, llenar sumideros y calcular el área de drenaje. Finalmente, a partir de los resultados de Landlab, se construyó un Pandas dataframe y las áreas de drenaje se clasificaron en intervalos para trazarse en un diagrama de caja con la pendiente más pronunciada.

Posted on May 4, 2023 and filed under TutorialPython, TutorialHidrologia.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Modelamiento de intrusión salina con Flopy y Modflow Buy sobre un proyecto en Tupac Cloud - Tutorial

Finalmente, una alternativa completa para la simulación de la intrusión salina en modelos de flujo de agua subterránea totalmente geoespaciales basados ​​en software de código abierto. El modelo numérico se construyó en la plataforma Tupac Cloud con dos períodos de estrés y un tiempo total de simulación de 40 años. El proyecto se descarga desde Tupac Cloud y se ejecuta localmente con Anaconda donde se implementa en el script de Python el paquete BUY para el flujo de densidad variable junto con el modelo de transporte (GWT). También se desarrolla una representación gráfica de la cuadrícula, las condiciones de contorno y los resultados de los modelos de flujo y transporte en un entorno de Jupyter Lab.

Posted on April 28, 2023 and filed under TutorialModflow, TutorialPython, Tupac Cloud.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Cómo instalar (manera fácil) Python, Geopandas y Rasterio en Windows - Tutorial

Geopandas es una librería increíble para el análisis espacial, ya que combina las herramientas espaciales de Shapely y Fiona con la versatilidad de Dataframes de Pandas. Rasterio es una de las librerías más completas para manejar archivos raster en Python.

Somos conscientes de que la mayoría de los geocientíficos, especialistas en recursos hídricos y profesionales afines trabajan en Windows, por lo que siempre estamos en la búsqueda de nuevas formas de hacer que Python funcione con todas sus capacidades geoespaciales en cada computadora.

Con base en los nuevos lanzamientos de Anaconda, ahora podemos instalar Geopandas y Rasterio de una manera fácil.

Posted on April 19, 2023 and filed under TutorialQGIS, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Presentamos Tupac Cloud: Una herramienta online para modelamiento de aguas subterráneas

Tupac Cloud es nuestra plataforma online de modelamiento de aguas subterráneas en desarrollo. Los modelos en Tupac Cloud se basan en grillas Voronoi y se construyen en MODFLOW 6 DISV a partir de scripts de Flopy. Todo el proyecto tendrá muchas herramientas e integraciones con QGIS y Paraview, este es solo un ejemplo de generación de mallas para un caso aplicado de interacción de ríos y acuíferos.

Posted on December 7, 2022 and filed under TutorialModflow, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Modelamiento regional de aguas subterráneas con MODFLOW 6 usando grillas Voronoi - Tutorial

Hemos desarrollado una versión de nuestro caso de estudio de la cuenca Angascancha que se ejecuta en MODFLOW 6 con discretización por vértices (DISV). El modelo implementa una malla de Voronoi que se genera a partir del límite de la cuenca y la red fluvial donde los niveles de refinamiento se definen mediante un tamaño de celda mínimo y máximo junto con determinados pasos de refinamiento. El tutorial es completo en todos los pasos que implican la discretización, construcción, simulación y visualización del modelo.

Posted on July 7, 2022 and filed under TutorialQGIS, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Representacion geospacial de coordenadas de imágenes de drone con Python y Folium - Tutorial

Si tiene un conjunto de imágenes de drones y desea conocer la ubicación de las imágenes, este tutorial puede ser de su interés. Hemos realizado un ejemplo aplicado que recupera los metadatos geoespaciales de la cámara del dron para un grupo de imágenes y realiza una representación geoespacial en un mapa con el nombre de la imagen disponible como ventana emergente. El tutorial se realiza bajo un Jupyter notebook con Python y Folium.

Posted on June 20, 2022 and filed under TutorialPython, TutorialQGIS.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Modelamiento de Evolución de Superficie a Escala de Cuenca con Python y Landlab - Tutorial

El clima cambia, la gente cambia y la tierra también cambia con el tiempo. No podemos creer que las redes fluviales seguirán siendo las mismas durante los próximos 1000 años o que las montañas y las depresiones tendrán la misma elevación en los próximos 10000 años. Pero los cambios no están relacionados con grandes periodos de tiempo, también pueden ocurrir en décadas o años a tasas más bajas. Para evaluar esos cambios necesitamos modelar los componentes clave de la evolución del suelo: fluvial, pendiente de ladera y levantamiento. Hemos desarrollado un tutorial con Python y la librería Landlab para simular la evolución del suelo a escala de cuenca durante 100 mil años; las entradas provienen de rásters geoespaciales y los datos de salida se exportan como archivos ráster ASCII.

Posted on February 10, 2022 and filed under TutorialPython, TutorialQGIS.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Construcción de un modelo de aguas subterráneas en zona de talud con MODFLOW 6

Después de la revisión y compilación de datos relevantes y el desarrollo de un modelo conceptual, estamos listos para la construcción de un modelo numérico de aguas subterráneas en un área de ladera en la ciudad de Mukilteo, Washington, EE. UU. El modelo se construirá en MODFLOW 6 con Model Muse con condiciones de contorno para flujo regional, mar, recarga, drenajes y evapotranspiración, el modelo también tiene 24 puntos de observación. Los datos de entrada se insertan a partir de datos vectoriales (shp) y cuadriculados (raster). Es tutorial incluye todos los pasos de la construcción del modelo y la configuración del paquete con una visualización final de los valores de cabeza calculados y observados realizados con Flopy.

Posted on January 27, 2022 and filed under TutorialModflow, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Representación Espacio-Temporal Interactiva de VOCs y PFAs con Python y Folium - Tutorial

El análisis de la química del agua subterránea es una tarea difícil para el conjunto limitado de puntos de observación, las muestras limitadas y los limitados componentes analizados. Para evaluar la extensión real de una pluma de contaminación o la eficiencia de las técnicas de remediación necesitamos métodos nuevos e innovadores que permitar representar y analizar los datos de la química del agua con software libre. Hemos realizado un caso aplicado de representación interactiva de VOC y PFA en un Jupyter notebook con Python, Folium e Ipywidgets. El conjunto de datos tiene más de 3300 muestras de 127 puntos durante un período de 30 años y corresponde a un sitio contaminado de un antiguo aeropuerto.

Posted on December 28, 2021 and filed under TutorialPython, TutorialQGIS, Medio ambiente.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Como instalar Python - Geopandas en Windows bajo un entorno en Conda - Tutorial

Geopandas es una librería increíble para el análisis espacial ya que combina las herramientas espaciales de Shapely y Fiona con la versatilidad de Pandas Dataframes. Somos conscientes de que la mayoría de los geocientíficos, especialistas en recursos hídricos y profesionales relacionados trabajan en Windows, por lo que siempre estamos en la búsqueda de nuevas formas de hacer que Python funcione con todas sus capacidades geoespaciales en cada computadora. Hemos creado un tutorial que muestra el proceso de instalación de Geopandas y otras bibliotecas geoespaciales de Python en Windows mediante el uso de un entorno Conda.

Posted on December 10, 2021 and filed under TutorialQGIS, TutorialPython.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.