Skip to content
View ricbencar's full-sized avatar

Block or report ricbencar

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ricbencar/README.md

Ricardo Benoliel Carvalho

Port & Coastal Engineering · Maritime Hydraulics · Wave Mechanics · Engineering Computation

LinkedIn Email Profile views

Coastal and Maritime Engineering AI programming ERA5 ECMWF Programming Languages


Profile

I'm a civil engineer working in port and coastal engineering, maritime hydraulics and wave mechanics, with an interest in technical computation and AI programming, as ilustrated in the tools in this archive. My GitHub profile is centered on practical engineering tools for metocean analysis, nonlinear wave calculation, coastal protection design, navigation studies, and technical workflow automation.

The work published here spans a broad and technical range of engineering topics. It includes wave dispersion and nonlinear wave solvers, ERA5-based workflows for wave and wind data, metocean statistics, storm peak and trend analysis, extreme value assessment, environmental contour generation, and joint probability modelling. It also covers tools for offshore-to-nearshore wave transposition, wave transformation over shallow foreshores, and wave overtopping prediction for a range of coastal and maritime engineering applications.

In addition, it also includes computational tools for the hydraulic design of breakwaters and rock slopes used in coastal protection, as well as applications for navigation studies, under-keel clearance assessment, and PIANC-based ship-dimension analysis and wave loading on piles. Some repositories focus on engineering workflows through technical document conversion, translation, glossary generation, data export, and related productivity tools.

All repositories are released under the MIT License and they are provided as is, without any warranty of accuracy, completeness, fitness for a particular purpose, or suitability for project-critical decisions. They should therefore be used at the user’s own risk, with appropriate engineering judgment, independent verification, and technical review before application in professional studies, design, or operational contexts.


Core Technical Areas

Area Main focus
Wave mechanics and nonlinear wave modelling Dispersion equation solvers, Fenton-type nonlinear wave calculations, wave kinematics, wave forces, and shallow-water transformations
Metocean data and statistics ERA5 wave and wind extraction, descriptive statistics, storm peaks, long-term trends, extreme value analysis, and joint distributions
Coastal and maritime hydraulics Wave overtopping, rubble-mound breakwater design, rock slopes, armor stability, and depth-of-closure assessment
Navigation and ship-related utilities Under-keel clearance, restricted-water navigation checks, and PIANC-based ship-dimension tools
Engineering productivity Markdown conversion, technical document translation, multilingual glossary generation, and data/CAD utilities

Tools & Technologies

Python C++ Fortran R VBA Linux QGIS ECMWF ERA5 GRIB and CDO Coastal Engineering Hydraulics Extreme Value Analysis


Repositories

Automatically generated from my public GitHub repositories (21 current projects).

Coastal & Maritime Hydraulic Design

Breakwater design, coastal protection, navigation safety, overtopping, and applied maritime hydraulic engineering.

  • depth-of-closure-calculator This repository contains computational tools designed to calculate Depth of Closure (DoC). Language: C++ · Updated: 2026-04-06

  • navigation-calculator This program evaluates Under Keel Clearance (UKC) for a ship transiting in shallow, restricted, or canal-type waters. Language: Python · Updated: 2026-04-06

  • pianc-ship-dimensions This repository contains two engineering utilities for the estimation of ship characteristics based on key datasets published by PIANC. Language: Python · Updated: 2026-04-06

  • rock-slope-calculator Rock slope calculator for hydraulic design and assessment of rock armoured slopes used in coastal protection, breakwaters, groynes, revetments, etc. Language: C++ · Updated: 2026-04-06

  • breakwater-cubes-calculator A repository with tools for the hydraulic design of rubble mound breakwater armor layers of artificial concrete units. Language: C++ · Updated: 2026-04-06

  • wave-overtopping-calculator This program uses neural network ensembles to predict wave overtopping discharges at coastal structures for given wave conditions and structure geometry. Language: Python · Updated: 2026-04-06

Wave Mechanics, Transformation & Coastal Processes

Wave theory, dispersion, nonlinear waves, wave loading, offshore-to-nearshore transformation, and shallow-water processes.

  • transpose-offshore-to-nearshore This program reads offshore wave data from a CSV file and computes nearshore wave parameters at a specified depth. Language: C++ · Updated: 2026-04-06 · Stars: 1

  • wind-waves-generation A collection of Python scripts for predicting wind-generated wave characteristics using the Sverdrup-Munk-Bretschneider (SMB) method. Language: Python · Updated: 2026-04-06

  • wave-dispersion-equation This repository provides a comprehensive suite of approximations of the Wave Dispersion Equation. Language: Python · Updated: 2026-04-06 · Stars: 10

  • wave-forces-on-piles-calculator This calculator is a computational tool that provides a high-precision solution for the fluid-structure interaction of vertical cylindrical piles. Language: Jupyter Notebook · Updated: 2026-04-06

  • fenton-nolinear-calculator Compute the wavelength, free-surface geometry, kinematics, and integral invariants of nonlinear waves in finite depth. Language: Python · Updated: 2026-04-06

  • shallow-water-waves-calculator This program computes local shallow-foreshore wave-height distribution parameters based on the Composite Weibull distribution model. Language: Jupyter Notebook · Updated: 2026-04-06

Metocean Data, Extremes & Statistical Analysis

ERA5 workflows, wave and wind statistics, storm characterization, long-term trends, and probabilistic sea-state analysis.

  • wave-wind-statistics This program produces descriptive and extreme value statistics based on wave & wind data from the ECMWF ERA5 reanalysis model. Language: Python · Updated: 2026-04-06 · Stars: 1

  • wave-height-trends This program analyzes long-term trends in significant wave heights and applies a series of statistical techniques. Language: C++ · Updated: 2026-04-06 · Stars: 1

  • storm-peaks-analysis This script performs an analysis of storm peak events by combining storm wave data with tide level data. Language: Python · Updated: 2026-04-06 · Stars: 1

  • extremes-joint-distribuiton This script performs an environmental contour analysis on oceanographic time series data focusing on significant wave height and wave peak period. Language: Python · Updated: 2026-04-06 · Stars: 1

  • era5-wave-wind-data This program downloads wave & wind data from the ERA5 reanalysis model using the Climate Data Store (CDS) API provided by ECMWF. Language: Python · Updated: 2026-04-06 · Stars: 1

Engineering Automation, Data Utilities & Technical Productivity

Utilities for technical documentation, translation, glossary generation, and engineering data conversion.

  • multilingual-engineering-glossary This tool generates a multilingual engineering glossary and table across up to 30 global languages. Language: Python · Updated: 2026-04-06

  • ai-document-translator Advanced AI-powered document translation engine designed specifically for engineering and technical files. Language: Python · Updated: 2026-04-06

  • pandoc-markdown-converter A Python application that converts Markdown documents into DOCX and PDF using Pandoc, with attention to mathematical content, LaTeX compatibility, template discovery. Language: Python · Updated: 2026-04-06

  • xyz2dxf-points-to-cad This program reads 3D points in XYZ format, filters them by a minimum distance, interpolates/extrapolates grid values and writes the output to a DXF file. Language: C++ · Updated: 2026-04-06


Popular repositories Loading

  1. wave-dispersion-equation wave-dispersion-equation Public

    This repository provides a comprehensive suite of approximations of the Wave Dispersion Equation.

    Python 10 2

  2. era5-wave-wind-data era5-wave-wind-data Public

    This program downloads wave & wind data from the ERA5 reanalysis model using the Climate Data Store (CDS) API provided by ECMWF.

    Python 1

  3. transpose-offshore-to-nearshore transpose-offshore-to-nearshore Public

    This program reads offshore wave data from a CSV file and computes nearshore wave parameters at a specified depth.

    C++ 1

  4. wave-wind-statistics wave-wind-statistics Public

    This program produces descriptive and extreme value statistics based on wave & wind data from the ECMWF ERA5 reanalysis model.

    Python 1

  5. wave-height-trends wave-height-trends Public

    This program analyzes long-term trends in significant wave heights and applies a series of statistical techniques.

    C++ 1

  6. extremes-joint-distribuiton extremes-joint-distribuiton Public

    This script performs an environmental contour analysis on oceanographic time series data focusing on significant wave height and wave peak period.

    Python 1