Algorithm 353: Filon quadrature [D1]

and let us recall, eqs. (4) and (39), that S = ~ + Ks,s, (69) where a second subscript has been added to the truncation error E, to denote its dependence on j. Then the inequality (67) can be written We see before us the heart of the difficulty. There is no intrinsic reason why the expression on the left could not be very small, even zero, through cancellation; hence satisfaction of the inequafity for a particular e can hardly guarantee a useful upper bound on the total error, Es.s-4-Re. We choose to bypass this difficulty in the following crude way: on the basis of eq. (36) we assume and on the basis of eq. (65) we assume R~-Rs-1 ~ R~. IEo,s + R~l < (e/8)(1 + l(Sp~)*l)-k 9.2s-IpM~. (76) Now (,.~¢)*, p, M0 are all quantities which one can roughly estimate or get rough upper bounds for, and j can be replaced by MAX-4 if necessary; hence we have a relation between e and the total error, E,,¢ + R¢. As already noted, the result for the cosine integral is exactly the same, replacing S by C in eq. (76). This inequahty can be used to determine e so as to achieve a bound on the total error of the result returned by this routine. However, the crudeness of the argument leading to this result should warn the user to treat this estimate with caution. The following algorithm by Chase and Fosdlck relates to the paper by the same authors in the Numerical Analysis department of this issue, on pages ~53-457. This concurrent publication in Communications /ollows a policy announced by the Editors of thv two dtpartments, J. G. Hvrriot and J. F. using the Filon quadrature algorithm. The user may request an evaluation of C only, S only, or both C and S. FSER1 contains an automatic error-control feature which selects an integration step size on the basis of an error parameter supplied by the user. The Filon quadrature formulas, truncation error, rounding error, and automatic error control are described in a companion paper [1] by the authors. The calling parameters for this subroutine are defined as follows. F is the name of a FUNCTION subprogram F(X), supplied by the user, which evaluates F(X) appearing in the integrand. EPS is the name for e appearing in inequalities (45) and (46) of [1]. It is used in the error …