naginterfaces.library.specfun.fresnel_​s

naginterfaces.library.specfun.fresnel_s(x)[source]

fresnel_s returns a value for the Fresnel integral .

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

https://www.nag.com/numeric/nl/nagdoc_28.5/flhtml/s/s20acf.html

Parameters
xfloat

The argument of the function.

Returns
sxfloat

The value of the function at .

Notes

fresnel_s evaluates an approximation to the Fresnel integral

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.

References

NIST Digital Library of Mathematical Functions