You can choose to allow diagonal movement and decide whether to use a heuristics. In this case it is simply a distance measure to the target that additionally adds a weight. I can also recommend the the A Star Pathfinding for Beginners page for everyone who is interested.
To further improve the realism and controllability of the simulation I am about to implement the functionality to load meteorological atmospheric measurements.
I implemented the "Stam Fluid" paper in Java for my Bachelor Thesis and extended it with thermodynamic fields and equations to simulate cloud dynamics.
This version is not final yet, there are still some problems to be solved, mainly concerning boundary conditions and runtime optimization.
Download the executable Jar File