Releases: Project-SEA-Stack/HydroChrono
HydroChrono 0.3.2 – CLI polish & YAML/HDF5 & GUI robustness improvements
HydroChrono 0.3.2 focuses on CLI polish, robust wave inputs, exporting irregular wave data to HDF5 files, and a fix to the GUI pause/play button.
Highlights
- Progress bar updates in-place and respects --quiet
- Wave parsing shorthands: h/H,t/T/tp/TP/p/P,amplitude/A- with validation
- HDF5 export of irregular inputs: frequencies, spectrum, and free-surface time/eta
- Larger Play/Pause button with fixed label
What’s new
- CLI
- Progress bar fixed
 
- Waves
- Shorthand keys for height/period/amplitude
- Validation errors for missing/invalid regular wave inputs
- Irregular waves: corrected forcing, reproducible via seed
 
- Export
- Writes /inputs/simulation/waves/irregular/{frequencies_hz, spectral_densities, free_surface_time, free_surface_eta}
 
- Writes 
- GUI
- Enlarged Play/Pause button and improved text rendering
 
Install (Windows x64)
- Download HydroChrono-0.3.2-win64.zip
- Unzip; all required DLLs included (Chrono, HDF5, yaml-cpp, Irrlicht, MSVC)
- Run regression tests:
 python .\tests\run_hydrochrono\run_tests.py --all
HydroChrono 0.3.1 – 5× faster radiation damping with Savitzky–Golay smoothing, SIMD & Linux fixes, and --profile support
HydroChrono 0.3.1 delivers major refactoring and performance improvements across hydrostatics and radiation damping, adds profiling and smoothing features, and introduces full Linux build support.
Highlights
- Refactored hydrostatics and radiation damping modules for clarity, safety, and maintainability
- Unified Eigen-only math backend; resolves vectorization/SIMD compatibility issues
- Refactored & Parallelized radiation damping convolution integral (5× faster)
- Added Savitzky–Golay smoothing and tapering for more stable convolution results
- New --profileflag for runtime performance breakdowns
- Auto-enable Irrlicht GUI when IrrlichtDiris configured
- Fixed and verified Linux builds
What’s new
- Core
- Refactored hydrostatics and radiation damping code paths
- Parallel convolution integral with Savitzky–Golay smoothing
- Unified Eigen-only vectorization backend
 
- CLI
- Added --profileflag for timing and performance reporting
 
- Added 
- Build
- Linux build support (tested on Ubuntu 22.04 / 24.04)
- Updated build.ps1with Irrlicht auto-detection and improved dependency handling
 
Install (Windows x64)
- Download HydroChrono-0.3.1-win64.zip
- Unzip; all required DLLs included (Chrono, HDF5, yaml-cpp, Irrlicht, MSVC)
- Run the regression tests:
 python .\tests\run_hydrochrono\run_tests.py --all
HydroChrono 0.3 - YAML CLI app with HDF5 outputs, logging and regression tests
HydroChrono 0.3 delivers a YAML-driven CLI app, portable Windows packaging, consistent HDF5 outputs, and a new regression test suite for the main binary - run_hydrochrono.exe.
Highlights
- New CLI app: run_hydrochrono.exe(YAML-driven)
- HDF5 writer for analysis-ready results
- Unified logging API
- Regression tests for the CLI (CTest + Python)
- Deterministic Windows build; packaged DLLs (Chrono, HDF5, MSVC); tests ON by default
- Updated website documentation with quick start guides and new build instructions
What’s new
- CLI/YAML
- YAML parsing (SEA-Stack-IO schema)
- CLI for running the code
- Demos and batch runs included
 
- I/O
- HDF5 writer; safe open/write handling
 
- Logging
- Unified API + backend; consistent usage across src/
 
- Tests
- Python suite with plotting: python .\tests\run_hydrochrono\run_tests.py --all
 
- Python suite with plotting: 
- Build
- build.ps1for VS2022 x64 with fixed package discovery
- Packaged HDF5 + MSVC runtimes; Chrono/yaml-cpp/Irrlicht DLL support
- Tests enabled by default
 
Install (Windows x64)
- Download HydroChrono-0.3-win64.zip
- Unzip; all required DLLs included (HDF5, MSVC; Chrono/yaml-cpp/Irrlicht)
- Run the Python test suite with plotting: python .\tests\regression\run_hydrochrono\run_tests.py --all
HydroChrono v0.2.7 – Testing framework & Windows build script
Highlights
- Introduces regression testing framework and helpers.
- Migrates suites: sphere decay, RM3, OSWEC, F3OF DT1/DT2/DT3.
- Unifies reference data & comparison scripts; improves test logging.
- Adds quick-build.ps1andbuild-config.example.json; updates README with config-driven Windows build steps.
- CMake: link Chrono/Eigen as imported targets (PUBLIC) and make include discovery robust when Chrono_DIRpoints to a build tree.
- Updates .gitignore.
- No breaking changes.
Compatibility
- Project Chrono v9.0.1
- Windows 10/11, VS 2022, CMake 3.18+, HDF5 1.10.8+, Eigen 3.4+
- Irrlicht optional (required for GUI helper)
Windows quick build
# from repo root
copy build-config.example.json build-config.json
# edit build-config.json with your local paths, then:
.\quick-build.ps1 -Clean
ctest -C Release --output-on-failure --test-dir buildv0.2.6 – Chrono 9.0.1 Upgrade
- Upgraded Project Chrono dependency to v9.0.1.
- 28/29 tests pass with the new version.
- One demo test (demo_rm3_reg_waves_01) is still failing and will be tracked separately.
- General build and test process improvements.
Thank you to @dariomangoni for their contribution and patience!
HydroChrono v0.2.5 - patch for ramp and eta dt
This patch brings the following updates:
- If a ramp is used, apply it from time = 0.0 and zero out precomputed elevation for time < 0.0
- Use provided simulation dt exactly for irregular wave elevation precomputation
- Increase precision for output files of spectral densities and precomputed wave elevation
What's Changed
Full Changelog: v0.2.4...v0.2.5
HydroChrono v0.2.4 - patch for HDF5 dependency
This patch allows HydroChrono to HDF5 dependency in a more standardized way, tested with HDF5 1.10.8 (originally recommended version by HydroChrono) and newer version HDF5 1.14.4.
What's Changed
Full Changelog: v0.2.3...v0.2.4
HydroChrono v0.2.3 - patch for matching irregular wave elevations
This patch ensures that precomputed wave elevations and wave elevation returned directly from calling GetElevation are matching.
What's Changed
Full Changelog: v0.2.2...v0.2.3
HydroChrono v0.2.2 - patch for use as external library
This patch ensures that headers are installed correctly during a make install and allows for generating regular waves without .h5 file input.
What's Changed
Full Changelog: v0.2.1...v0.2.2
HydroChrono v0.2.1 - expansion of wave generation features
This minor release adds some features for wave generation before the upcoming switch to Chrono 9.0.0.
What's Included:
Additional wave generation features include: creation of spectrum without .h5 file, wave stretching, fluid velocity and acceleration calculations, refactoring to unify API of regular and irregular waves, etc. See related PR notes #58 for details.
Full Changelog: v0.2.0...v0.2.1