Global Forecast System source code
emc.ncep.noaa.gov
emc.ncep.noaa.gov
I heard a talk from ex-Googler climate.com (now Monsanto) guys. Their forecasts were accurate enough to build a very profitable insurance business. I bet they used Bayesian rather than FEM techniques.
Presumably any short-term ML forecasting would use the physics simulation as it's main input, and then try to improve slightly on it (e.g. maybe you observe that in a particular small area, the rainfall is on average 10% more than the physics simulation, so your ML method would add 10%, giving you a slight forecast improvement)?
208 trillion calculations/sec; 10,048 processing cores; 2,590 trillion bytes of storage
But actually it's about the butterfly effect making it impossible to get exact agreement between the old and new systems for forecasts longer than about 5 days.
Still, Fortran 90 is hell of a lot better than Fortran 77, which unfortunately is the language of choice for some of the people I'm being asked to work with.
This is also relevant and insightful [1]. The top answer talks about Fortran's strict aliasing semantics.
[0] http://unriskinsight.blogspot.com/2014/06/fast-functional-go...
[1] http://stackoverflow.com/questions/146159/is-fortran-faster-...
I see that the author insults Fortran a couple of times, and I don't seen any indication that they tried to implement the better algorithm in Fortran. Did I miss something?
I am writing code in Fortran 77/90 every day, I really really enjoy it. Calling your Fortran code from Python is also so easy that you can really have clear cut between data management in Python and computational work in Fortran.
I can't seem to access the SVN repo, I wonder how/if they unit tested it all.
No, there is no unit testing!
anal.sh is short for analysis.
From looking at some of the code, what is hard for me to follow is the 'overall view'. The documentation (of the model) looks quite nicely done, but there must be a huge amount of fluid dynamics etc etc knowledge, that would take me years to learn.
Also, it would be rather interesting for a rewrite of this by the open source committee.