登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 hillside 于 2017-3-12 11:08 编辑
以下网页文章来自国外大学的气候研究者们:
一、芝加哥大学气候系统中心:http://geosci.uchicago.edu/~rtp1/itr/
http://geosci.uchicago.edu/~rtp1/itr/Python.html
https://geosci.uchicago.edu/~rtp ... ures/PyLecHome.html
What is Python, and why are we so enthusiastic about it?
(为什么我们痴迷于Python?)Flexible climate modeling requires two things: a well designed toolkit, and a package allowing easy assembly of the tools into a complete model. We have adopted Python as our means of building models from their components. Python is an object oriented interpreted language. If you know what c++ is, you won't be far wrong if you think of Python as a simplified and interpreted version of c++ with all the hard parts and gotchas left out -- but with most of the power left in. "Interpreted" means you don't need to compile in order to run something. You just type a command, and get instant gratification. Or, if something is wrong, you know right away. Python has several compelling advantages. The first is that it is object oriented, but very easy to learn. This means that neophyte programmers, or tough and hardened climate modellers from the Fortran world, can gain an easy and pleasant entry into the world of modern software development methods. It is literally possible to gain a useful command of Python, including basic notions of classes and objects, in about two hours. Unlike other simple languages, though, Python is not something you outgrow. It continues to become more and more useful as you learn more of it. Further, Python offers a nice blend of access to operating system services and powerful data structures, with mathematical orientation. This makes it ideal for complex tasks like building data structures for keeping track of task assignments on parallel computers such as Linux Beowulf clusters. Python has very deep support in the open source community, with many powerful extension modules already available and more on the way each day. There is already considerable experience in using Python in scientific problems. Python is open source, and runs or can be made to run, on virtually any machine. Further, it is in the public domain, so that it can easily be used in classes and labs without incurring onerous licensing fees. Python is being used as the common programming language for our advanced undergraduate and beginning graduate climate dynamics class (geosci 232). Check the course web page for examples of use of Python in class, in labs and in problem sets. We have a number of Python modules under development for climate modeling and data analysis problems. As these become ready for prime time, you'll find them posted under the "Tools" section of our home page. Additional examples of the use of Python in climate dynamics and data analysis can be found on our "Projects" page. Although our original interest in Python stemmed from it's potential role as glue for building components into a general circulation model, as we gain more experience with the language we find more and more uses for it. We have used it for a range of idealized climate models, for data analysis, for building web pages, for running asynchronously coupled models, and as a versatile scripting language supplanting Perl and shell scripts. Interpreted languages are great for flexibility, but are much slower than compiled code at numerically intensive tasks. This is where another of Python's desirable features come in. Python is very easily extensible. One can write c or c++ or Fortran code to do numerically intensive things like finding eigenvalues or timestepping an array, and then make these routines callable from within Python. Doing this by hand is tedious, but fortunately, there is an automated interface builder, known as SWIG, that makes it a snap to build Python modules out of compiled libraries. SWIG does not actually directly interface to Fortran. There is a solution for that, known as PyFort, but we have found it easier to stick with SWIG and write c-stubs for Fortran routines. More information on SWIG, together with downloads of the SWIG software, can be found at www.swig.org . Python ResourcesOur experiences in using Python in climate research are encapsulated in the Climate Systems Center Python Lectures, also listed on the Tutorial page. There are many excellent books on Python. One that we find especially useful is our own David Beazley's book, Python Essential Reference (New Riders Publishing). Python 2.1 Bible, by Brueck and Tanner (Hungry Minds Publishing) is also very good. You can find many Python resources, and Python implementations for most of the world's operating systems (including Palm OS) at python.org.
二、牛津大学物理系:http://www2.physics.ox.ac.uk/res ... -climate-scientists
Python for climate scientists Why python?
(气候科学家为什么爱用Python?理由何在?)
Note, a more up-to-date version of this page is available here.Bryan Lawrence blog article: The choice is python
http://home.badc.rl.ac.uk/lawrence/blog/2010/10/13/the_choice_is_python
Bryan argues why he thinks python is the best choice for BADC, and the similar considerations apply generally to atmospheric science.Ray Pierrehumbert's python introduction, very to-the-point and clear.
http://geosci.uchicago.edu/~rtp1/PrinciplesPlanetaryClimate/Python/pytho...
It is supplementary material to his textbook, but is of general use to someone starting to use python.An astronomer's pros/cons list for IDL vs python. A little out of date now, but perhaps still useful.
http://www.astrobetter.com/idl-vs-python/Lists of IDL-to-python function equivalents.
http://www.scicoder.org/mapping-idl-to-python/
http://mathesaurus.sourceforge.net/idl-python-xref.pdf
https://www.cfa.harvard.edu/~jbattat/computer/python/science/idl-numpy.htmlpIDLy
http://astronomy.sussex.ac.uk/~anthonys/pidly/Will's Code Academy linkA rough list of the python climate packages, which it seems are (roughly in order of what I gather to be their sophistication, though this is a bit of a guess):cdat/cdms (developed at US DOE)
iris (developed at Met Office)
cf-python
pynio (the IO component of the NCAR stuff - handles nc files etc)
jasmin-cis (the one Philip Stier's group is involved in)
pygeode (stalled?)
pyclimate (seems no longer updated)And then for plotting specifically:matplotlib
basemap
pyngl
cf-plot
WxMAP2
GRADS interface to python
chaco(Of course cdat, iris,... contain plotting packages as part of the overall deal, but here I'm listing plotting packages specifically.)
三、工作在NCAR、从事Python教学与研究的水文气候研究者Joe Hamman博士
Hydroclimatologist. Post-doc at@NCAR. Ph.D. from @UW-Hydro.
https://github.com/jhamman
Popular repositories - UW_Python_for_Geosciences
Talks from the UW Python for Geosciences Seminar Jupyter Notebook [color=rgb(88, 96, 105) !important] 4 [color=rgb(88, 96, 105) !important] 5 - pynco
Language bindings for NCO Python [color=rgb(88, 96, 105) !important] 3 [color=rgb(88, 96, 105) !important] 2 - VIC
The Variable Infiltration Capacity (VIC) Macroscale Hydrologic Model C [color=rgb(88, 96, 105) !important] 1 [color=rgb(88, 96, 105) !important] 1 - storylines
Using quantitative hydrologic storylines to assess climate impacts Python [color=rgb(88, 96, 105) !important] 1 - xmap
Geospatial mapping extension for xarray Python [color=rgb(88, 96, 105) !important] 1 - rasmlib
Plotting for rasm output Python [color=rgb(88, 96, 105) !important] 1
|