Simulating fluid dynamics computationally is no simple task. One of the major challenges is that flows typically consist of many different lengthscales, from the very large to the extremely tiny. In theory, correctly capturing the physics of the flow requires computing all of those scales, and that means having a very close, dense grid of points at which the physics must be calculated during every time step of a simulation. Even for a relatively simple flow, this quickly balloons into a prohibitively expensive problem. It simply takes a computer far too long to calculate solutions for so many points.
One technique that’s been developed to save time is Adaptive Mesh Refinement. You can see an example of it above. The background is a grid of points that are far from one another in places where the flow isn’t changing and are tightly spaced in areas where the rising flames are most changeable. Adaptive Mesh Refinement algorithms automatically change these grid points on the fly, adding more where they’re needed and subtracting them where they aren’t. The end result is a much faster computational result that doesn’t sacrifice accuracy. Check out the videos below for some examples of this technique in action. (Video and image credit: N. Wimer et al.)