Numerical Recipes in C - Press, WH; Teukolski, SA; Vetterling, WT; Flannery, BP (Cambridge University Press, 1988)