Tuesday, November 13, 2012

Pythons, pandas and ferrets: The zoo of tools for atmospheric scientists

Sitting in a postgraduate group meeting a few weeks ago, the modelling students were discussing the various tools available used. One social scientist commented that to an outsider the conversation sounded highly amusing, and to those not familiar with the tools, I suppose discussing ferrets, pythons, Fortran, C and R sounds like a cross between a zoo and alphabet soup.

Why all these different tools? Legacy....

Fortran is the backbone of all climate models, used mainly for its numerical core that some argue is still faster then C etc. (they just don't want to port the system to a newer language). One programmer described reading Fortran is like scratching your own eyes out...pretty graphic!

Then comes C, the quintessential language of the engineer.

Ferret is a scripting language for environmental applications.

Python is an interpreted language that is has evolved over time, it used to be incredibly slow to manipulate data, but the modifications have sped up calculations and new modules have made python a welcome addition to the scientific zoo. SciPy, NumPy, pandas make it possible to do R comparable (actually fixed issues in R) calculations. Matrix manipulations have never been better.

No comments: