Numerical Recipes in C: The Art of Scientific Computing, Second Edition