Dam-Break Flow Simulation With SPH
ISEF Category: Engineering Technology: Statics and Dynamics
Ready to Turn This Idea Into a Real Project?
This guide was put together with the help of AI research tools to give you a solid starting point. But a competitive science fair project lives in the details: refining your research question, fine-tuning your variables, analyzing your data, and presenting your findings like a seasoned scientist.
For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →
Subcategory: Computational Mechanics · Difficulty: Intermediate · Setup: School Lab · Time: 1 to 2 Months
The Hook
A wall of water can move faster than you expect, and a tiny error in a model can change the whole flood pattern. That makes dam-break flow a great test for your code. You can compare a particle-based simulation to real video and see where the math matches, and where it misses.
What Is It?
Smoothed-particle-hydrodynamics, or SPH, is a way to simulate fluids by treating water as many tiny moving particles instead of one continuous block. Think of it like a crowd at a concert. Each person reacts to nearby people, and the whole crowd can still form waves, gaps, and surges. In SPH, each particle feels pressure, viscosity, and gravity from nearby particles, then updates its position and speed.
A dam-break model uses that idea to simulate what happens when water is suddenly released in a narrow channel. The goal is not just to animate splashing water. You want the model to predict measurable things, like how fast the leading edge moves, how the water depth changes, and how the wave shape spreads over time. When you compare the simulation with a real tray experiment, you can test whether your code captures the physics or just looks right.
Why This Is a Good Topic
This is a strong science fair topic because you can change one variable at a time and measure real output from both code and video. You can test particle spacing, smoothing length, viscosity, boundary handling, or channel slope, then compare the results against your tray experiment. The project connects to flood modeling, hydraulic engineering, and computer simulation, all of which matter in real design work. You also get to learn coding, data extraction from video, and model validation, which are skills that look strong in any research setting.
Research Questions
- How does particle spacing affect the accuracy of dam-break front position in an SPH model?
- What is the effect of smoothing length on the stability and shape of the simulated water wave?
- Does adding viscosity improve agreement between simulated and tracked front speed from video?
- To what extent does boundary treatment change the predicted splash height near the channel walls?
- Which time step size gives the best balance between numerical stability and simulation accuracy?
- How does channel width change the difference between simulated and measured flow depth over time?
- What is the effect of initial water depth on the error between SPH predictions and OpenCV-tracked motion?
Basic Materials
- Laptop or desktop computer with Python installed.
- NumPy and Numba.
- OpenCV for video tracking.
- A shallow kitchen tray or plastic channel.
- Water.
- A ruler or measuring tape.
- A smartphone or camera that can record 240 fps.
- Food coloring or floating tracer particles for tracking.
- Masking tape for marking reference lines.
- Graph paper or a spreadsheet for manual measurements.
Advanced Materials
- Access to a higher-speed camera or a calibrated machine-vision camera.
- A levelable flume or long transparent channel.
- Particle image analysis software such as ImageJ.
- A calibrated distance grid for video scaling.
- Pressure sensor or depth sensor for flow comparison.
- 3D-printed or laser-cut barriers for repeatable release gates.
- A workstation that can run larger SPH particle counts.
- Python scientific stack for analysis and plotting.
Software & Tools
- Python: Runs the SPH simulation, tracking scripts, and analysis code.
- NumPy: Stores particle positions, velocities, and force calculations.
- Numba: Speeds up the particle update loop without needing a GPU.
- OpenCV: Tracks the flow front and extracts motion from high-speed video.
- ImageJ: Measures distances and frame-by-frame changes in the recorded tray experiment.
Experiment Steps
- Define the one flow metric you will compare, such as front position, wave height, or spread rate.
- Set up a simple tray geometry that gives you repeatable release conditions and a clear camera view.
- Build a baseline SPH model with a small set of particles, then decide which parameters you will tune first.
- Plan a video-tracking workflow that turns each frame into measurements in real units.
- Choose controls that separate numerical error from setup error, such as repeated runs, identical fill levels, and fixed camera position.
- Decide how you will score agreement between model and experiment, using error curves, timing offsets, or shape overlap.
Common Pitfalls
- Using a camera angle that is not perpendicular to the tray, which distorts measured distances and makes the video track look faster or slower than it is.
- Letting the release gate vary between trials, which changes the initial condition and hides whether the model or the setup caused the difference.
- Choosing too few SPH particles, which makes the water break into unrealistic clumps and ruins the comparison.
- Tracking colored water with poor contrast, which causes OpenCV to lose the front edge when the flow spreads thin.
- Comparing the simulation to only one frame of video, which misses timing error and makes the model look better than it is.
What Makes This Competitive
A stronger version of this project goes beyond making the simulation look similar. You would quantify error with a real metric, test several model settings, and explain which choices matter most. You could also compare more than one flow condition, then show where SPH works well and where it fails. That kind of careful validation turns a coding demo into a real computational mechanics study.
Project Variations
- Compare SPH accuracy across two channel widths to test how geometry changes flow prediction.
- Replace the tray rig with a sloped channel and test whether gravity-driven acceleration changes the error profile.
- Track the water front with ImageJ instead of OpenCV and compare how the analysis method affects measured agreement.
Learn More
- MIT OpenCourseWare, fluid mechanics courses: Search MIT OpenCourseWare for introductory fluid mechanics and computational methods material.
- NASA Technical Reports Server: Search for reports on dam-break flow, shallow water modeling, and validation methods.
- NOAA National Water Center resources: Look for flood modeling and river flow background material.
- USGS Water Science School: Read plain-language background on flow, discharge, and water level measurement.
- PubMed: Search for review articles on SPH fluid simulation and numerical validation methods.
- Journal of Computational Physics: Search recent SPH papers and validation studies through your school library or journal site.
Engineering Technology: Statics and Dynamics Category Guide
How to Do Real Engineering Technology Research at Home: A High School Student’s Guide to Free Tools, Affordable Kits, and Public Databases →For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →
To discover more projects, visit the MehtA+ Science Fair Project Discovery Hub →
