预订演示
前页 后页

fresnl

Fresnel integral.

SYNOPSIS:

double x, S, C;
void fresnl();
fresnl(x, _&S, _&C);


DESCRIPTION:

Evaluates the Fresnel integrals

           x
           -
          | |
C(x) =   |   cos(pi/2 t**2) dt,
        | |
         -
          0


           x
           -
          | |
S(x) =   |   sin(pi/2 t**2) dt.
        | |
         -
          0

The integrals are evaluated by a power series for x < 1. For x >= 1 auxiliary functions f(x) and g(x) are employed such that:

C(x) = 0.5 + f(x) sin(pi/2 x**2) - g(x) cos(pi/2 x**2)
S(x) = 0.5 - f(x) cos(pi/2 x**2) - g(x) sin(pi/2 x**2)

ACCURACY:

  Relative error.

Arithmetic  function   domain     # trials      peak         rms
   IEEE       S(x)      0, 10       10000       2.0e-15     3.2e-16
   IEEE       C(x)      0, 10       10000       1.8e-15     3.3e-16
   DEC        S(x)      0, 10        6000       2.2e-16     3.9e-17
   DEC        C(x)      0, 10        5000       2.3e-16     3.9e-17


JavaScript:

var x= 2.5625;
var r = cephes.fresnl(x);
Session,Output(r.result);
Session,Output(r.ssa);
Session,Output(r.csa);

Return value: Object
Format: JSON

{
   "result" : int,
   "ssa" : double,
   "cca" : double
}