Skip to content

shysam1/OperaMar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OperaMar

OperaMar estima la operatividad y las ventanas de trabajo marítimas a partir de series de oleaje y viento (reanálisis ERA5 o archivos propios). Entrega un tablero de figuras, exportación Excel/CSV y un informe técnico en Word.

Pensado para contratistas marítimos, consultoras costeras y estudios de plazos en obras portuarias.

Capturas

Inicio Selección y edición de faenas
Inicio Faenas
Resultados por faena Comparación entre faenas
Resultados Comparación

Ejemplo de tablero multipanel generado (dragado TSHD, serie ERA5 real):

Tablero multipanel

Requisitos

  • Windows 10/11 (64 bits) con WebView2 Runtime (suele venir con Edge).
  • Python 3.10 o superior (el lanzador instala un entorno virtual automáticamente).
  • Cuenta gratuita en Copernicus CDS si vas a descargar ERA5 desde la app.

Instalación y primer arranque

  1. Descomprime el zip OperaMar_entrega_*.zip en una carpeta de tu elección (por ejemplo Documentos\OperaMar).
  2. Doble clic en iniciar_windows.bat (o en el acceso directo OperaMar.lnk).
    • La primera vez crea .venv, instala requirements.txt y abre la aplicación.
  3. Opcional: ejecuta Crear OperaMar.bat para regenerar el acceso directo OperaMar.lnk dentro de la carpeta.

Para depuración con consola visible:

.venv\Scripts\python.exe app_web.py

Para uso normal sin ventana de consola:

.venv\Scripts\python.exe app_web.py --gui

Credenciales ERA5 (Copernicus CDS)

  1. Crea una cuenta en cds.climate.copernicus.eu.
  2. Acepta los términos del dataset ERA5 single levels (variables de oleaje y viento).
  3. En tu perfil, copia la clave API con formato UID:API-KEY.
  4. En OperaMar: menú lateral Credenciales ERA5 → pega la clave → GuardarProbar conexión.

La clave se guarda solo en tu equipo (%USERPROFILE%\.cdsapirc).

Flujo del wizard (5 pasos)

  1. Datos — Descargar ERA5 (lat/lon, período; por defecto 1985 hasta el último año completo; viento incluido siempre) o cargar un archivo local .nc, .mat o .csv. Las descargas largas pueden tardar horas; el caché por tramos permite reanudar.
  2. Revisión — Resumen de variables, paso temporal y validación física automática (se requiere al menos Hs).
  3. Faenas — Elige una o más faenas del catálogo o define una personalizada. Puedes editar umbrales (Hs máx, Tp, viento, duración mínima de ventana, horario diurno, sectores bloqueados).
  4. Resultados — KPIs (operatividad bruta/útil, ventanas por año, espera mediana), figuras por faena y tabla comparativa si hay varias faenas.
  5. Exportar — Excel (.xlsx), CSV de la serie, informe Word (.docx) y acceso a la carpeta de salidas.

Formatos de entrada aceptados

Formato Contenido esperado
.nc NetCDF con eje time y variables de oleaje (Hs, Tp, Dir). Viento (u10, v10) opcional.
.mat / .csv Columnas de fecha/hora y oleaje; el cargador mapea nombres habituales (como en series de boya o exportaciones previas).

Si el archivo no trae viento, la app sigue funcionando: los criterios de viento se omiten de forma adaptativa.

Dónde quedan las salidas

Todo se guarda bajo salidas/ en la carpeta de OperaMar:

salidas/
  <nombre_de_la_serie>/          ← stem del archivo o carpeta ERA5
    <faena_slug>/                ← p. ej. dragado_tshd, buceo_trabajos_submarinos
      tablero_<faena>.png        ← multipanel
      01_heatmap_operatividad.png … 07_diagnostico_restricciones.png
      operatividad.xlsx
      serie_horaria.csv
      informe_<faena>.docx

Las descargas ERA5 nuevas crean carpetas ERA5_<lat>_<lon>_<fechas>_serie/ con era5_serie.nc y subcarpetas chunks/ para reanudar.

Metodología (resumen)

  • Fuente típica: reanálisis ERA5 (ECMWF) en un punto; oleaje (Hs, Tp, dirección de procedencia) y viento a 10 m (u10, v10).
  • Resolución temporal: las descargas ERA5 se piden cada 3 horas (mantiene las descargas manejables; el oleaje varía lento a esa escala). Si cargas un archivo propio, el análisis se adapta al paso real de tus datos.
  • Hora: todo el análisis en hora local America/Santiago (los datos ERA5 vienen en UTC).
  • Direcciones: convención náutica de procedencia (0° = norte, 90° = este).
  • Operabilidad: una hora es operable si cumple todos los umbrales activos de la faena; datos faltantes (NaN) cuentan como no operables.
  • Ventana válida: racha continua de horas operables con duración ≥ mínimo de la faena (no se divide en varias ventanas si la racha es más larga).
  • Operatividad útil: porcentaje de horas dentro de ventanas válidas (métrica principal para planificación).

Umbrales referenciales

Los valores del catálogo (dragado, buceo, izaje, etc.) son típicos de la práctica y dependen del equipo y del procedimiento de cada contratista. Debes validarlos para tu proyecto; la app lo declara en la interfaz y en los informes.

El reanálisis global no sustituye mediciones locales (boya, ADCP) en zonas abrigadas o con batimetría compleja.

Empaquetado para entrega

Desde la carpeta del proyecto, en Windows:

empaquetar_entrega.bat

Genera dist/OperaMar_entrega_YYYYMMDD.zip sin .venv, salidas, tests ni cachés.

Demo de portafolio

Con datos ERA5 ya descargados para Coronel (-36.97, -73.16, 1985–2024):

.venv\Scripts\python.exe generar_demo.py

Si el caché de 40 años aún no está listo, el script usa una serie corta de respaldo y lo indica por consola.

Desarrollo

pip install -r requirements.txt
pip install pytest
pytest -q

Documentación técnica del proyecto: PLAN.md, HANDOFF.md.

About

Ventanas operacionales maritimas: operatividad y ventanas de trabajo desde ERA5 (oleaje + viento) - dashboard, Excel e informe Word

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors