2D Incompressible Fluid Simulation Engine

2dincompressiblefluidsimulationengine

2D Incompressible Fluid Simulation Engine

Description:

2D-Incompressible-Fluid-Simulation-Engine is a modular fluid solver written in Rust that simulates 2D incompressible flow using a MAC staggered grid, a fixed-step update loop, and an interactive real-time viewer. The project implements core fluid simulation techniques including semi-Lagrangian advection, implicit diffusion, pressure projection for divergence-free velocity, and selectable pressure solvers such as Gauss-Seidel and PCG, while also supporting interactive dye and momentum injection, obstacle handling, buoyancy, and vorticity confinement. It includes both a parallel CPU-first implementation and a wgpu compute backend that keeps simulation data on the GPU for faster rendering, along with multiple visualization modes like density, pressure, divergence, and vorticity. Overall, it is a strong systems and graphics project that demonstrates numerical simulation, parallel computing, GPU acceleration, and clean Rust software architecture for real-time scientific visualization.