Everybody needs an iterative solver at some point or other. Recently, I sent a few links to a friend of mine. I thought I will also maintain the list in this page for future use.

In case you know of any good resources that I have missed here, leave a note!

C coding standards

July 16, 2007

Though not strictly for scientific computations, these might still be handy:

GNU coding standard
http://www.gnu.org/prep/standards/

Programming in C
http://www.lysator.liu.se/c/index.html

C coding standards:
http://www.jetcafe.org/~jim/c-style.html
http://www.psgd.org/paul/docs/cstyle/cstyle.htm
http://www.alma.nrao.edu/development/computing/docs/joint/0009/2001-02-28.pdf

Here are a few tutorials meant for beginners:

The lecture notes of an upper-division Introduction to Computational Physics course in html and pdf formats:

A complete set of lecture notes for an upper-division computational physics course. Topics covered include scientific programming in C, the numerical solution of ordinary and partial differential equations, particle-in-cell codes, and Monte Carlo methods.

I especially liked the programming methodology adopted in the course, namely,

…write our own programs–completely from scratch–in a high-level language.

And, what is more, I liked the choice of programming language much more:

Of the above languages, we can immediately rule out C++, because object-orientation is an unnecessary complication (at least, for our purposes), and FORTRAN 90, because of the absence of an inexpensive compiler. The remaining options are FORTRAN 77 and C. I have chosen to use C (augmented by some of the useful, non-object-orientated features of C++) in this course, simply because I find the archaic features of FORTRAN 77 too embarrassing to teach students in the 21st century.

And, whatever little I read of the lecture notes I liked too. Take a look!

PS:- For those of you coming from a physics background, there are also other lecture notes of Prof. Richard Fitzpatrick that are available online here.