📄️ Getting Started
Examples demonstrating HydroGym's JAX backend for GPU-accelerated, fully-differentiable flow control.
📄️ Kolmogorov
A recent development of Hydrogym is the inclusion of differentiable solvers like JAX. The idea is to leverage the differentiable environment to compute sensitivity studies that can lead to a better controller with less compute time. This tutorial covers how to set up the Kolmogorov JAX environment, and how to run basic control. Currently, the Kolmogorov flow is the main differentiable flow environment implemented in Hydrogym.
📄️ Turbulent Channel
HydroGym contains a 3D channel flow written in the differentiable programming language JAX. The channel flow is of size $[2\pi, \pi, 2]$, where $z$ is the wall-normal direction. The channel flow is run at $Re_\tau = 180$, and is pre-configured to be controlled with 24 wall-normal jets evenly spaced throughout the wall. The observation value consists of evenly spaced x-velocity values sampled from $y^+ \approx 9$.
📄️ PPO Training
Pure-JAX PPO training for the Kolmogorov and turbulent channel environments, based on purejaxrl with HydroGym integrations (VecEnv, normalization wrappers, etc.).