fresnel_s_vector returns an array of values for the Fresnel integral .

For full information please refer to the NAG Library document for s20aq

xfloat, array-like, shape

The argument of the function, for .

ffloat, ndarray, shape

, the function values.

(errno )

On entry, .

Constraint: .


fresnel_s_vector evaluates an approximation to the Fresnel integral

for an array of arguments , for .

Note: , so the approximation need only consider .

The function is based on three Chebyshev expansions:

For ,

For ,

where ,

and ,

with .

For small , . This approximation is used when is sufficiently small for the result to be correct to machine precision. For very small , this approximation would underflow; the result is then set exactly to zero.

For large , and . Therefore, for moderately large , when is negligible compared with , the second term in the approximation for may be dropped. For very large , when becomes negligible, . However, there will be considerable difficulties in calculating accurately before this final limiting value can be used. Since is periodic, its value is essentially determined by the fractional part of . If where is an integer and , then depends on and on modulo . By exploiting this fact, it is possible to retain significance in the calculation of either all the way to the very large limit, or at least until the integer part of is equal to the maximum integer allowed on the machine.


NIST Digital Library of Mathematical Functions