Differences between revisions 7 and 22 (spanning 15 versions)
Revision 7 as of 2012-07-05 16:37:26
Size: 4970
Comment:
Revision 22 as of 2015-03-12 16:36:16
Size: 9057
Editor: anonymous
Comment:
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:

 * [[http://journals.ametsoc.org/doi/full/10.1175/BAMS-D-12-00148.1|Why Python Is the Next Wave in Earth Sciences Computing]]
Line 17: Line 19:
 * [[https://ams.confex.com/ams/95Annual/webprogram/5PYTHON.html|Fifth Symposium on Advances in Modeling and Analysis Using Python]]
Line 35: Line 39:
 * [[http://wiki.python.de/ | Python Wiki (in German only)]]
Line 38: Line 43:
 * [[http://greenteapress.com/pythonhydro/pythonhydro.pdf | Python in Hydrology]]
Line 40: Line 47:
= Documentation and further reading = = Documentation and further information =
Line 47: Line 54:
 * [[http://marakana.com/s/post/1133/advanced_matplotlib_tutorial_with_library_author_john_hunter#c132880|Advanced matplotlib tutorial with library author John Hunter, 2012 PyData Workshop]]
 * [[http://marakana.com/s/post/1090/2012_pydata_workshop|More video tutorials from the PyData Workshop]]

= How to edit python code? =

In November 2013, we asked people on our python-friends@lists.zmaw.de mailing list, which editor/IDE is preferred for python hacking. Below is a summary of the anwers:

== python specific editors ==
 * ipython notebook

== IDE's ==
 * pycharm
 * eclipse

== advanced generic text editors ==
 * geany
 * vim (plugins: pyflakes, jedi-vim)
 * emacs (python-mode.el, auto-complete, yasnippet)
 * sublime 2
 * spyder

== Generic text editors ==
 * nedit
 * gedit
 * kate
 * snipmate
 * easymotion
 * nerdtree
Line 50: Line 86:

A good summary webpage how to use geospatial data (e.g. netCDF, GRIB) with python is given [[http://www.esr.org/~chjiang/python.html | here]].
Line 90: Line 129:
 * [[http://lgge.osug.fr/~picard/dmrtml/|The Dense Media Radiative Transfer - Multi Layers model (DMRTML or DMRT-ML).]] comes with a Python interface
Line 98: Line 138:

= Python and Weather Satellite Data =

 * [[http://www.pytroll.org/|PyTROLL project]]

= IPython Notebooks =

A [[http://ipython.org/ipython-doc/dev/interactive/htmlnotebook.html|notebook]] is a combination of two things:
 
 1. An interactive session connected to an IPython kernel, controlled by a web application that can send input to the console and display many types of output (text, graphics, mathematics and more).
 2. A document that can save the inputs and outputs of the session as well as additional text that accompanies the code but is not meant for execution. In this way, notebook files serve as a complete computational record of a session including explanatory text and mathematics, code and resulting figures.

{{{
module load python/2.7-ve2
ipython notebook --pylab inline
}}}

Line 111: Line 169:
or try [[http://www.sagemath.org/|Sage (Mission: Creating a viable free open source alternative to Magma, Maple, Mathematica and Matlab)]].

Line 113: Line 174:
   * [[http://dx.doi.org/10.1007/978-1-4842-0055-1|Python Algorithms : Mastering Basic Algorithms in the Python Language / by Magnus Lie Hetland]] (Volltextzugang Campus)
 * [[http://dx.doi.org/10.1007/978-1-4842-0052-0|Beginning Python Visualization : Crafting Visual Transformation Scripts / by Shai Vaingast]] (Volltextzugang Campus)
 * [[http://dx.doi.org/10.1007/978-3-319-01342-8|Python for Signal Processing : Featuring IPython Notebooks / by José Unpingco]] (nur lokal im BIS-ZMAW)
 * [[http://sub-hh.ciando.com/book/?bok_id=484601|Programmieren lernen mit Python / Allen B. Downey. Dt. Übers. und Bearb. von Stefan Fröhlich]] (Volltextzugang Campus)
 * [[http://site.ebrary.com/lib/subhamburg/Doc?id=10744808|Introduction to computation and programming using Python / John V. Guttag]] (Volltextzugang Campus)
 * [[http://proquest.safaribooksonline.com/9781449323592|Python for data analysis : [agile tools for real-world data] / Wes McKinney]] (nur lokal im ZMAW)
Line 114: Line 182:
 * [[http://link.springer.com/book/10.1007/978-3-642-54959-5|A Primer on Scientific Programming with Python / by Hans Petter Langtangen]] (Volltextzugang Campus)
Line 116: Line 185:
 * Learning IPython for interactive computing and data visualization : learn IPython for interactive Python programming, high-performance numerical computing, and data visualization / Cyrille Rossant. - Birmingham [u.a.] : Packt Publ., 2013
 * A hands-on introduction to using Python in the atmospheric and oceanic sciences / Johnny Wei-Bing Lin. - 2012 http://www.johnny-lin.com/pyintro/

Python at KlimaCampus

This page shall be a central help for ZMAW/KlimaCampus users of Python. Contact AlexLoew or LarsKaleschke for permission to edit this page. Please help to fill this page with useful information about Python for climate research and data analysis.

Why python rocks!

ZMAW Settings

SNOW, SQUALL:

module load python

Getting started ...

ZMAW internal ressources

External ressources / tutorials

Documentation and further information

How to edit python code?

In November 2013, we asked people on our python-friends@lists.zmaw.de mailing list, which editor/IDE is preferred for python hacking. Below is a summary of the anwers:

python specific editors

  • ipython notebook

IDE's

  • pycharm
  • eclipse

advanced generic text editors

  • geany
  • vim (plugins: pyflakes, jedi-vim)
  • emacs (python-mode.el, auto-complete, yasnippet)
  • sublime 2
  • spyder

Generic text editors

  • nedit
  • gedit
  • kate
  • snipmate
  • easymotion
  • nerdtree

Modules for Scientific Computing and Visualization

A good summary webpage how to use geospatial data (e.g. netCDF, GRIB) with python is given here.

SciPy/NumPy

pylab

Import the Basemap module

from mpl_toolkits.basemap import Basemap

GDAL

PyNGL PyNio

Python Interface to GrADS

RPy

F2PY: Fortran to Python interface generator

Calling Fortran code from python is easy!

Fortran to Python

Topical Modules

More topical software can be found at http://scipy.org/Topical_Software

Python and Climate

Python and Weather Satellite Data

IPython Notebooks

A notebook is a combination of two things:

  1. An interactive session connected to an IPython kernel, controlled by a web application that can send input to the console and display many types of output (text, graphics, mathematics and more).
  2. A document that can save the inputs and outputs of the session as well as additional text that accompanies the code but is not meant for execution. In this way, notebook files serve as a complete computational record of a session including explanatory text and mathematics, code and resulting figures.

module load python/2.7-ve2
ipython notebook --pylab inline

Download (try this at home)

A basic system for scientific computing consists of Python, ipython, numpy/scipy, pylab, and an editor of your choice

The python(x,y) distribution contains all that above.

or try Sage (Mission: Creating a viable free open source alternative to Magma, Maple, Mathematica and Matlab).

Literature

LehreWiki: PythonCourse (last edited 2015-03-12 16:36:16 by anonymous)