Water behaves according to a set of very simple rules. Each molecule in a body of water can be tracked, its motion predicted over time. Coarser levels of granularity suggest that way may be able to model water without simulating the behavior of every single molecule in that body.
Our approach is relatively straightforward. We intend to model a pool of water by dividing that pool into a series of columns of water. Each column has an associated height. Water from one column can flow into another column, and does so according to the height difference between the two columns.
More specifically, we say that each of these vertical columns stands alone, disconnected from all of the other columns except by a virtual pipe from itself to each of it's eight neighbors:
We then model the flow of each column of water according to the laws of physics which we observe every day. Interested readers are referred to the paper "Dynamic Simulation of Splashing Fluids," referenced below.
This volume was then output in a vtk (Visualization Toolkit) format. A vtk program was created to perform the isosurface of the volume. This process was repeated for each of the time steps of the simulation, creating a time series of ppm files which were then joined together in MPEG format for viewing.
Top view, 70 frames, empty pool being filled from 4 corners.
Side view, 70 frames, empty pool being filled from 4 corners.
Top view, 70 frames, Large object dropped in center of pool.
Side view, 70 frames, Large object dropped in center of pool.
Top view, 70 frames, Large object dropped in center of slightly larger pool.