Numerical methods book
I'm looking for an introductory book on numerical methods.
I'm beginning to learn to program (in Haskell, a functional language, if that would affect the recommendations). The reason I want such a book is to practice my programming skills by implementing easy math-related algorithms. For example, calculations of transcendental or special functions (perhaps the Gamma function and Bessel functions) and interesting constants, solving differential equations (by Runge-Kutta and series solutions, for example), implementing things like Newton-Raphson approximation, primality testing (Miller-Rabin, for example) and so on.
I would prefer something with a wide sampling of algorithms. I'm looking for breadth, not depth. My intention is to use this as sort of a programming exercise book. I care about having a lot of different, fun, and hopefully somewhat simple algorithms to implement.
I would say I have a fairly good mathematical background, so don't shy away from recommending something that is proof based or theoretical at times. If the book includes a lot of mathematics, great! I'm always up for learning more math. I don't have formal computer science training, but I would be willing to do a small amount of reading on the basics of algorithms and data structures if I had to. If the book included this, that would be great.
I should mention that I haven't taken more than an introductory course in ODEs and have no experience with PDEs other than solving the basic heat and wave equations, so I would not be able to understand or appreciate advanced material in these areas (I get the impression that solving PDEs numerically is a big, important field). However, I do know some harmonic analysis, so seeing fast Fourier transforms might be fun.
I really enjoyed reading Forman Acton's Numerical Methods that Usually Work. He writes with a lot of personality and presents interesting problems. I don't know that this is the best book to learn the field from because (1) it was written in 1970 and last revised in 1990 and (2) I am not an expert, so I simply don't know how to evaluate it. But it sounds like these might not be major obstacles from your perspective.