ULULA: An ultra-lightweight 2D hydrodynamics code for teaching and experimentation
Benedikt Diemer

TL;DR
ULULA is a simple, open-source 2D hydrodynamics code designed for teaching and experimentation, emphasizing ease of understanding and extension with minimal code complexity.
Contribution
The paper introduces ULULA, a lightweight Python hydrodynamics code that simplifies complex software for educational purposes and easy experimentation.
Findings
Runs well on laptops for common problems
Includes a robust MUSCL-Hancock scheme with customizable components
Contains numerous well-known hydrodynamics problems
Abstract
Hydrodynamics is a difficult subject to teach in the classroom because most relevant problems must be solved numerically rather than analytically. While there are numerous public hydrodynamics codes, the complexity of production-level software obscures the underlying physics and can be overwhelming to first-time users. Here we present ULULA, an ultra-lightweight python code to solve hydrodynamics and gravity in 2D. The main goal is for the code to be easy to understand, extend, and experiment with. The simulation framework consists of fewer than 800 active lines of pure python code, but it includes a robust MUSCL-Hancock scheme with exchangeable components such as Riemann solvers, reconstruction schemes, boundary conditions, and equations of state. Numerous well-known hydrodynamics problems are provided and can be run in a few minutes on a laptop. The code is open-source, generously…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsUnderwater Vehicles and Communication Systems · Experimental Learning in Engineering
