Physics 20 Reading List for the Week of 1/31/2005
Since this week you're taking your midterms, there won't be any assignment due this Friday. However, I am giving you some (light) reading, and I am posting the next assignment to the web, in case you want to start early.
1. On the floating-point representation of numerical values
When you use numerical tools, it is important that you have a good understanding of the basic representation of numbers within computers, and on the effect that arithmetic operations have on the precision of this representation. Start by reading the discussion in Numerical Recipes, take a detour to contemplate a few catastrophic instances of roundoff error, then go on to read about the dangers of computer arithmetic (by Michael Richmond).
As a handout, you are getting Donald Knuth's history of base-n numbers. Read until you transition from fascination into glaze-eyedness (if you're like me, it will be until the end).
2. On good programming practice
- A humorous piece, full of good advice, by Spanish computer scientist A. Cernuda del Río: ``How Not to Go About a Programming Assignment,'' SIGCSE Bulletin 36, 97 (2004).
- Let me add my favorite two hints, which must have been reformulated in many ways by different people around the world (including myself). In this incarnation, they are by Michael Richmond, already cited above, who teaches Computational Methods of Physics at the Rochester Institute of Technology.
1. On the floating-point representation of numerical values
When you use numerical tools, it is important that you have a good understanding of the basic representation of numbers within computers, and on the effect that arithmetic operations have on the precision of this representation. Start by reading the discussion in Numerical Recipes, take a detour to contemplate a few catastrophic instances of roundoff error, then go on to read about the dangers of computer arithmetic (by Michael Richmond).
As a handout, you are getting Donald Knuth's history of base-n numbers. Read until you transition from fascination into glaze-eyedness (if you're like me, it will be until the end).
2. On good programming practice
- A humorous piece, full of good advice, by Spanish computer scientist A. Cernuda del Río: ``How Not to Go About a Programming Assignment,'' SIGCSE Bulletin 36, 97 (2004).
- Let me add my favorite two hints, which must have been reformulated in many ways by different people around the world (including myself). In this incarnation, they are by Michael Richmond, already cited above, who teaches Computational Methods of Physics at the Rochester Institute of Technology.
1. As you write a program, imagine yourself coming back to work on it again three years from now. Make sure that your future self will understand it.
2. In most cases, efficiency is much less important than clarity. Computers get faster every year, but people don't get any smarter.

0 Comments:
Post a Comment
<< Home