Yesterday, I gave a seminar talk to our department faculty and students, titled as "An Aerosol - Cloud Condensation Nuclei and Cloud Droplet Concentration Closure Study" that is summarizing a majority of my thesis related work on aerosol and cloud micro-physical research, starting and finishing with the presentation slides shown above and at the very end of this post.
One of the most exciting parts of the talk was after I finished demonstrating my research results and showed a few of the technicalities of the research. First of all, thanks go to Dr. Jefferson R. Snider for providing his IDL-based parcel model code and being patient with me while I was re-writing the model in Python. Both versions of the code could be accessed through ccnworks by browsing the source tab, and looking under the thesis folder or alternatively, directly contacting to Dr. Snider to get the latest updated version of the model.
When I was working on the model conversion, at one point I had stuck getting similar outputs from the two languages using the same initial conditions, and with the almost identically progressing code. (Some might object on the definitions of two conditions' being "the same" and "almost identical" in the land of high-precision floating point arithmetic.) Continuing in my numerical instability problem, I had created a simple animation to better demonstrate the issue I was experiencing. As some eyes might easily catch, the droplets in parcel model reaching to so bigger sizes comparing to the results produced by IDL, solely based on condensational growth theory. It took a while to find and correct the variable that was updating its original reference while it was supposed to be operating on a copy of the content instead. This issue and a few other discrepancies were fixed in around May 2010. As a personal important todo note at this point is to restructure the parcel model code so that it behaves as an external library, thus making all the important thermodynamical and cloud micro-physics related functions greatly re-usable. This is when I figure passing dictionaries (or changing the structure of the code) to outer scope of the original file that they are declared in.
The final technicality demonstration comes from the work of Dobashi et. al., (2008) (Their "Feedback Control of Cumuliform Cloud Formation based on Computational Fluid Dynamics" titled work.) Those are by far the most realistic cloud appearances I have ever seen in a physical cloud formation processes applied simulation study. Although cloud modellers are usually interested in studying temporal and spatial statistical properties of clouds rather than synthesizing their realistic shapes and appearances, such a similar work would have a great educational use in visualising and thus better demonstrating the physical processes governing the cloud formation and further precipitation development. I can say that the authors should have prototyped their simulations using a C-like language in order to make low level access to CPU/GPU because of the high computation demands, but there are fast computation techniques available in Python that would make this undertaking possible to be realized be it simulating a research flight or playing in between sequences of a simulation to probe important properties of the formation.
For the curious, I share high-quality PDF version of the slides. Note that I had to take out a couple pages from this original presentation in order to fit 45 minutes allocated presentation time, and it was unfortunate that one of the expected audience was not in the classroom to see a few indistinguishably minute research unrelated points. All analyses and plots in my slides are performed/created using Python and its scientific tool-stack with some additional annotation help from OpenOffice on the slides using DejaVu-Sans font; for the first time with full consistency. There is one exception to the pure Python code, that is when the Python based model calculations taking up five to ten times more than the original IDL-based code, and that is where exactly Cython magic were sought and applied to boost million-times executed functions. Here, I greet the community once more, for making the scientific computation freely, publicly, and easily available to everyone without putting any restrictions in both code and verbal discussions level as how this core work should really be in its very essence within the science endeavor.
My work on clouds is on-going and leading me to a PhD level research after successful completion of my Masters thesis within the next month. Feel free to say hi or ask more clouds if you share any research similarities.
Now, it is time for some abstraction: Youth Uprising - Rarefaction
Please keep up imagination and creativity flames are burning all along...