Python & its scientific computing packages
Python is a relatively new language that has
become popular and well supported by a rich set of high level scientific and
visualization libraries. The combination of this and the fact that it is an
interactive interpreted language means that one can relatively quickly develop
useful applications.
These are why Python was chosen for the course. This year we will use
Python version 2.5.
Tutorials and documentation are available at the
Python site. The book Learning
Python by Lutz and Ascher (Third Edition, O'Reilly Media, 2008) is a good place
to get started and learn the language.
The set of scientific computation support packages that we will use are
- iPython is a very convenient
editing and development environment for Python.
- SciPy and NumPy: SciPy and NumPy provide
a fairly complete set of computational tools and basic numerical and linear
algebra libraries. Tutorials and documentation are
here.
- Scientific Python: Scientific Python
is set of higher-level computational methods than SciPy.
- Visual Python:
VPython or Visual Python is a 3D graphics
environment. The visual package that we'll use offers real-time 3D
output and is easily usable by novice programmers. It also uses
the older numeric package.
- Matplotlib: Matplotlib
is a MATLAB-inspired 2D plotting package for Python.
Tutorials, a
cookbook,
and a users manual (PDF) are available from that home page.
- Gnuplot: An alternative package is
Gnuplot which has been
around for some time and provides an extensive set of 2D and
some 3D plotting routines. The glue that integrates
Gnuplot into Python is in this
package.
- Python Imaging Library:
Python Imaging
Library (PIL) adds image processing to Python and supports a
range of image file formats, along with graphics capabilities.
- PyGame:
PyGame provides a fast, though
primitive, interface for 2D graphics.
- ImageMagick:
ImageMagick provides
a complementary set of utilities for manipulating images.
To install on