Numerical Recipes In Fortran 77 Vol 1: The Art Of Scientific Computing by Saul A. Teukolsky & Brian P. Flannery