Algorithms for numerical integration