REFERENCES
Useful Homepages
VPython, including downloads of version 2.3 of VPython and of Python (released July 29, 2003)
Freely accessible/downloadable
* How to Think Like a Computer Scientist Learning with Python, by Allen B. Downey, Jeffrey Elkner and Chris Meyers (also available in a very-reasonably-priced paperback published by Green Tea Press).
*
VPython Reference
Manual, by R. Chabay, D. Scherer, and B. Sherwood
* Python Reference Manual, by Guido van Rossum, edited by Fred L. Drake, Jr. (also available in a very-reasonably-priced paperback).
Python Library Reference, by Guido van Rossum, edited by Fred L. Drake, Jr. (also available in a very-reasonably-priced paperback).
Numerical Python, by David Ascher et al.
In addition to the above online access, a complete set of Python in various formats (pdf, html, ps, etc.) can be downloaded onto your computer from http://www.python.org/doc/current/download.html .
* Alan Gauld's original online version of Learning to Program Using Python (zip)
Tutorial on Using IDLE
Students dissatisfied with IDLE may want to download
the more sophisticated free
editor SciTE, inc. windows installer; also available online is SciTE
documentation. To run Python from this editor (e.g. by pressing F5), you
must change the path of your PC. For a PC running Windows XP, go to Control
Panel | System | Advanced | Environment Variables, then find the Path specification;
at the end of the existing string (without erasing it!!), add the directory
where Python resides. Typically you will add ;C:\Python23
From website Beginner's Guide to Python :
Latest [stable] version of Python: Python 2.3
Python Frequently Asked Question Lists
Python Resources for Non-Programmers
Instant Hacking, a short introduction to the art of programming by Magnus Lie Hetland
Non-Programmers Tutorial For Python, by Josh Cogliati
Introduction to Programming using Python, by Katja Schuerer, Catherine Letondal, & Eric Deveaud (Copyright © 2003 Pasteur Institute)
Learn to Program using Python, a tutorial by Richard Baldwin
One Day of IDLE Toying, very basic, introductory tutorial by Danny Yoo
Python Resources for Programmers
Python Tutorial, by Guido van Rossum, Fred L. Drake, Jr. (editor)
Dive Into Python, tutorial by Mark PilgrimInstant Python, by Magnus Lie Hetland
Python 101 - Beginning Python and Python 201 - (Slightly) Advanced Python, self-training courses by Dave Kuhlman.
Python Short Course, set of course slides, by Richard P. Muller of Caltech, aimed at sophisticated scientific users.
What's new in Python 2.3? highlights; comprehensive but technical document by A. M. Kuchling
What's new in Python 2.2? by Cameron Laird and Kathryn Soraiz; comprehensive but technical document by A. M. Kuchling
Comprehensive set of reviews, by Ron Stephens of Awaretek, of books on python, but from the perspective of a veteran programmer.
Python Programming: An Introduction to Computer Science, by John M. Zelle; see also his website on Teaching with Python
Introduction to Python, by Bill Sconce (seemingly notes accompanying lecture)
Minimal Python for Scientific Computing, by M.D. Johnson (September 26, 2002; revised August 19, 2003; pdf version)
The Standard Python Library: New Modules in Python 2.3 (advanced reference, with links to modules in earlier versions)
Tutorial introduction to python, clear and concise, from Univ. of Cape Town physics class
Learn to Program using Python: Lesson 1, Getting Started, by Richard Baldwin (good but limited)
Python Quick Reference: latest updates, various formats; see, especially, the online html Python 2.1 version
Python 1.52 Quick Reference: concise, handy, somewhat out of date (link to it on preceding is broken)
Dive into Python, a rapid introduction to many of Pythons more advanced features, for experienced programmers
Python tutorial by David Beazley, mostly too advanced, but 1st 20 slides are a nice summary of basics
Brief, basic VPython introduction from ANU, for bouncing ball
Next VPython tutorial from ANU, for simulating a gas
Rob Salgado's VPython applications for Teaching Physics
Demo programs for Matter & Interaction
Source Code for Practical Python by Magnus Lie Hetland, can be downloaded from book homepage
Homepage for Physics 307, taught by Prof. Alan Middleton at Syracuse Univ. in Fall 2002
Handbook of the Physics Computing Course, by Michael Williams, U. of Oxford; succinct, uses gnuplot rather than VPython for graphical output
Some Other Advanced Python Resources, available free online
Thinking in Python, by Bruce Eckel
Site for Python Cookbook
Advanced topics from U. Central Florida python class
Pyfort, a Python-Fortran connection tool
Tight-binding programs for computing bandstructure of semiconductors (using Python for physicsresearch!)
Some Resources in Scientific Computing and Numerical Methods
An Elementary Introduction to Scientific Computing, by Charles C. Dyer and Peter S. S. Ip (pdf)
An Introduction to Computer Simulation Methods, by Harvey Gould, Jan Tobochnik, and Wolfgang Christian
SimPy: A Python-based simulation package
Numerical Recipes, by W. H. Press et al., a standard, highly-regarded reference now online at Los Alamos and Cornell in Fortran and in C (but not in Python); however, there are always some who do not believe the success of NR is fully deserved.
Some razzle-dazzle: FlowVis 2003
Random numbers: Mersenne
Twister homepage which is explained,
albeit rather technically, by J. Savard
Paperback books
Learn to Program Using Python, A. Gauld, Addison-Wesley, 2001.
Matter and Interactions, Vol. I, R.W. Chabay and B.A. Sherwood, Wiley, 2002.
Python Essential Reference, 2nd ed., David M. Beazley, New Riders Publishing,
1999.
Learning Python (Help for Programmers), M. Lutz and D. Ascher, O'Reilly & Associates, 1999. (Warning: 2nd edition due out by mid-semester.)
Python in a Nutshell, Alex Martelli, O'Reilly & Associates, 2003 (not introductory but well-rated and comprehensive; great reference with detailed index, so very helpful once you are moderately comfortable with Python).
Python Cookbook, edited by Alex Martelli and David Ascher, O'Reilly & Associates, 2002.
The Quick Python Book, Daryl D. Harms and Kenneth McDonald, Manning Publications Co., 2002.
Python: Visual QuickStart Guide, Chris Fehily, Peachpit Press, 2001
(highly rated as an introduction but seemingly oriented toward non-novice programmers)
Programming Python, Mark Lutz, 2nd ed., O'Reilly & Associates, 2001 (advanced and long).
Consortium for Upper-level Physics Software (CUPS): 9 books and software packages, from mid 1990's, using Pascal, alas; in particular, note:
Classical Mechanics Simulations, B. Hawkins and R. S. Jones
Thermal and Statistical Physics Simulations, H. Gould, L. Spornick, and J. Tobochnik
Python Toys
Python Checkbook Manager (aka PyCheckbook): slimmer, free version of Quicken!
Object-Oriented Programming: Gentle Expositions
An Object-Oriented
Bedtime Story, by Joseph Bergin
Other Useful Sites for Scientific Work
SciPy - Scientific tools for Python
Numerical Python homepage, adds a fast, compact, multidimensional array language facility to Python (see 5th freebie).
Color and Color Vision
Several applets on color: This site was produced by a computer scientist as part of a master's thesis! There are lots of interesting things to explore that will amplify and clarify discussion in the text and in class. In particular, you should find the interactive chromaticity diagram very helpful.
Interactive color tree: you set the angle of "longitude." Note the use of chroma for what, essentially, we called saturation.
Chromaticity diagram,
blackbody color vs. temperature, and lots of computer resources
Succinct, attractive site on additive and subtractive color mixing.
Color selector site for web pages
Color tree blurb, covering hue, saturation, and intensity
Miscellaneous
Tower of Hanoi: pretty graphics and viewed from a computer sciences perspective