Anyone writing numerical code needs some awareness of numerical analysis, to avoid burning up CPU time with a hideously inappropriate and inaccurate algorithm.
By far the most accessible introduction to numerical methods is Numerical Recipes [nr], which comes in different editions, containing code in C, Fortran and Fortran 90. Use the second edition: the first has a significant number of bugs.
A large part of the book's popularity stems from the fact that its authors are scientists rather than numerical analysts, so that they are more concerned with producing reliable results than with a point of view which sometimes appears to see efficiency, unshakable robustness and algorithmic elegance as ends in themselves. For further discussion, and some caveats, see Section 2.3.1.
My advice is to use Numerical Recipes for your
numerical programming until it runs out of steam on your
particular problem. Follow the references in there, or look
at the booklist
in the on-line Numerical Analysis FAQ. Also (perhaps
unexpectedly), I suggest you take a look at the Usenet
newsgroup comp.lang.fortran
, even if you don't
actually use Fortran. This is one of those happy few Usenet
newsgroups with a high signal-to-noise ratio, and listening
in on this can be profitable when the conversation turns to
general numerical analysis. A similar resource is the
JISCmail comp-fortran-90
list.
To support more specialised numerical computing, refer to the libraries section below, Section 4.2.