Numerical recipes the art of scientific computing - Press, William H.; Vetterling, William T.; Flannery, Brian P.; Teukolsky, Saul A. (Cambridge Univ. of Press, 1986)