William H. Press Numerical Recipes: The Art of Scientific Computing - 3rd ed. - CUP 2007 ISBN: 9780521880688