HydroChrono 0.4.0 – Major Refactor with Modular Hydrodynamics Core, New HydroSystem Façade & Chrono Coupling Layer
LatestHydroChrono 0.4.0 introduces a fully modular hydrodynamics architecture with a clean HydroSystem façade and a dedicated Chrono coupling layer. This release preserves all existing behaviour while making HydroChrono cleaner, safer, and easier to extend.
Highlights
- New HydroSystem façade — the main user-facing entry point (replaces
TestHydro) - Chrono-free HydroForces core for hydrostatics, radiation, and excitation
- Dedicated ChronoHydroCoupler linking Chrono bodies to the hydrodynamics core
- Unified C++ and YAML workflows (both now use the same hydrodynamics engine)
- Radiation logic consolidated into a single component (IRF processing, history, convolution)
- Exceptions replace critical
assert()s; public headers cleaned and namespaced - Full regression test suite passing (PDF included)
What’s New
- Core
- Introduced
hydrochrono::hydro::HydroForces,SystemState,BodyForces,GeneralizedForce - Modular force components: Hydrostatics, Radiation, Excitation
- Standardised 6-DOF indexing and sign conventions
- Introduced
- Façade & Coupling
HydroSystemis the new user-facing class (aliasesTestHydroandHydroForcesretained for compatibility)- New
ChronoHydroCouplerbuildsSystemStateand bridges to the core
- Modules & Layout
- Clean directory structure:
core/,chrono/,radiation/,waves/,config/ - New radiation modules for IRF preprocessing and convolution
- Clean directory structure:
- Robustness & Cleanup
- Replaced
assert()with descriptive exceptions - Removed
using namespacefrom public headers - Explicit Chrono includes; improved file-level documentation
- Replaced
Install (Windows x64)
- Download
HydroChrono-0.4.0-win64.zip - Unzip — all required DLLs included (Chrono, HDF5, yaml-cpp, Irrlicht, MSVC)
- Run regression tests:
python .\tests\run_hydrochrono\run_tests.py --all