Python: a language for computational physics
Python is a relatively new computing language, created by Guido van Rossum [A.S. Tanenbaum, R. van Renesse, H. van Staveren, G.J. Sharp, S.J. Mullender, A.J. Jansen, G. van Rossum, Experiences with the Amoeba distributed operating system, Communications of the ACM 33 (1990) 4663; also on-line at http://www.cs.vu.nl/pub/amoeba/. [6]], which is particularly suitable for teaching a course in computational physics. There are two questions to be considered: (i) For whom is the course intended? (ii) What are the criteria for a suitable language, and why choose Python? The criteria include the nature of the application. High performance computing requires a compiled language, e.g., FORTRAN. For some applications a computer algebra, e.g., Maple, is appropriate. For teaching, and for program development, an interpreted language has considerable advantages: Python appears particularly suitable. Python's attractions include (i) its system of modules which makes it easy to extend, (ii) its excellent graphics (VPython module), (iii) its excellent on line documentation, (iv) it is free and can be downloaded from the web. Python and VPython will be described briefly, and some programs demonstrated.
python computational physics computation graphics education