There was try to simulate 2d liquid in rectangle vessel without air in matlab. The idea was to use voronoi graph to separate liquid into pieces. Each piece has forces:
1) friction from neighbor, proportional to contact edge length
2) friction from wall if any
3) pressures from neighbor
Each piece has pressure that defined from area of polygon and compare it with initial area. Voronoi diagram is plotted over extended set of point. The extended set of point is original points plus 4 mirrored set of points. Each mirror is mirror from each wall. This trick is need to make walls.
Each piece has mass and F=m*a equations are integrated with Euler's method. In this video initial condition is liquid rotation.
Found problems:
1) Slow computation expensive code
2) There are some oscillations of masses that's looks unnatural
See animation here:
http://www.youtube.com/watch?v=2X_LD7-FYFw
Cite As
Maxim Vedenyov (2024). 2d liquid simulation (https://www.mathworks.com/matlabcentral/fileexchange/30234-2d-liquid-simulation), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |